Penetration Testing Methodology ที่ MAYASEVEN เลือกใช้

เริ่มจากคำถามที่ว่าเราจะทำ penetration testing อย่างไรให้ได้คุณภาพและรักษาคุณภาพงานให้มีความสม่ำเสมอได้ทุก project คือไม่ว่า project ไหนหรือใครเป็นคนทำถ้าเป็นผลงานจากบริษัท MAYASEVEN งานจะต้องออกมามีคุณภาพเหมือนกันทุก project 

จากคำถามนั้น ทีมเราได้ช่วยกัน research พวกกระบวนการทดสอบเจาะระบบ, หลักการ, มาตรฐาน, คู่มือ ที่เกี่ยวกับการทำ penetration testing methodology ที่มีอยู่ในปัจจุบันเฉพาะตัวที่มีชื่อเสียงและเป็นที่ยอมรับ เพื่อศึกษาว่าเราจะใช้ตัวไหนดีในงานทดสอบเจาะระบบของเรา ปรากฏว่าหลังจากศึกษาเราเริ่มเห็นข้อจำกัดของ penetration testing methodology ของค่ายต่างๆ เช่น เก่าและขาดการปรับปรุงให้ทันสมัย, รายละเอียดการทดสอบไม่ครบถ้วน, test case มีแต่ case พื้นฐาน, ไม่มีวิธีทดสอบเทคโนโลยีใหม่ๆ เป็นต้น รวมถึงเราก็ได้เห็นถึงข้อดีและจุดเด่นของแต่ละ penetration testing methodology เลยเขียนบทความนี้ขึ้นมาเพื่อเผยแพร่ความรู้ให้ผู้ที่สนใจสายงานทดสอบเจาะระบบหรือ pentester ได้เอาไปต่อยอดกันครับ โดยในบทความนี้เราได้ทำสรุป penetration testing methodology หรือกระบวนการทดสอบเจาะระบบของค่ายต่างๆที่เป็นที่นิยมในการอ้างอิงในการทำ pentest มาให้อ่านว่าค่ายไหนเป็นยังไงบ้าง โดยกำหนดเกณฑ์ขึ้นมา 6 ด้านดังนี้  ความละเอียดในขั้นตอนการทดสอบเจาะระบบ, เนื้อหาครอบคลุมครบถ้วน, เนื้อหาทันสมัยใช้ได้กับปัจจุบัน, มีความน่าเชื่อถือ, เหมาะสำหรับใคร

กลับมาที่คำถามที่ว่าแล้ว MAYASEVEN ใช้  penetration testing methodology ตัวไหนละ?

คำตอบคือจากการ research ด้านบนเราได้เห็นข้อดีข้อเสียของ penetration testing methodology ค่ายต่างๆแล้ว เราได้ทำการพัฒนา penetration testing framework ของเราขึ้นเองโดยนำจุดเด่นของแต่ละค่ายมาใช้และแก้ไขจุดอ่อนให้หมด โดยทำตามละระบบ PDCA ที่สามารถพัฒนาตัว framework ได้เสมอๆ เมื่อมีข่าวช่องโหว่หรือเทคนิคการเจาะระบบใหม่ๆออกมา สำหรับ penetration testing service ของ MAYASEVEN ลูกค้าสามารถเลือก methodology ที่จะใช้ทดสอบเจาะระบบได้ เช่น ถ้าลูกค้าเลือกว่าให้ใช้ OWASP Testing Guide เราก็จะใช้ OWASP Testing Guide เป็น baseline และเราใช้ MAYASEVEN’s penetration testing framework ร่วมด้วย on top อีกครั้งเพื่อให้การทดสอบมีประสิทธิภาพมากที่สุด

ในปัจจุบัน MAYASEVEN’s penetration testing framework มีเอกสารหลักการและวิธีการทดสอบเจาะระบบหนาเป็นร้อยๆหน้า โดยเราจะให้องค์กรภายนอกที่น่าเชื่อถือในระดับโลกมาทำการ audit ระบบงานการทดสอบเจาะระบบ (penetration testing service) ของเราและออกใบรับรอง ISO 9001 ต่อไปครับ

ในรูปด้านล่างเป็นตัวอย่าง test case ของ MAYASEVEN’s penetration testing framework ในการหาช่องโหว่ของเว็บที่ใช้ JWT อย่างไม่ปลอดภัย

ตัวอย่าง test case ของ MAYASEVEN's penetration testing framework ในการหาช่องโหว่ของเว็บที่ใช้ JWT อย่างไม่ปลอดภัย

 

สามารถศึกษากระบวนการทดสอบเจาะระบบที่ได้รับความนิยมค่ายอื่นๆกันต่อได้ฟรีด้านล่างได้เลยครับ

1. Penetration Testing Execution Standard (PTES)

PTES เป็น framework ที่อธิบายในการทำทดสอบเจาะระบบ ทั้งในมุมมองทางธุรกิจและด้านความปลอดภัย โดยจะแบ่งเป็น 7 หัวข้อหลัก แยกเนื้อหาทางทฤษฎีและ Technical Guidelines  ในเอกสารฉบับนี้เป็นรุ่น 1.0 และจากคำอธิบายในตัวเอกสารนั้นได้บอกไว้ว่า เอกสารนี้ได้รับการทดสอบใช้งานเป็นเวลากว่า 1 ปีในอุตสาหกรรม Cyberseucrity PTES นั้นถูกพัฒนาโดยบุคลากรที่ทำงานด้าน security จากหลายบริษัทชั้นนำ (Tenable Security, Lares Consulting และอื่น ๆ ) รวมถึงบุคลากรจาก  SANS ที่มาร่วมสร้างและตรวจสอบ PTES โดยตัว framework นี้ได้รับการกล่าวถึงจากหน่วยงานความปลอดภัย อย่างเช่น OWASP, CREST และหน่วยงานอื่น ๆ ทำให้เอกสารนี้มีความน่าเชื่อถือสูง ส่วนการแบ่งหัวข้อและข้อความต่าง ๆ ของ PTES นั้น มีการแบ่งข้อความที่ดูง่ายแบ่งหัวข้อชัดเจน

ในส่วนความละเอียดของเนื้อหาและการทดสอบนั้น มีการอธิบายการใช้งานเครื่องมือต่าง ๆ และอธิบายขั้นตอนการทดสอบในแต่ละหัวข้ออย่างชัดเจน แต่หากเทียบกับ OWASP Testing Guide ที่ลงทางด้านเทคนิคต่าง ๆ แล้ว PTES เองนั้นไม่ได้ลงในรายละเอียดส่วนของเทคนิคมากนัก PTES จะเน้นไปแนะนำเครื่องมือเป็นส่วนใหญ่และอธิบายเนื้อหาในแต่ละหัวข้อซะมากกว่า  ในส่วนของเนื้อหานั้น เนื้อหาครอบคลุมขั้นตอนพื้นฐานของการทดสอบเจาะระบบ โดยใน PTES นั้นจะมีการแบ่งหัวข้อหลัก ๆ ทั้งทางทฤษฎีและ technical guidelines ดังต่อไปนี้ pre-engagement interactions, intelligence gathering, threat modeling, vulnerability analysis, exploitation, post exploitation, reporting และมีการแนะนำเครื่องมือ, วิธีใช้, พร้อมรูปประกอบวิธีใช้งาน, เทคนิค และ resource ต่าง ๆ เพิ่มเติม ทำให้สามารถทำตามได้ค่อนข้างง่าย แต่มีบางหัวข้อที่ใส่เนื้อหาบางส่วนลงไปไม่ครบ อย่างเช่น ในส่วนของ exploitation และ reporting ของ technical guideline

ในส่วน techical guidelines นั้นมีการแก้ไขล่าสุดคือปี 2012 แต่ส่วนเนื้อหาทฤษฎีนั้นมีการแก้ไขล่าสุดปี 2014 ตัวหัวข้อหลัก ๆ นั้นยังครอบคลุมและสามารถนำไปใช้เป็นแนวทางในการทำทดสอบเจาะระบบในปัจจุบันได้

PTES นั้นเหมาะกับเหมาะสำหรับผู้ที่เริ่มต้นในการทำทดสอบเจาะระบบที่ต้องการรู้ถึงพื้นฐานกระบวนการ แต่ในส่วนของเทคนิคต่าง ๆ นั้นแนะนำให้ศึกษาเพิ่มเติมจาก framework อื่น ๆ เพิ่มเติมด้วยเพื่อประสิทธิภาพสูงสุด

เอกสารอ้างอิง: http://www.pentest-standard.org

2. Penetration Testing Framework 0.59 (PTF)
PTF เป็น framework การทดสอบเจาะระบบ ที่เน้นวิธีการปฏิบัติเป็นส่วนใหญ่ ซึ่งมาตรฐาน PTF จะแนะนำวิธีการใช้เครื่องมือต่าง ๆ ในการทดสอบเจาะระบบในแต่ละหัวข้อ โดยมาตรฐานถูกจัดทำโดย vulnerabilityassessment.co.uk ซึ่งทางผู้จัดทำนั้นได้บอกว่าข้อมูลเนื้อหาบางส่วนของตนนั้นมีส่วนร่วมอยู่ใน บริษัทที่ให้การอบรมเกี่ยวกับความปลอดภัยอย่างเช่น SANS, EC-Council  และทำให้ framework ตัวนี้ที่เป็นโปรเจคของทางผู้จัดทำนั้นมีความน่าเชื่อถือในระดับนึง

ในส่วนความละเอียดในเนื้อหาและการทดสอบนั้น มีการอธิบายขั้นตอนพอสังเขปและแนะนำเครื่องมือพร้อมวิธีใช้งานที่เหมาะสมกับรูปแบบที่ต้องการทดสอบ โดยจะแนะนำมาเป็นคำสั่งที่พร้อมใช้งานในการทดสอบ  ส่วนของทฤษฎีนั้นเขียนในรูปแบบอธิบายเป็นข้อ ๆ ไปพร้อมวิธีทำในขั้นตอนต่าง ๆ พอสังเขป ส่วนของเนื้อหาเชิงเทคนิคนั้นมีค่อนข้างครอบคลุม รวมไปถึงการทดสอบ ระบบ AS/400 ที่ไม่ค่อยมีเขียนให้เห็นทั่วไป และที่สำคัญคือในส่วนของ enumuration นั้นที่มีการอธิบายว่าแต่ละ port เป็นของ service อะไรและจะทดสอบแต่ละ port เหล่านี้ได้อย่างไรบ้าง ต่อมาหัวข้อ discovering/probing ที่ได้รวบรวม default password ของอุปกรณ์ต่าง ๆ มาไว้ให้ใช้งาน โดยรวมแล้ว PTF นั้นแบ่งหัวข้อได้เข้าใจง่าย กระชับ แต่มีบางหัวข้อที่มีเพียงหัวข้อย่อยแต่ไม่มีคำอธิบายเพิ่มเติม เพียงแค่ยกตัวอย่าง resource มาให้ อย่างเช่น ในส่วนของ penetration testing ส่วนใหญ่จะเป็น resource ของเว็บไซต์อื่นซะมากกว่า หรือ หัวข้อ server specific test ที่แยกหัวข้อมาว่ามีอะไรบ้างแต่โดยรวมนั้นไม่มีคำอธิบายเพิ่มเติม

เนื้อหาขั้นตอนการทดสอบเจาะระบบนั้นยังใช้ได้กับปัจจุบัน เพียงแต่เครื่องมือที่แนะนำนั้นส่วนใหญ่จะไม่ได้รับการอัพเดท หรือ เว็บไซต์ของเครื่องมือนั้น ๆ ไม่สามารถเข้าถึงได้แล้วซึ่งมีเกือบครึ่งนึงของเครื่องมือที่แนะนำ โดยรวมแล้ว PTF นั้นเหมาะสำหรับ penetration tester, security audit ที่ต้องการความรวดเร็วในการทดสอบ โดยไม่ต้องการคำอธิบายที่เยอะเกินไป

เอกสารอ้างอิง: http://www.vulnerabilityassessment.co.uk/Penetration%20Test.html

3. Mobile Application Security Verification Standard (MASVS)

MASVS เป็น framework ที่ช่วยจัดการเรื่องความต้องการของความปลอดภัยสำหรับ mobile application ไม่ว่าจะในส่วนของ design หรือ develop โดย MASVS นั้นเป็น framework ที่ถูกสร้างขึ้นโดย OWASP ทำให้ framework ตัวนี้มีความน่าเชื่อถือในระดับสากล

ในส่วนของรายละเอียดของการทดสอบนั้น จะเป็นแนวทางตรวจสอบความถูกต้องของตัว mobile application ที่พัฒนา โดยในตัว MASVS จะแบ่งได้เป็น 2 ระดับ (MASVS-L1, MASVS-L2) และส่วนเสริมอีก 1 ระดับ (MASVS-R) ที่สามารถนำไปใช้ร่วมกับ MASVS-L1 กับ MASVS-L2 ได้ โดยแต่ละระดับนั้นจะมีรายการการทดสอบที่มากขึ้นเพื่อความปลอดภัยที่มากขึ้น โดยระดับทั้งหมดจะถูกแบ่งดังต่อไปนี้

  • MASVS-L1: Standard Security คือระดับความปลอดภัยขั้นพื้นฐานที่ทุก ๆ mobile application ควรมี
  • MASVS-L2: Defense in Depth คือระดับความปลอดภัยขั้นสูงที่ mobile application ควรมี เช่น Health-Care Industry, Financial Industry
  • MASVS-R : Resiliency Against Reverse Engineering and Tampering คือระดับความปลอดภัยสำหรับการป้องกันไม่ให้ผู้ใช้ทำการขโมยหรือดัดแปลงข้อมูลภายใน source code สำหรับ mobile application เช่น gaming industry และ financial industry

ส่วนหัวข้อการประเมินนั้นจะถูกแบ่งเป็น V1 ถึง V8 (อย่างเช่น V1 คือ ความต้องการของ architecture, design และ threat modeling) พร้อมกับ checklist ของความต้องการต่าง ๆ ว่าต้องประเมินอะไรบ้าง

MASVS นั้นมีการอัพเดทอยู่เรื่อย ๆ ทำให้เหมาะสมกับการทดสอบ mobile application ปัจจุบัน แต่ตัว MASVS นั้นเป็น checklist เท่านั้น หากต้องการลงรายละเอียดการทดสอบต่าง ๆ ในรายการนั้น ควรใช้ OWASP Mobile Testing Guide และ OWASP Mobile Top 10 ควบคู่กันไปด้วยเพื่อให้เกิดประสิทธิภาพสูงสุด

เอกสารนี้เหมาะกับ mobile developer และ penetration tester ที่ต้องการทดสอบความปลอดภัยของ mobile application

เอกสารอ้างอิง: https://github.com/OWASP/owasp-masvs

4. Open Source Security Testing Methodology Manual (OSSTMM) v3

OSSTMM เป็น methodology สำหรับตรวจสอบความปลอดภัยของ human, physical, wireless, telecommunications และ data networks เอกสารที่นำมาเสนอนี้คือรุ่นที่ 3 เป็นฉบับสมบูรณ์ล่าสุด มีทั้งหมด 213 หน้า ออกมาในปี 2010 แต่ถ้า version 4 (draff) ต้องเสียค่าใช้จ่ายเพื่อเป็นสาชิกจึงจะสามารถ downlaod ได้ และ OSSTMM ถูกดูแลโดย Institute for Security and Open Methodologies (ISECOM) ที่ได้ลงทะเบียนเป็น องค์กรที่ไม่แสวงหาผลกำไร ใน New York ที่ USA และใน Catalonia ที่ Spain มีผู้พัฒนาจากหลายองค์กรที่มีชื่อเสียงเข้าร่วมจัดทำและยังถูกใช้เป็นเอกสารอ้างอิงจากมาตรฐานอื่น ๆ เช่น PCI DSS, OWASP, CREST Penetration Testing Guide 2017 และอื่น ๆ รูปแบบการตรวจสอบความถูกต้องของเอกสารเป็นแบบ peer review คือการตรวจสอบที่ดำเนินการโดยผู้เชี่ยวชาญท่านอื่น (ที่ไม่ใช่ผู้เขียนมารีวิวเอง) และแบบ cross-disciplinary ที่ร่วมกับผู้เชี่ยวชาญสาขาวิชาอื่นที่ไม่ได้เกี่ยวกับ security โดยตรง

OSSTMM กำหนดชัดเจน ว่าต้องทำอะไรก่อนการเริ่มทดสอบ และจะวิเคราะห์อะไร อย่างไรบ้าง OSSTMM ได้มีตัวชี้วัดในการคำนวนความปลอดภัยของระบบเป็นของตัวเองโดยผลลัพธ์ที่ได้ออกมา จะเป็นคะแนนความปลอดภัยของระบบ สำหรับขั้นตอนการทดสอบไม่ได้มีการลงรายละเอียดถึงเทคนิคของเครื่องมือที่ใช้ นอกจากนั้นยังมีการพูดถึง compliance ว่ามีประเภทอะไรบ้างใครเป็นผู้กำหนด และการทำรายงานการประเมิน ด้วย Security Test Audit Report (STAR) ที่ออกแบบโดย OSSTMM

เหมาะสำหรับ ผู้ที่อยากได้แนวทางการทำ operations security รวมถึง penetration tester, และ compliance auditors

เอกสารอ้างอิง: www.isecom.org/mirror/OSSTMM.3.pdf

5. OWASP Mobile Security Testing Guide (MSTG)

MSTG เป็นแนวทางสำหรับทดสอบความปลอดภัยของ mobile application ทั้ง iOS และ android จัดทำโดยกลุ่มของ OWASP (Open Web Application Security Project)  เป็นองค์กรที่ไม่แสวงหาผลกำไร เอกสารรุ่น 1.0 มีทั้งหมด 557 หน้า ได้ถูกปล่อยสู่สาธารณะในเดือน มิถุนายน ปี ค.ศ. 2018 สามารถอ่านได้ฟรี มีผู้พัฒนาหลักที่เป็น mobile & web penetration tester กับ cyber security specialist และมีผู้เข้าร่วมพัฒนาอื่น ๆ อีกไม่น้อยกว่า 50 คน

ก่อนเริ่มเข้าสู่เนื้อหา ภายในเอกสารจะให้ผู้อ่านทำความเข้าใจภาพรวมของ mobile application security ว่าต้องสนใจที่จุดใด และมาตรฐานการทดสอบมีอะไรบ้าง (ในเอกสารนี้จะอ้างอิงถึง MASVS) เพื่อทำเป็น checklist ว่าจะไม่พลาดจุดใดไประหว่างทำการทดสอบ

ซึ่ง MSTG มีทั้งวิธีทดสอบ และตัวอย่างวิธีการแก้ไข โดยทั้งหมดจะเน้นไปที่ native application

เอกสารฉบับนี้จะแบ่งเป็น 4 ส่วนหลัก ๆ

  • General Testing Guide เป็นการทดสอบช่องโหว่โดยทั่วไปซึ่งอาจจะเกิดได้ในทั้ง android และ iOS เช่นการ implementing cryptography หรือการออกแบบสถาปัตยกรรมของการ authentication ที่ไม่ถูกต้อง
  • Android Testing Guide เป็นการเจาะจงการทดสอบช่องโหว่ไปที่ android โดยเริ่มตั้งแต่ platform overview เพื่อเข้าใจการทำงานของ android ในภาพรวมและ setup testing environment และเข้าสู่ขั้นตอนการทดสอบในขั้นตอนต่าง ๆ ต่อไป
  • iOS Testing Guide  เป็นการเจาะจงการทดสอบช่องโหว่ไปที่ iOS ซึ่งหัวข้อก็จะคล้ายกับ android เพียงแต่เปลี่ยนเนื้อหาเป็นของ iOS
  • Appendix (ภาคผนวก) พูดถึงเครื่องมือที่ใช้ในการทดสอบ และแนะนำหนังสือที่ควรอ่านเพิ่มเติม

มีการแบ่งเรื่องชัดเจน ใช้ภาษาเข้าใจง่าย มีตัวอย่าง code ที่มีปัญหา และสาธิตวิธีการทดสอบ พร้อมวิธีการแก้ไข

เอกสารฉบับนี้เหมาะสำหรับ penetration tester, developer

เอกสารอ้างอิง: https://leanpub.com/mobile-security-testing-guide-preview หรือ https://mobile-security.gitbook.io/mobile-security-testing-guide/

6. NIST SP800-115

เอกสาร NIST SP800-115 เป็นคู่มือสำหรับองค์กรในการวางแผนและดำเนินการทางเทคนิคที่เกี่ยวข้องกับการรักษาความปลอดภัยของข้อมูล ใช้เพื่อประเมิน, ทดสอบ, วิเคราะห์, ค้นหา, และสร้างแผนบรรเทาภัยโดยสามารถนำไปใช้ได้ในหลาย ๆ จุดประสงค์เช่น การหาช่องโหว่ในระบบหรือในเครือข่าย, การตรวจสอบ compliance กับ policy หรือ requirement ต่าง ๆ ซึ่งจะเน้นไปที่ภาพรวมขององค์ประกอบหลัก ๆของการทดสอบและการประเมินความปลอดภัย ไม่ได้ลงรายละเอียดลึกมากนัก

ผู้จัดทำเอกสารฉบับนี้คือ National Institute of Standards and Technology (NIST) เป็นองค์กรหนึ่งของประเทศสหรัฐอเมริกามีหน้าที่ในการพัฒนามาตรฐานและแนวทาง รวมไปถึงข้อกำหนดความต้องการขั้นต่ำเพื่อให้มีการรักษาความปลอดภัยของข้อมูล แนวทางนี้จัดทำขึ้นเพื่อใช้ในหน่วยงานของรัฐบาลกลางของสหรัฐอเมริกา ทำให้เอกสารมีความน่าเชื่อถือมาก

เนื้อหาจะถูกแบ่งออกเป็น 7 ส่วนด้วยกันดังนี้

  • Security Testing and Examination Overview
  • Review Techniques
  • Target Identification and Analysis Techniques
  • Target Vulnerability Validation Techniques (password cracking, penetration test, social engineering)
  • Security Assessment Planning
  • Security Assessment Execution
  • Post-Testing Activities

นอกจากนี้ยังมีส่วนเพิ่มเติมอีก 7 บทที่จะพูดถึง เครื่องมือ, template เอกสาร rules of engagement, คำแนะนำเพิ่มเติมต่าง ๆ อีกด้วย

NIST SP800-115 เป็นเอกสารปี 2008 ถึงแม้ว่าจะค่อนข้างเก่าแต่ก็ยังมีเนื้อหาส่วนใหญ่ที่ใช้ได้กับปัจจุบัน โดยเนื้อหาเหมาะกับ computer security staff, program & project manager, system and network administrators, technical staff

เอกสารอ้างอิง: https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-115.pdf

7. PCI DSS

สำหรับเอกสาร Penetration Testing Guidance นี้จะเป็นหนึ่งในเอกสารเพิ่มเติมสำหรับการทำ Payment Card Industry Data Security Standard (PCI DSS) สำหรับคนที่ยังไม่รู้ว่า PCI DSS คืออะไรเราจะขออธิบายแบบย่อ ๆ ก็คือ PCI DSS เป็นมาตรฐานการรักษาความปลอดภัยโดยมีจุดประสงค์เพื่อช่วยให้องค์กร บริษัท และร้านค้าที่มีการชำระเงินด้วยบัตรเครดิตนั้นมีกระบวนรักษาความปลอดภัยที่เหมาะสม และลดปัญหาด้านความปลอดภัยที่อาจจะเกิดขึ้นจากการทำธุรกรรมผ่านบัตรเครดิตได้นั้นเอง สำหรับผู้ที่ออกมาตรฐานนี้ก็คือ Visa, Master Card, American Express, Discover, และ JCB ทำให้เอกสารนี้มีความน่าเชื่อถือที่สูงมากในการใช้งาน

เอกสารฉบับนี้จะจัดทำขึ้นเพื่อช่วยให้ผู้อ่านเข้าใจการทำ penetration test ได้ดียิ่งขึ้น โดยเริ่มต้นด้วยการให้ข้อมูลพื้นฐานและคำจำกัดความสำหรับหัวข้อทั่ว ๆ ไป (scope, critical system, application layer and network layer, etc.) นอกจากนี้ยังให้แนวทางในการเลือกผู้ทดสอบความปลอดภัยระบบ, methodologies ที่ใช้, การทำรายงาน, และ การประเมินผลการทดสอบ โดยจะเน้นไปที่หัวข้อหลัก ๆ 4 หัวข้อดังนี้

  • Penetration Testing Components
  • Qualifications of a Penetration Tester
  • Penetration Testing Methodologies
  • Penetration Testing Reporting Guidelines

เอกสารไม่ได้ลงเทคนิคในการทำ penetration testing แต่จะเน้นไปที่การอธิบายให้เข้าใจเนื้อหาและกระบวนการทำ penetration testing ตั้งแต่แรกเริ่ม การทำ scope, การเตรียมเอกสารต่าง ๆ, การทำ penetration test, การทำรายงาน และอื่น ๆ ซึ่งเนื้อหาอ่านเข้าใจง่าย และ ยังคงสามารถนำไปใช้ได้จริงในปัจจุบันเอกสารมีการอัพเดตล่าสุดเมื่อ เดือน กันยายน ปี 2017 ซึ่งเป็นเวอร์ชั่น 1.1

คำแนะนำในเอกสารของ PCI DSS เล่มนี้มีไว้สำหรับการเตรียมการสำหรับการทำ penetration test โดยเหมาะสำหรับ บริษัทที่เชี่ยวชาญในการบริการ penetration testing, ผู้ประเมิน scope penetration tests นอกจากนี้ยังสามารถปรับใช้ได้กับองค์กรทุกขนาดทุกงบประมาณและทุกอุตสาหกรรม

เอกสารอ้างอิง: https://www.pcisecuritystandards.org/documents/Penetration-Testing-Guidance-v1_1.pdf

8. OWASP Testing Guide (OTG) v4

เอกสารนี้ได้รับการออกแบบมาเพื่อช่วยให้องค์กรเข้าใจถึงส่วนประกอบของโปรแกรมการทดสอบเพื่อช่วยให้กระบวนการสร้าง web application มีความปลอดภัยยิ่งขึ้น อีกทั้งคู่มือเล่มนี้ยังใช้เป็นคู่มืออ้างอิง และ เป็นวิธีการตรวจสอบเพื่อช่วยป้องกันช่องโหว่ที่อาจจะเกิดขึ้นกับระบบอีกด้วย องค์กรที่เป็นผู้สร้างคู่มือเล่มนี้คือ OWASP (Open Web Application Security Project ) เป็นองค์กรที่ไม่แสวงหาผลกำไร โดยคู่มือเล่มนี้มีผู้นำในการพัฒนา 2 คน และผู้ช่วยไม่น้อยกว่า 100 คน เพื่อให้มีเนื้อหาครบถ้วนและสามารถใช้ได้จริงกับปัจจุบัน

เอกสารนี้อธิบายถึงกระบวนการ SDLC ที่สอดแทรกกระบวนการทดสอบความปลอดภัย เพื่อทำให้ซอฟแวร์ที่พัฒนาขึ้นมามีความปลอดภัยมากยิ่งขึ้น ได้แก่ process reviews & manual inspections, threat modeling, code review, penetration testing พร้อมระบุถึงข้อดีและข้อเสียของแต่ละประเภท เพื่อให้เหมาะสมในแต่ละกระบวนการการพัฒนา เนื้อหามีการเรียบเรียงที่ดีทำให้อ่านเข้าใจง่ายอีกทั้งยังมีตัวอย่างเพื่อเพิ่มความเข้าใจ ในบางเนื้อหาอาจจะมีอ้างอิงไปถึงเอกสารอื่น ๆ เช่น วิธีการทำ code review ก็จะอ้างอิงไปถึง OWASP Code Review Guide เนื้อหาภายในเล่มมีทั้งทฤษฎี และ ปฏิบัติ

ในส่วนของคู่มือการทดสอบความปลอดภัยมีการแสดงวิธีใช้คำสั่ง เครื่องมือ และ รูปภาพประกอบ (ส่วนคู่มือนี้มีประมาณ 180 หน้า 11 หัวข้อการทดสอบ)  ปัจจุบัน OWASP ยังคงอัพเดตเนื้อหาของคู่มือเล่มนี้อยู่ตลอด ทำให้คู่มือเล่มนี้มีเนื้อหาที่ทันสมัย เอกสารเล่มนี้เหมาะสำหรับ penetration tester, QA, testers, developers, technical managers และผู้สนใจทางด้าน IT security

เอกสารอ้างอิง: https://www.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents

(แนะนำให้ดาวน์โหลดตัวที่เป็น pdf เพราะละเอียดมากกว่า)

9. OWASP Application Security Verification Standard 3.0.1 (ASVS)

ASVS 3.0.1 เป็น framework สำหรับใช้ตรวจสอบความปลอดภัยของ web application โดยเป้าหมายของ ASVS คือการช่วยให้องค์กรพัฒนาและปรับปรุงแอพพลิเคชั่นได้มีความปลอดภัยมากยิ่งขึ้น ASVS เป็น framework ที่ทาง OWASP พัฒนาทำให้มีความน่าเชื่อถือในระดับสากล

สำหรับการตรวจสอบความปลอดภัยของ ASVS แบ่งได้เป็น 3 ระดับ โดยแต่ละระดับนั้นจะมีจำนวนรายการการทดสอบที่มากขึ้นเพื่อความปลอดภัยที่มากขึ้น

  • ASVS Level 1: Opportunities คือระดับความปลอดภัยสำหรับป้องกันช่องโหว่ที่ง่ายต่อการค้นหา ใช้ประเมินกับแอพพลิเคชั่นทั่ว ๆ ไป ซึ่งทุก Application ควรผ่านการทดสอบนี้เป็นขั้นต่ำ
  • ASVS Level 2: Standard คือระดับความปลอดภัยสำหรับป้องกันความเสี่ยงส่วนใหญ่ที่เกี่ยวกับ web application ในปัจจุบัน ใช้ประเมินกับแอพพลิเคชั่นที่มีการเก็บข้อมูลสำคัญที่ต้องการการป้องกัน
  • ASVS Level 3: Advanced คือระดับความปลอดภัยขั้นสูง สำหรับใช้ประเมินกับแอพพลิเคชั่นที่มีการทำธุรกรรม หรือ มีข้อมูลทางการแพทย์ที่สำคัญ หรือเป็นแอพพลิเคชั่นที่ต้องการความน่าเชื่อถือสูง

ซึ่งในการประเมินจะมีหัวข้อการประเมินแอพพลิเคชั่นทั้งหมด 19 หัวข้อ V1-V19 แต่ละหัวข้อมีการกำหนดรายละเอียดชัดเจนอ่านเข้าใจง่ายว่าแอพพลิเคชั่นระดับไหนต้องตรวจสอบอะไรบ้าง โดยรายละเอียดเหล่านี้ถูกรวบรวมขึ้นจาก OWASP ซึ่งมีกลุ่มอาสาสมัครช่วยกันพัฒนาขึ้นมา เนื้อหาครบคลุมครบถ้วนสามารถใช้ได้กับปัจจุบัน โดยเวอร์ชั่นล่าสุดที่ออกมาตอนนี้คือ ASVS 3.0.1 ซึ่งในเร็ว ๆ นี้น่าจะออกเวอร์ชั่น 3.1 ที่เพิ่มหัว V20 Internet of Things เข้าไปด้วย เอกสารฉบับนี้เหมาะสำหรับ developers, testers, penetration tester

เอกสารอ้างอิง: https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project

10. Web Application Security Consortium Threat Classification  (WASC Threat Classification)

WASC Threat Classification Version 2.0 เป็นเอกสารที่รวบรวมรูปแบบช่องโหว่ และ จุดอ่อนของระบบ ที่สามารถนำไปสู่ช่องทางการโจมตีของ web application, data, users โดยเอกสารนี้ทำหน้าที่เป็นเหมือนเอกสารอ้างอิงการโจมตีหรือจุดอ่อนเฉกเช่นเดียวกัน CWE/CAPEC

เอกสารจัดทำขึ้นโดย Web Application Security Consortium จุดประสงค์ของเอกสารเล่มนี้คือให้องค์กรหรือผู้ที่สนใจนำไปใช้สำหรับ reference material, security assessment checklist, bug tracking ภายในของเอกสารมีการจัดวางเนื้อหาที่ดีทำให้อ่านเข้าใจได้ง่าย มีเนื้อหาอธิบายรายละเอียดของช่องโหว่แต่ละอันว่าคืออะไรและมีผลกระทบกับระบบอย่างไร รวมไปถึงขั้นตอนการทดสอบต่าง ๆ ที่นำเสนอเทคนิค ตัวอย่างการโจมตี และตัวอย่าง source code ทำให้ผู้อ่านเข้าใจถึงเทคนิคที่ผู้โจมตีใช้จริง ๆ ซึ่งบางช่องโหว่ได้มีการเพิ่มวิธีป้องกันเข้าไปด้วย ในแต่ละข้อจะมีเอกสารอ้างอิงให้เข้าไปอ่านได้ถ้าหากต้องการข้อมูลเพิ่มเติม เนื่องจากเอกสารเล่มนี้ไม่ได้มีการอัพเดตมาตั้งแต่ปี 2010 ทำให้เนื้อหาไม่ได้มีการอัพเดตช่องโหว่หรือรูปแบบการโจมตีใหม่ ๆ เข้าไป เนื้อหาอาจจะไม่ครอบคลุมกับปัจจุบัน แต่สามารถอ่านเพื่อทบทวนรูปแบบการโจมตีที่เคยมีมาได้ เหมาะสำหรับ developers, penetration tester, และ compliance auditors

เอกสารอ้างอิง: http://projects.webappsec.org/w/page/13246978/Threat%20Classification

hack, hacker, methodology, penetration testing, pentest, วิธีการเจาะระบบ, แฮค
Previous Post
Krungsri Consumer ร่วมกับ MAYASEVEN จัดงานแข่งขัน Security Development Hackathon 2017
Next Post
[Facebook] cheat boost premiere video post by MAYASEVEN

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed