23 เมษายน 2020

ประโยชน์ของการทดสอบการเจาะอัตโนมัติด้วย AI

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

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

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

การทดสอบการเจาะอัตโนมัติ

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

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

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

ปัญญาประดิษฐ์และผลกระทบ

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

ตัวอย่างเช่น Cyber ​​Grand Challenge 2016 ซึ่งเป็นการแข่งขันที่ได้รับการสนับสนุนจาก DARPA ได้ท้าทายให้ผู้คนสร้างและแข่งขันกับบอทการแฮ็ก บอทที่ชาญฉลาดเหล่านี้ทำการทดสอบการเจาะระบบเพื่อค้นหาและแก้ไขช่องโหว่ด้านความปลอดภัยก่อนที่ทีมคู่แข่งจะใช้ประโยชน์จากช่องโหว่เหล่านี้ได้ ผู้ชนะ — ที่รู้จักในชื่อ Mayhem — สามารถค้นหา แก้ไข และค้นหาการบุกรุกบนระบบโฮสต์ ในขณะที่ค้นหาและใช้ประโยชน์จากช่องโหว่ด้านความปลอดภัยในระบบที่แข่งขันได้

ที่กล่าวว่าปัญญาประดิษฐ์ช่วยปรับปรุงประสิทธิภาพของโซลูชันการป้องกันทางไซเบอร์ โดยเฉพาะอย่างยิ่งโซลูชันการทดสอบการเจาะระบบ เหตุผลที่ช่วยปรับปรุงขั้นตอนต่างๆ ของการทดสอบการเจาะระบบอัตโนมัติตามที่อธิบายไว้ด้านล่าง

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

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

ขั้นตอนที่ 2: การสแกน

ขั้นตอนที่สองขอความครอบคลุมของระบบเป้าหมาย นั่นคือ คุณต้องสแกนหาคอมพิวเตอร์และอุปกรณ์อื่นๆ นับร้อยๆ เครื่อง และวิเคราะห์ผลลัพธ์ เมื่อใช้ AI เครื่องมือจะสามารถปรับแต่งเพื่อสแกนอุปกรณ์อย่างชาญฉลาดและรวบรวมผลลัพธ์ที่ต้องการ ทำให้กระบวนการวิเคราะห์ง่ายขึ้น

ขั้นที่ 3: การเข้าถึง

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

ขั้นตอนที่ 4: รักษาการเข้าถึง

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

ขั้นตอนที่ 5: การวิเคราะห์และการรายงาน

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

เกี่ยวกับผู้เขียน 

อิมราน อุดดิน


{"email": "ที่อยู่อีเมลไม่ถูกต้อง", "url": "ที่อยู่เว็บไซต์ไม่ถูกต้อง", "required": "ต้องกรอกข้อมูลในฟิลด์"}