เอกสารอ้างอิงและแหล่งที่มา

แหล่งที่มาจาก OWASP

ที่มาของความรู้ในความรู้เฉพาะทาง OWASP ในตัว โดยจับคู่กับหน้าการโจมตีและหน้า Cheat Sheet ต้นฉบับของ OWASP

เอกสารนี้จับคู่ การโจมตี (www-community) และ Cheat Sheet (CheatSheetSeries) ทุกรายการของ OWASP เข้ากับหมวดความปลอดภัย โดยแต่ละรายการลิงก์ไปยังหน้าสาธารณะต้นฉบับ ภายในหมวดเดียวกัน รายการที่เทียบเท่ากันจะอยู่ในบรรทัดเช็กลิสต์เดียวกัน: การโจมตีและ cheat sheet ที่จัดการความเสี่ยงเดียวกันจะแสดงรวมกันโดยคั่นด้วยจุลภาค ส่วนรายการที่ไม่มีคู่เทียบโดยตรงจะอยู่ในบรรทัดของตัวเอง

  • เครดิตเป็นของ OWASP หน้าการโจมตีอยู่ที่ https://owasp.org/www-community/attacks/<attack> และหน้า cheat sheet อยู่ที่ https://cheatsheetseries.owasp.org/cheatsheets/<cheat>.html

1. Injection (ทั่วไป)​


2. Injection ใน SQL และฐานข้อมูล​


3. Injection คำสั่งระบบปฏิบัติการ​


4. Injection ใน LDAP, XPath และ XML​


5. Cross-Site Scripting (XSS)​


6. Cross-Site Request Forgery (CSRF) และ clickjacking​


7. การ redirect และ forward​


8. การควบคุมการเข้าถึงและการตรวจสอบสิทธิ์​


9. การยืนยันตัวตนและข้อมูลรับรอง​


10. การจัดการเซสชัน​


11. Identity federation (OAuth, SAML และ JWT)​


12. การเข้ารหัสและความปลอดภัยของการรับส่งข้อมูล​


13. Server-Side Request Forgery (SSRF)​


14. Path traversal และการจัดการไฟล์​


15. การใช้โปรโตคอล HTTP ในทางที่ผิด (header, caching และ splitting)​


16. Encoding และ content spoofing​


17. Injection ใน CSV และสเปรดชีต​


18. CORS (Cross-Origin Resource Sharing)​


19. Denial of service​


20. ความปลอดภัยของหน่วยความจำและโค้ดเนทีฟ​


21. Mobile code และการรันโค้ดที่ไม่น่าเชื่อถือ​


22. Deserialization​

  • Deserialization (แยกไปที่: python, ruby, php, java, dotnet)

23. มัลแวร์และภัยคุกคามฝั่งไคลเอนต์​


24. Logging, repudiation และการจัดการข้อผิดพลาด​


25. ตรรกะทางธุรกิจและการใช้ฟังก์ชันในทางที่ผิด​

ตรรกะทางธุรกิจและการใช้ฟังก์ชันในทางที่ผิดไม่มีพื้นผิวในโค้ดจุดเดียวที่ความรู้เฉพาะทางรายพื้นผิวจะป้องกันได้: การป้องกันคือการออกแบบเฉพาะของแต่ละแอปพลิเคชัน ซึ่งใช้เหตุผลแบบเดียวกับที่ threat modeling ของโปรเจกต์ขับเคลื่อน จึงย้ายไปไว้ที่ "อยู่นอกขอบเขต"


26. ความปลอดภัยของ AI, LLM และเอเจนต์​


27. Prototype pollution และ cross-site leaks​


28. เฟรมเวิร์กและแพลตฟอร์มภาษา​


29. เว็บฟรอนต์เอนด์และเบราว์เซอร์​


30. API และบริการ​


31. คลาวด์ คอนเทนเนอร์ และโครงสร้างพื้นฐาน​

การตั้งค่าคอนเทนเนอร์และ workload คือ config-as-code ที่นักพัฒนาส่งไปพร้อมแอป (Dockerfile, Compose และ securityContext ของ Pod) เป็นพื้นผิวจริงที่ harden แก้ไขและ verify พิสูจน์ได้ จึงอยู่ในขอบเขต ส่วนการดูแลคลัสเตอร์ (RBAC, etcd, API server, admission และ network segmentation) เป็นงานของผู้ดูแลระบบ (operator) และยังอยู่นอกขอบเขต


32. ซัพพลายเชนและ CI/CD​


33. Secret และการตั้งค่า​

การจัดการ secret เป็นงานด้านปฏิบัติการ: vault, CI/CD การตั้งค่าคลาวด์ และการหมุนเวียน (rotation) แง่มุมเดียวที่อยู่ระดับโค้ด (secret ที่ฮาร์ดโค้ดในซอร์ส) เป็นการสแกนแบบ deterministic ไม่ใช่ความรู้เฉพาะทางด้านความเสี่ยง จึงย้ายไปไว้ที่ "อยู่นอกขอบเขต"


34. กระบวนการ การออกแบบ และธรรมาภิบาล​

การปกป้องความเป็นส่วนตัวของผู้ใช้เป็นเรื่องนโยบายและการออกแบบ (การเก็บข้อมูลเท่าที่จำเป็น ความโปร่งใส และระยะเวลาการเก็บรักษา) ไม่ใช่พื้นผิวในโค้ดที่ความรู้เฉพาะทางป้องกันได้ จึงย้ายไปไว้ที่ "อยู่นอกขอบเขต"


35. การชำระเงินและการปฏิบัติตามข้อกำหนด​


36. ระบบฝังตัว IoT และโดเมนเฉพาะทาง​

ความปลอดภัยของยานยนต์และโดรนเป็นโดเมนของระบบฝังตัว (CAN bus เฟิร์มแวร์ OTA ความถูกต้องของเซนเซอร์และวิทยุ และการเข้าถึงทางกายภาพ) ไม่ใช่ซอร์สโค้ดของแอปพลิเคชันเว็บหรือ API ที่ Lagune ตรวจสอบ จึงย้ายไปไว้ที่ "อยู่นอกขอบเขต"


อยู่นอกขอบเขต (ไม่มีพื้นผิวในโค้ด)​

รายการต่อไปนี้ไม่ใช่พื้นที่ของความรู้เฉพาะทางและไม่มีช่องทำเครื่องหมาย: เป็นเรื่องธรรมาภิบาล กระบวนการ hardening ด้านปฏิบัติการ หรือการใช้เฟรมเวิร์ก ที่ไม่มีพื้นผิวในโค้ดจุดเดียวที่ความรู้เฉพาะทางรายพื้นผิวจะป้องกันได้ คุณค่าด้านความปลอดภัยของรายการเหล่านี้มีอยู่จริง แต่อยู่ในกระบวนการและสถาปัตยกรรม (หรือสำหรับเฟรมเวิร์ก อยู่ใน skill ของภาษานั้นเอง) ไม่ใช่ในการป้องกันที่แคตตาล็อกนี้มีให้ จึงแสดงไว้เพื่ออ้างอิง ไม่ใช่เป็นงานที่ต้องทำ

  • Authorization Regression Testing, Authorization Testing Automation
  • JAAS
  • Denial of Service, Denial of Service
  • HTTP/2 Reset Attack
  • Traffic flood
  • Web Service Amplification Attack (การขยายปริมาณทราฟฟิกผ่าน SOAP และ WS-Addressing ซึ่งเป็น DoS ด้านปฏิบัติการรูปแบบหนึ่งที่ไม่มีพื้นผิวในโค้ด)
  • Cash Overflow
  • Spyware, Trojan Horse (มัลแวร์ฝั่งผู้ใช้ปลายทาง ไม่ใช่พื้นผิวในโค้ดของโปรเจกต์ที่ตรวจสอบ แง่มุมการแพร่ผ่านเบราว์เซอร์อยู่ใน browser)
  • REST Security, REST Assessment
  • Web Service Security
  • Cloud Architecture Security (การออกแบบและการชั่งข้อดีข้อเสีย: IAM เทียบกับ signed URL, VPC สาธารณะและส่วนตัว ขอบเขตความไว้วางใจ และความรับผิดชอบร่วม ต่างจาก container ตรงที่ไม่มีการตั้งค่าที่เป็นรูปธรรมให้ความรู้เฉพาะทางตรวจ)
  • Infrastructure as Code Security (แม้ชื่อจะเป็นเช่นนั้น แต่เนื้อหาคือกระบวนการ SDLC และเครื่องมือสำหรับ จัดการ IaC: ปลั๊กอิน IDE, static analysis การสแกน image, CI/CD และการลงนาม ไม่ได้ให้รูปแบบที่ไม่ปลอดภัยพร้อมรูปแบบที่ปลอดภัยแทนในไฟล์ Terraform หรือ CloudFormation)
  • Kubernetes Security (เฉพาะส่วนการดูแลคลัสเตอร์: RBAC, etcd, API server และ admission ส่วนของ workload และ Pod อยู่ในขอบเขตภายใต้ container)
  • Network Segmentation (สถาปัตยกรรมเครือข่ายและนโยบาย firewall)
  • Subdomain Takeover Prevention (วงจรชีวิตและการเฝ้าระวัง DNS ไม่ใช่โค้ด)
  • Secrets Management (vault, CI/CD และการหมุนเวียน แง่มุม secret ที่ฮาร์ดโค้ดเป็นการสแกนแบบ deterministic ไม่ใช่ความรู้เฉพาะทางด้านความเสี่ยง)
  • C-Based Toolchain Hardening (แฟล็กของคอมไพเลอร์ linker และการ build โดยไม่มี sink ในซอร์ส)
  • Microservices Security, Microservices based Security Arch Doc
  • Zero Trust Architecture
  • CI/CD Security, GitHub Actions Security
  • Software Supply Chain Security
  • Error Handling, Full Path Disclosure (การตั้งค่า error handler ส่วนกลางของแต่ละ stack การรั่วไหลนี้คือการเปิดเผยข้อมูลแบบเดียวกับที่การจัดการข้อผิดพลาดดูแลอยู่แล้ว)
  • Abuse of Functionality, Business Logic Security, Abuse Case (historical) (การออกแบบเฉพาะของแต่ละแอปพลิเคชัน ไม่มี sink ในโค้ดจุดเดียว)
  • User Privacy Protection (การเก็บข้อมูลเท่าที่จำเป็น ความโปร่งใส และนโยบายระยะเวลาการเก็บรักษา)
  • Top 10 Automotive Security Vulnerabilities, Drone Security (โดเมนของระบบฝังตัว: CAN bus เฟิร์มแวร์ OTA และความถูกต้องของเซนเซอร์และวิทยุ ไม่ใช่ซอร์สโค้ดเว็บหรือ API)
  • Mobile Application Security (การเสริมความปลอดภัยแพลตฟอร์ม Android และ iOS: พื้นที่จัดเก็บ ไบโอเมตริก pinning และ PII ไม่มีพื้นผิวในโค้ดจุดเดียว และแง่มุมการโหลดโค้ดที่ไม่น่าเชื่อถือย้ายไปอยู่ที่ interpreter)
  • Threat Modeling, Threat Modeling (community page)
  • Attack Surface Analysis
  • Secure Product Design
  • Secure Code Review
  • Virtual Patching
  • Vulnerability Disclosure
  • Legacy Application Management
  • Security Terminology