ทำความรู้จัก
OWASP
OWASP
ย่อมาจาก (The Open Web Application Security Project) ซึ่งถูกพัฒนาขึ้นโดยองค์กรที่ไม่แสวงหาผลประโยชน์เพื่อปกป้องส่งเสริมและพัฒนาการรักษาความปลอดภัยของโปรแกรมประยุกต์(Application)
ให้ดียิ่งขึ้นโดยเน้นในเรื่องเว็บแอพพลิเคชันด้วยการระบุความเสี่ยงร้ายแรง
10 อันดับที่เกิดขึ้นในการพัฒนาเว็บแอพพลิเคชันเพื่อลดความเสี่ยงในการถูกโจมตี
ทำความรู้จัก
OWASP
Top 10 - 2017
OWASP
Top 10 เป็นเอกสารงานวิจัยที่ถูกสร้างขึ้นเพื่อสร้างความตระหนักด้านความมั่นคงปลอดภัยบนเว็บแอพพลิเคชัน
ที่มีความเสี่ยงร้ายแรงที่สุด 10 อันดับที่เกิดขึ้นจริงในปัจจุบัน
โดยผู้เชี่ยวชาญทางด้านความมั่นคงปลอดภัยจากหลากหลายสาขาอาชีพทั่วโลก ซึ่งบริษัท
องค์กร หรือหน่วยงานภาครัฐ สามารถใช้เอกสารฉบับนี้เป็นเป็นแนวนโยบายในการพัฒนาซอฟต์แวร์
เพื่อลดความเสี่ยงหรือภัยคุกคามจากผู้ไม่ประสงค์ดี (Hacker)
https://www.owasp.org/images/7/72/OWASP_Top_10-2017_(en).pdf.pdf
แสดงตารางการเปรียบเทียบ
10
อันดับช่องโหว่ร้ายแรงระหว่างปี 2013 และปี 2017
จากตารางในข้างต้นสามารถสรุปความแตกต่าง10
อันดับช่องโหว่ร้ายแรงระหว่างปี 2013 และปี 2017 ได้ดังนี้
1. ภายในปี
2017
หัวข้อ A4-Insecure Direct Object
References และ A7-Missing Function
Level Access Control ถูกยุบรวมเข้ากับหัวข้อ A5-Broken Access Centrol
2. ภายในปี
2017
มีหัวข้อเกิดขึ้นใหม่ 3 หัวข้อดังนี้
2.1 A4-XML
External Entities (XXE)
2.2 A8-Insecure
Deserialization
2.3 A10-Insufficient
Logging&Monitoring
แนวทางการหรือกระบวนการพัฒนาซอฟต์แวร์ให้มีความมั่นคงปลอดภัย
1.
Application
Security Requirements ผู้ที่สนใจรายละเอียดเพิ่มเติมสามารถศึกษาได้ที่
https://www.owasp.org/index.php/Category:OWASP_Application_Security_Requirements_Project
2.
Application
Security Architecture ผู้ที่สนใจรายละเอียดเพิ่มเติมสามารถศึกษาได้ที่
https://www.owasp.org/index.php/Application_Security_Architecture_Cheat_Sheet
3.
Security
Standard Controls ผู้ที่สนใจรายละเอียดเพิ่มเติมสามารถศึกษาได้ที่
https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project
4.
Secure
Development Lifecycle ผู้ที่สนใจรายละเอียดเพิ่มเติมสามารถศึกษาได้ที่
https://www.owasp.org/index.php/OWASP_SAMM_Project
5.
Application
Security Education ผู้ที่สนใจรายละเอียดเพิ่มเติมสามารถศึกษาได้ที่
https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project
https://www.owasp.org/index.php/Category:OWASP_WebGoat.NET
https://www.owasp.org/index.php/OWASP_Node_js_Goat_Project
https://www.owasp.org/index.php/OWASP_Juice_Shop_Project
https://www.owasp.org/index.php/OWASP_Broken_Web_Applications_Project
คำอธิบาย
OWASP
Top 10 ปี 2017 ที่มี 10 อันดับช่องโหว่ร้ายแรง ดังนี้
A1-Injection
คือ
ช่องโหว่ที่ผู้ไม่ประสงค์ดีสามารถแทรกคำสั่งอันตรายเข้าสู่เว็บแอพพลิเคชัน
เพื่อให้ระบบทำงานตามคำสั่งที่
ผู้ไม่ประสงค์ดีต้องการ เช่น คำสั่งของระบบปฏิบัติการ หรือ คำสั่ง SQL (Structured Query Language) ทำให้
ผู้ไม่ประสงค์ดีสามารถเรียกดูข้อมูลหรือแก้ไขข้อมูลสำคัญได้สำเร็จ
ผู้ไม่ประสงค์ดีต้องการ เช่น คำสั่งของระบบปฏิบัติการ หรือ คำสั่ง SQL (Structured Query Language) ทำให้
ผู้ไม่ประสงค์ดีสามารถเรียกดูข้อมูลหรือแก้ไขข้อมูลสำคัญได้สำเร็จ
A2-Broken
Authentication
คือ
ช่องโหว่เกิดขึ้นจากฟังกชั่นระบบการพิสูจน์ตัวตน (Authentication) ไม่ปลอดภัยเพียงพอ
เช่น การตั้งชื่อผู้ใช้งานและรหัสผ่านที่ง่ายต่อการคาดเดา, การจัดการสิทธิในการเข้าถึงที่อ่อนแอ
(Session Management) ทำให้ผู้ไม่ประสงค์ดีสามารถเข้าสู่ระบบได้สำเร็จ
A3-Sensitive
Data Exposure
คือ
ช่องโหว่ที่เกิดขึ้นจากระบบขาดการเข้ารหัสลับข้อมูลสำคัญระหว่างการรับส่งข้อมูลหรือมีการเข้ารหัสด้วยวิธีการที่สามารถถอดรหัสได้ง่าย
ทำให้ผู้ไม่ประสงค์ดีสามารถเข้าถึงข้อมูลสำคัญในระบบได้
A4-XML External Entities (XXE)
คือ การใช้งานภาษา XML เวอร์ชันเก่าหรือการตั้งค่า XML Parsers ที่ไม่มีการกำหนดค่าที่ปลอดภัยเพียงพอ
ในการรับข้อมูลเอนทิตีจากภายนอก
ผ่านมาตรฐานการอ้างอิงรูปแบบ URI บนโพรโทคอล HTTP
ทำให้เกิดช่องโหว่ได้หลากหลายรูปแบบ เช่น
ไฟล์ข้อมูลภายในถูกเปิดเผย การสแกนพอร์ต การรันคำสั่งแปลกปลอมจากระยะไกล (RCE) เป็นต้น
หรือ DoS เป็นต้น
A5-Broken Access Control
คือ ช่องโหว่ที่เกิดขึ้นจากระบบขาดการตรวจสอบฟังก์ชัน หรือสิทธิ์ต่าง
ๆ อย่างเหมาะสม ทำให้การเชื่อมต่อเข้าสู่ระบบ ผู้ไม่ประสงค์ดีสามารถทำการ
เชื่อมต่อเข้าสู่ระบบ โดยการข้ามขั้นตอนการพิสูจน์ตัวตนได้สำเร็จ
A6-Security Misconfiguration
คือ
ช่องโหว่ที่เกิดขึ้นจากระบบขาดการติดตั้งหรือการตั้งค่าที่ไม่เหมาะสม เช่น
การใช้ชื่อผู้ใช้งานและรหัสผ่านแบบดีฟอลต์ , การตั้งค่าพาธการเข้าถึงแบบดีฟลอต์, การคงอยู่ของไฟล์สำคัญในระบบที่มาพร้อมกับการติดตั้งและตั้งค่า
เป็นต้น ทำให้ผู้ไม่ประสงค์ดีสามารถเข้าถึงข้อมูลภายในระบบหรือรวบรวมข้อมูลสำคัญภายในระบบได้
A7-Cross-Site Scripting (XSS)
คือ ช่องโหว่ที่ผู้ไม่ประสงค์ดีสามารถแทรกหรือฝังคำสั่งอันตรายเข้าสู่ระบบเว็บแอพพลิเคชันได้
เช่น คำสั่งของ JavaScript หรือ HTML ทำให้ผู้ไม่ประสงค์ดีสามารถขโมยเซสชั่น
(session) หรือ เปลี่ยนหน้าเว็บไซต์ไปยังเว็บไซต์ของผู้ไม่ประสงค์ดีได้สำเร็จ
A8-Insecure Deserialization
คือ
การใช้งานฟังก์ชัน Deserialization
ที่อนุญาตให้ผู้ไม่ประสงค์ดีสามารถแก้ไขโครงสร้างข้อมูลจากระยะไกล
ทำให้เกิดช่องโหว่ได้หลากหลายรูปแบบ เช่น Replay Attacks, Injection
Attacks และ Privilege Escalation Attacks เป็นต้น
A9-Using Components with Known Vulnerabilities
คือ ช่องโหว่ที่เกิดขึ้นจากตัวระบบหรือแอพพลิเคชัน ที่มีการใช้งาน libraries หรือ frameworks หรือ software modules ต่างๆ ที่มี่ช่องโหว่ทำให้ผู้ไม่ประสงค์ดีสามารถเข้าถึงข้อมูลสำคัญหรือยึดครองเครื่องเซิร์ฟเวอร์ได้สำเร็จ
A10-Insufficient Logging and Monitoring
คือ การเฝ้าระวัง Log ที่ไม่ดีเพียงพอต่อการตอบสนองภัยคุกคามจากผู้ไม่ประสงค์ดี (Incident Response)
ทำให้ผู้ไม่ประสงค์ดีสามารถขยายผลการโจมตีและเข้าสู่ระบบได้สำเร็จ
อ้างอิง
https://www.owasp.org