Trang chủ > Bảo Mật - Bài Viết Phân Tích > PHP – SQL Injection – Tìm lỗi và Khác Phục

PHP – SQL Injection – Tìm lỗi và Khác Phục

Cách tìm lỗi:
Qua VD bạn nhận thấy đặc trưng của SQL Injection là gì ? Đó chính là sử dụng dữ liệu được nhập vào trong câu truy vấn mà không qua kiểm tra.

I. Cách vá lỗi:
1. Mởi php.ini và set magic_quotes_gcp thành On
Nó sẽ chèn “\” trước (‘) có trong:
-COOKIE
-POST
-GET

2. Sử dụng hàm addslashes() để “gói” chuỗi bằng dấu “/”

3. Sử dụng hàm htmlspecialchars(), mysql_escape_string() … để mã hoá kí tự đặc biệt trong câu truy vấn

4. Ép kiểu:
– Ta biết id của một đối tượng (user, category, box, product …) luôn là kiểu số nguyên, vì vậy ta dùng:

Quote:
$id = (int)$_POST[‘id’];
hoặc
$id = (int)$_GET[‘id’];
Giải thích về vá lỗi :
3 cách đầu: Nếu  nhập vào abc’ đi , thì nó sẽ hiểu là một chuỗi chứ không phải là abc rồi dấu riêng
Cách thứ 4: là nếu nhập chuỗi thì nó ép thành số tương ứng, mà số thì . . .
Bài viết của Jutoms – Pim
  1. Chưa có phản hồi.
  1. No trackbacks yet.

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: