องค์กรหนึ่งต้องการป้องกัน SQL Injection Attack ซึ่งเป็นการโจมตีฐานข้อมูล ควรทำอย่างไร
กใช้กำแพงไฟสำหรับป้องกัน SQL Injection Attack
ขเปลี่ยนชื่อของตารางฐานข้อมูลเป็นชื่อที่สลับสับปะสุม
คตรวจสอบและกรองข้อมูลนำเข้าทั้งหมด (Input Validation) และใช้ Prepared Statement แทนการสร้างคำสั่ง SQL แบบ Dynamic
งห้ามผู้ใช้ป้อนข้อมูลทั้งหมด
เฉลยอธิบาย
SQL Injection Attack เป็นการแทรกรหัส SQL ลวง (Malicious SQL Code) ผ่านช่องป้อนข้อมูล เพื่อขโมยข้อมูลหรือทำให้ฐานข้อมูลเสียหาย ป้องกันได้โดย Input Validation เพื่อตรวจสอบข้อมูลนำเข้า และใช้ Prepared Statement (Parameterized Queries) ซึ่งแยกข้อมูลจากรหัส SQL ตัวเลือก B ไม่ปฏิบัติได้ ตัวเลือก C ไม่ได้ป้องกัน SQL Injection และตัวเลือก D กำแพงไฟป้องกันระดับเครือข่าย ไม่ได้ป้องกัน SQL Injection ที่เกิดจากการป้อนข้อมูลผ่านเว็บแอปพลิเคชัน