วันศุกร์ที่ 17 มกราคม พ.ศ. 2557

การป้องกัน SQL Injection


ป้องกันการ SQL Injection เบื้องต้น (ภาษา PHP)
ระดับความปลอดภัย  [น้อย - ปานกลาง]


hacker = คนพยายามจะบุกรุก

1. พยายามเช็ค ค่า input ที่รับมาจาก User ไม่ว่าจะเป็นทาง Form หรือ URL
HACKER อาจใช้ช่องทางนี้ทำการเพิ่มคำสั่ง SQL เข้าไปได้ ยกตัวอย่าง เช่น
การเช็คหาค่า input ที่เป็นอักขระพิเศษ Single Quote ('), Double Quote (") , Slash ( / )
Back Slash ( \ ) , Sime Colon ( ; ) และอื่นๆอีก ที่ไม่น่าจะเป็น ชนิดของตัวแปร

2. พยายามกำหนดความยาว และ เช็คความยาวของข้อมูลที่ถูกส่งมาจาก Client ทุกครั้ง

3. ใช้ method ต่างๆของ php เสริมเกราะความปลอดภัยของรับส่งข้อมูล เช่น mysql_real_escape_string() ในการรับส่งข้อมูลจากตัวแปร ครับ 

ยกตัวอย่าง 3.

ปรกติ เราจะใช้ รูปแบบนี้ในการรับค่า
$user = $_POST['username']; 

เปลี่ยนใหม่เป็น


$user  =  mysql_real_escape_string($_POST['username']);

ไม่มีความคิดเห็น:

แสดงความคิดเห็น