การฉีดคำสั่งคืออะไร?

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

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

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

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

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