การทดสอบซอฟต์แวร์

การทดสอบการเจาะสำหรับผู้เริ่มต้น

30 ตุลาคม 2564

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

จุดประสงค์หลักของการทดสอบด้วยปากกาคือการระบุจุดอ่อนในท่ารักษาความปลอดภัยขององค์กร ตลอดจนวัดการยอมรับนโยบายความปลอดภัย ทดสอบความตระหนักในด้านความปลอดภัย และพิจารณาว่าองค์กรจะได้รับผลกระทบจากภัยพิบัติด้านความปลอดภัยหรือไม่

ถึง การทดสอบการเจาะระบบยังเน้นถึงจุดอ่อนของบริษัท นโยบายความปลอดภัย

รายงานที่สร้างขึ้นโดยการทดสอบการเจาะระบบจะให้ข้อเสนอแนะ รายงานช่วยให้นักพัฒนาแอปพลิเคชันสร้างแอปพลิเคชันที่ปลอดภัยยิ่งขึ้น

สารบัญ

ขั้นตอนในการเริ่มต้นการทดสอบการเจาะ

ขั้นตอนที่ 1) ขั้นตอนการวางแผน

  1. กำหนดขอบเขตและกลยุทธ์ของงานที่ได้รับมอบหมาย
  2. นโยบายความปลอดภัย มาตรฐาน ใช้สำหรับกำหนดขอบเขต

ขั้นตอนที่ 2) ระยะการค้นพบ

  1. รวบรวมข้อมูลเกี่ยวกับระบบ รวมถึงข้อมูลในการออกแบบ ชื่อผู้ใช้ และแม้แต่รหัสผ่าน
  2. Scan และ Probe ลงในพอร์ต
  3. ตรวจสอบช่องโหว่ของระบบ

ขั้นตอนที่ 3) ระยะการโจมตี

  1. ค้นหาการหาประโยชน์จากจุดอ่อนต่างๆ คุณจะไม่ได้รับสิทธิ์ความปลอดภัยที่จำเป็นในการใช้ประโยชน์จากระบบ

ขั้นตอนที่ 4) ขั้นตอนการรายงาน

  1. รายงานต้องมีรายละเอียดการค้นพบ
  2. พบความเสี่ยงจากจุดอ่อนและผลกระทบต่อธุรกิจ
  3. คำแนะนำและแนวทางแก้ไข

วิธีทดสอบการเจาะ

การทดสอบภายนอก

โดยกำหนดเป้าหมายไปที่ทรัพย์สินของบริษัทที่มองเห็นได้บนอินเทอร์เน็ต ตัวอย่างเช่น อีเมลและเซิร์ฟเวอร์ชื่อโดเมน (DNS) และเว็บแอปพลิเคชันเอง เว็บไซต์ของบริษัท เป้าหมายหลักคือการเข้าถึงและดึงข้อมูลที่มีค่า

การทดสอบภายใน

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

การทดสอบคนตาบอด

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

การทดสอบตาบอดสองครั้ง

เจ้าหน้าที่รักษาความปลอดภัยไม่ทราบการโจมตี พวกเขาจะไม่มีเวลาเสริมการป้องกันก่อนที่จะเกิดการฝ่าฝืน

การทดสอบเป้าหมาย

ทั้งผู้ทดสอบและเจ้าหน้าที่รักษาความปลอดภัยทำงานร่วมกันและคอยติดตามความเคลื่อนไหวของกันและกัน เป็นการฝึกหัดที่ให้การตอบรับแบบเรียลไทม์จากมุมมองของแฮ็กเกอร์กับทีมรักษาความปลอดภัย

ข้อดี

  • การทดสอบทำให้เกิดแนวทางการรักษาความปลอดภัยที่ชัดเจน
  • ช่วยให้ศึกษาความเสี่ยงที่แท้จริงและมีการแสดงท่าทางการรักษาความปลอดภัยโครงสร้างพื้นฐานด้านไอทีของบริษัทอย่างถูกต้องในช่วงเวลาที่กำหนด
  • ช่วยตรวจสอบการละเมิดข้อมูลหรือการบุกรุกเครือข่ายเพื่อค้นหาสาเหตุของการรั่วไหลของข้อมูลหรือการขโมยทรัพย์สินทางปัญญา
  • อนุญาตให้รวบรวมข้อมูลเกี่ยวกับระบบเพื่อเรียนรู้และอาจพบรายงานภายในเกี่ยวกับแฮ็กเกอร์ที่ใช้งานอยู่
  • สามารถค้นหาทั้งข้อบกพร่องที่ไม่รู้จักและที่ทราบ และใช้ประโยชน์จากช่องโหว่ด้านความปลอดภัย ซึ่งสามารถระบุและแก้ไขได้ก่อนที่จะนำไปใช้อย่างมีประสิทธิภาพมากขึ้นด้วยเครื่องมืออัตโนมัติ
  • สามารถตรวจสอบประสิทธิภาพของกลไกการป้องกันได้ไกลเกินกว่าการวิเคราะห์โดยการประเมินช่องโหว่ในการระบุจุดอ่อน
  • มันให้วิธีที่เป็นไปได้ในการทดสอบระบบด้วยการโจมตีที่ใกล้เคียงกับเหตุการณ์จริงมากที่สุดเท่าที่จะเป็นไปได้ ต้องขอบคุณการทำงานของผู้เชี่ยวชาญที่คิดและโจมตีเหมือนกับที่แฮ็กเกอร์ที่ประสงค์ร้ายส่วนใหญ่ทำ

ข้อเสีย

  • สงสัยจะทะลุทะลวง การทดสอบจะพบความปลอดภัยทั้งหมด ปัญหาหรือจะแก้ปัญหาทั้งหมดเมื่อสแกนหาจุดอ่อนและสร้างรายงานอัตโนมัติ
  • ผู้ทดสอบต้องใช้เวลาในการตรวจสอบระบบเพื่อระบุการโจมตีมากกว่าการประเมินจุดอ่อน เป็นขอบเขตการทดสอบมีความสำคัญมากขึ้น การกระทำของเขา/เธอสามารถก่อกวนกิจกรรมทางธุรกิจได้ เนื่องจากเป็นการเลียนแบบการโจมตีจริง
  • ต้องใช้แรงงานจำนวนมาก และอาจแสดงถึงต้นทุนที่เพิ่มขึ้น และบางองค์กรอาจไม่สามารถจัดสรรงบประมาณสำหรับสิ่งนี้ได้ สิ่งนี้เป็นจริงเมื่อมีการว่าจ้างบริษัทให้ดำเนินงาน
  • มันให้ความรู้สึกปลอดภัยที่ผิดพลาด ในกรณีส่วนใหญ่ ทีมรักษาความปลอดภัยของบริษัททราบดีว่าการทดสอบพร้อมที่จะค้นหาภัยคุกคามและเตรียมพร้อมที่จะป้องกัน การโจมตีที่แท้จริงนั้นไม่มีการประกาศล่วงหน้าและเหนือสิ่งอื่นใดคือไม่คาดคิด

ประเภทของการทดสอบการรุก

ต่อไปนี้เป็นประเภทการทดสอบการเจาะที่สำคัญ:

    การทดสอบการเจาะกล่องขาว การทดสอบการเจาะกล่องดำ การทดสอบการเจาะกล่องสีเทา

การทดสอบการเจาะกล่องขาว

นี่คือการทดสอบที่ครอบคลุม โดยที่ผู้ทดสอบจะได้รับข้อมูลมากมายเกี่ยวกับระบบและเครือข่าย เช่น ซอร์สโค้ด สคีมา รายละเอียดระบบปฏิบัติการ ที่อยู่ IP เป็นต้น ซึ่งถือเป็นการจำลองการโจมตีโดยแหล่งที่มาภายใน เรียกอีกอย่างว่าโครงสร้าง กล่องแก้ว กล่องใส และการทดสอบกล่องเปิด

การทดสอบการเจาะกล่องสีขาวจะตรวจสอบความครอบคลุมของโค้ดและทำการทดสอบโฟลว์ข้อมูล การทดสอบเส้นทาง การทดสอบลูป

ข้อดี

  • ช่วยให้มั่นใจได้ว่ามีการใช้เส้นทางที่เป็นอิสระของโมดูล
  • มันให้การตัดสินใจเชิงตรรกะทั้งหมดที่ได้รับการยืนยันพร้อมกับค่าจริงและเท็จ
  • ตรวจพบข้อผิดพลาดและตรวจสอบไวยากรณ์
  • พบข้อผิดพลาดในการออกแบบที่เกิดขึ้นเนื่องจากความแตกต่างระหว่างโฟลว์ตรรกะของโปรแกรมและการดำเนินการจริง

ข้อเสีย

  • การโจมตีขาดความสมจริง
  • ผู้ทดสอบคิดต่างจากผู้โจมตีที่ไม่มีข้อมูล

การทดสอบการเจาะกล่องดำ

ในการทดสอบนี้ ผู้ทดสอบไม่มีความคิดเกี่ยวกับระบบที่เขา/เธอกำลังจะทำการทดสอบ เขา/เธอสนใจที่จะรวบรวมข้อมูลเกี่ยวกับเครือข่ายหรือระบบ เช่น ในการทดสอบประเภทนี้ ผู้ทดสอบรู้เพียงว่าผลลัพธ์ที่คาดหวังควรเป็นอย่างไร และเขา/เธอไม่รู้ว่าผลลัพธ์จะเป็นอย่างไร เขา/เธอไม่ได้ตรวจสอบรหัสโปรแกรมใดๆ

ข้อดี

  • ไม่ต้องการความรู้ภาษาโปรแกรมเฉพาะใดๆ
  • ผู้ทดสอบตรวจสอบความขัดแย้งในระบบที่มีอยู่
  • โดยทั่วไป การทดสอบจะดำเนินการจากมุมมองของผู้ใช้ ไม่ใช่ผู้ออกแบบ

ข้อเสีย

  • กรณีทดสอบยากต่อการออกแบบ
  • มันไม่ได้ดำเนินการทุกอย่าง

การทดสอบการเจาะกล่องสีเทา

ในการทดสอบการเจาะกล่องสีเทา ผู้ทดสอบมักจะเสนอข้อมูลบางส่วนหรือจำกัดเกี่ยวกับโปรแกรมของระบบ ถือเป็นการโจมตีโดยแฮ็กเกอร์ภายนอกที่ได้รับการเข้าถึงเครือข่ายขององค์กรอย่างผิดกฎหมาย

ข้อดี

  • ผู้ทดสอบไม่ต้องการการเข้าถึงซอร์สโค้ด
  • นักพัฒนาและผู้ทดสอบมีความแตกต่างกันอย่างชัดเจน ดังนั้นจึงมีความเสี่ยงที่จะเกิดความขัดแย้งส่วนตัวน้อยลง
  • คุณไม่จำเป็นต้องให้ข้อมูลภายในเกี่ยวกับฟังก์ชันของโปรแกรมและการทำงานอื่นๆ

ข้อเสีย

  • ผู้ทดสอบไม่มีสิทธิ์เข้าถึงเพื่อดูรหัส
  • การทดสอบกล่องสีเทาจะซ้ำซากหากผู้พัฒนาแอปพลิเคชันเรียกใช้กรณีทดสอบที่คล้ายกัน
  • การทดสอบกล่องสีเทาไม่เหมาะสำหรับการทดสอบอัลกอริทึม

เครื่องมือสำหรับการทดสอบการเจาะ

Network Mapper (เรียกอีกอย่างว่า NMAP)

ใช้สำหรับค้นหาจุดอ่อนในสภาพแวดล้อมเครือข่ายของธุรกิจหรือองค์กร สามารถใช้เพื่อวัตถุประสงค์ในการตรวจสอบได้เช่นกัน NMAP รับแพ็กเก็ตข้อมูลดิบที่สร้างขึ้น

  • มีโฮสต์ประเภทใดบ้างบนเครือข่ายหลักหรือเซ็กเมนต์
  • เจ้าของที่พักเหล่านี้ให้ข้อมูลเกี่ยวกับบริการต่างๆ
  • โฮสต์ใดใช้เวอร์ชันและประเภทของตัวกรองแพ็กเก็ตข้อมูล/ไฟร์วอลล์

คุณสามารถสร้างแผนที่ของเครือข่าย จากนั้น ชี้ให้เห็นจุดอ่อนที่สำคัญที่ผู้โจมตีทางไซเบอร์สามารถเจาะผ่านได้

img 617dd209ddbd1

Wireshark

เครื่องมือนี้เป็นตัววิเคราะห์แพ็กเก็ตข้อมูลจริงและ โปรโตคอลเครือข่ายที่วิเคราะห์ความปลอดภัย จุดอ่อนของการจราจรแบบเรียลไทม์ สามารถรวบรวมข้อมูลและข้อมูลได้จาก:

  • บลูทู ธ
  • IEEE 802.11
  • IPsec
  • แหวนโทเค็น
  • เฟรมรีเลย์
  • Kerberos
  • SNMPv3
  • SSL/TLS
  • WEP
  • การเชื่อมต่อแบบอีเทอร์เน็ตใดๆ
img 617dd20a27ffd

W3AF

ดิ นักพัฒนาซอฟต์แวร์ สร้างชุดนี้ และจุดมุ่งหมายหลักคือการค้นหาและใช้ประโยชน์จากจุดอ่อนด้านความปลอดภัยที่มีอยู่ในแอปพลิเคชันบนเว็บ ประกอบด้วยเครื่องมือมากมายที่สามารถขจัดภัยคุกคามได้ เช่น:

  • การปลอมแปลงผู้ใช้-ตัวแทน
  • ส่วนหัวที่กำหนดเองเพื่อร้องขอ
  • DNS แคชเป็นพิษ
img 617dd20aa10c4

บริษัทที่ดีที่สุดสำหรับการทดสอบการเจาะ

Sciencesoft

เป็นผู้ให้บริการความปลอดภัยทางไซเบอร์และบริษัทพัฒนาซอฟต์แวร์ ช่วยลูกค้าในการดำเนินงานด้านการธนาคาร การดูแลสุขภาพ การผลิต และอุตสาหกรรมอื่น ๆ ในการออกแบบและดำเนินการป้องกันที่เกี่ยวข้องมากที่สุดสำหรับสภาพแวดล้อมไอทีของพวกเขา

img 617dd20ae7785

เน็ตสปาร์คเกอร์

เป็นเครื่องสแกนอัตโนมัติที่แม่นยำซึ่งระบุช่องโหว่ใน เว็บแอปพลิเคชันและเว็บ APIs . โดยจะตรวจสอบช่องโหว่ที่พิสูจน์ว่าเป็นจริงและไม่ใช่ผลบวกที่ผิดพลาด

มีให้ในรูปแบบซอฟต์แวร์หน้าต่างและบริการออนไลน์

img 617dd20b464c0

อินดัสเฟซ WAS

ให้การทดสอบการเจาะแบบแมนนวลที่มาพร้อมกับเครื่องสแกนจุดอ่อนของเว็บแอปพลิเคชันอัตโนมัติที่ตรวจจับและรายงานจุดอ่อนตาม OWASP 10 อันดับแรก

บริษัทตั้งอยู่ในอินเดียและมีสำนักงานอื่นๆ ในมุมไบ เบงกาลูรู วาโดดารา เดลี และซานฟรานซิสโก และบริการนี้มีลูกค้ามากกว่า 1100 รายในกว่า 25 ประเทศทั่วโลก

img 617dd20c1f727

ผู้บุกรุก

มันคือ บริษัทรักษาความปลอดภัยทางไซเบอร์ ซึ่งให้โซลูชัน SaaS อัตโนมัติสำหรับลูกค้าของตน เครื่องมือสแกนอันทรงพลังออกแบบมาเพื่อให้ผลลัพธ์ที่สามารถนำไปปฏิบัติได้จริง ช่วยให้ทีมที่มีงานยุ่งมีสมาธิกับสิ่งที่สำคัญอย่างแท้จริง

ผู้บุกรุกใช้กลไกเดียวกับธนาคารขนาดใหญ่ คุณจึงสามารถเพลิดเพลินกับการตรวจสอบความปลอดภัยคุณภาพสูง โดยไม่ซับซ้อน ผู้บุกรุกยังมีบริการทดสอบการเจาะระบบแบบไฮบริด ซึ่งรวมถึงการทดสอบด้วยตนเองเพื่อช่วยระบุปัญหาที่อยู่นอกเหนือความสามารถของการสแกนอัตโนมัติ

การทดสอบการเจาะ

คำถามที่พบบ่อย

เราควรทดสอบการเจาะบ่อยแค่ไหน?

ขึ้นอยู่กับปัจจัยต่างๆ ที่ควรพิจารณาขณะพิจารณาความถี่ในการทดสอบการเจาะ ต่อไปนี้คือสิ่งที่คุณควรจำไว้
สภาพแวดล้อมเปลี่ยนแปลงบ่อยเพียงใด: การทดสอบมักถูกกำหนดเวลาสำหรับการเปลี่ยนแปลง เนื่องจากใกล้จะอยู่ในสถานะพร้อมสำหรับการผลิต
สภาพแวดล้อมมีขนาดใหญ่เพียงใด: การตั้งค่าที่ครอบคลุมมากขึ้นจะได้รับการทดสอบเป็นระยะๆ เพื่อปรับระดับความพยายามในการทดสอบและโหลดที่วางบนพื้น

ค่าใช้จ่ายทั่วไปสำหรับการทดสอบการเจาะคืออะไร?

ค่าใช้จ่ายในการทดสอบการเจาะจะแตกต่างกันอย่างมาก
มีการใช้ปัจจัยหลายประการในการกำหนดราคาการทดสอบปากกา ซึ่งรวมถึง จำเป็นต้องมีการประชุมการกำหนดขอบเขตโดยละเอียดเพื่อสร้างความเข้าใจที่ชัดเจนเกี่ยวกับความต้องการและพัฒนาคำชี้แจงของงานก่อนที่จะทำการทดสอบการเจาะระบบ ตามหลักการแล้ว การทดสอบการเจาะจะต้องดำเนินการตามค่าธรรมเนียมคงที่เพื่อขจัดค่าใช้จ่ายที่ไม่ได้วางแผนไว้ ค่าธรรมเนียมที่เสนอควรรวมค่าแรงและเครื่องมือทดสอบที่จำเป็นทั้งหมด

สิ่งที่คาดหวังจากกระบวนการทดสอบการเจาะ?

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