ระวังความเสี่ยงจากโค้ดที่เขียนโดย AI: รายงานชี้ว่า 45% มีช่องโหว่สำคัญ
ก่อนจะเชื่อถือโค้ดที่ AI เขียน โปรดอ่านบทความนี้
ในยุคที่เทคโนโลยี AI เริ่มมีบทบาทในทุกด้าน ไม่เว้นแม้แต่การเขียนโค้ดสำหรับพัฒนาแอปพลิเคชัน การใช้ โค้ดที่เขียนโดย AI ได้รับความนิยมเพิ่มขึ้นอย่างรวดเร็ว ทว่าผลการศึกษาล่าสุดจาก Veracode ได้ชี้ให้เห็นอย่างชัดเจนว่า โค้ดที่เขียนโดย AI อาจไม่ปลอดภัยอย่างที่เราคิด.
45% ของโค้ดที่ AI สร้างมามีช่องโหว่ด้านความปลอดภัย
จากการทดลองมอบหมายงานให้ AI จำนวนกว่า 100 ตัวแบบ ให้สร้างโค้ดทั้งหมด 80 ชิ้น ด้วยภาษาที่หลากหลายและในบริบทที่แตกต่างกัน ปรากฏว่ามีเพียง 55% ที่สามารถสร้างโค้ดที่ปลอดภัยได้จริง อีก 45% ของโค้ดที่ได้กลับมามีช่องโหว่อยู่ใน OWASP Top 10 ซึ่งเป็นรายการช่องโหว่ด้านความปลอดภัยที่พบบ่อยและอันตรายที่สุดในโลกของแอปพลิเคชัน เช่น การจัดการสิทธิ์ซึ่งควบคุมการเข้าถึงข้อมูล (Broken Access Control) ปัญหาการเข้ารหัส (Cryptographic Failures) และการไม่สามารถปกป้องความสมบูรณ์ของข้อมูล (Data Integrity Failures)
ประสิทธิภาพการเขียนโค้ดของ AI ไม่ได้ดีขึ้นด้านความปลอดภัย
แม้ว่า AI จะสามารถสร้างโค้ดที่คอมไพล์ได้ไม่มีข้อผิดพลาดทางไวยากรณ์ดีขึ้นเมื่อเวลาผ่านไป แต่ด้านความปลอดภัยกลับไม่ได้พัฒนาตามมาเช่นเดียวกัน ค่าความปลอดภัยของโค้ดยังคงเฉยๆ นับตั้งแต่สองปีก่อน โดยทั้งโมเดลใหม่และโมเดลที่ใหญ่กว่ายังคงสร้างโค้ดที่มีช่องโหว่ในปริมาณที่ใกล้เคียงกัน
ความเสี่ยงเพิ่มขึ้นเมื่อ AI เขียนโค้ดได้มากขึ้น
การที่ AI กลายเป็นเครื่องมือสำคัญในวงการพัฒนา software โดยเฉพาะ แนวโน้มที่เพิ่มขึ้นอย่างรวดเร็วในบางประเทศ ทำให้พื้นผิว (Attack Surface) ที่แฮกเกอร์สามารถโจมตีได้เพิ่มขึ้นตามไปด้วย ยิ่งเราปล่อยให้โค้ดที่มีช่องโหว่ถูกจัดทำและนำไปใช้จริงเรื่อยๆ ความเสี่ยงด้านความปลอดภัยก็ยิ่งทวีความรุนแรง
- การโจมตีจากการใช้โค้ดของ Amazon ถูกเผยแพร่อย่างแพร่หลายเมื่อเร็วๆ นี้
- แฮกเกอร์สามารถแทรกออนไลน์คำสั่งทำลายข้อมูลผ่านทาง GitHub ของ AI ไปจนถึงการลบข้อมูลในระบบได้สำเร็จ
- AI ไม่ได้ช่วยในการเขียนเท่านั้น แต่ยังช่วยในการเจาะระบบโค้ดได้อย่างมีประสิทธิภาพด้วย
AI เขียนอย่างเดียว还不够 ต้องตรวจสอบความปลอดภัย
ในกรณีที่สนใจเรื่องนี้เพิ่มเติม นักพัฒนารายงานการวิจัยจาก มหาวิทยาลัยแคลิฟอร์เนีย เบิร์คลีย์ ระบุไว้ชัดว่า ปัจจุบันนี้ AI สามารถหาตำแหน่งช่องโหว่ในโค้ดและนำมาเจาะระบบได้ดีขึ้น เช่นเดียวกัน สถานการณ์เช่นนี้ทำให้ความเสี่ยงของระบบที่พัฒนาจาก AI เองนั้นสูงขึ้นมาก
สรุปแนวโน้มและความจำเป็นในการควบคุม
โค้ดที่เขียนโดย AI ยังอยู่ในขั้นตอนพัฒนาและมีโอกาสก่อให้เกิดปัญหาจริง การไม่ตรวจสอบหรือเชื่อถือโค้ดที่ผลิตออกมามั่วๆ จะกลายเป็นการเปิดประตูให้แฮกเกอร์โจมตีได้อย่างง่ายดาย ทางเดียวที่จะป้องกันได้คือ ตรวจสอบซ้ำ และ ตั้งใจทดสอบระบบทุกครั้งที่นำ AI มาใช้งาน
ในปัจจุบัน เราไม่ควรจะใช้ AI เพียงอย่างเดียวในการเขียนโค้ดสำคัญ โดยเฉพาะถ้าเกี่ยวข้องกับการจัดการข้อมูลของผู้ใช้ ควรให้มนุษย์ (และทีมวิจัยด้าน Security) เข้ามามีบทบาทในการคัดกรองโค้ดที่เขียนโดย AIให้มั่นใจก่อนนำไปใช้จริง เพื่อลดผลกระทบในอนาคต