II. Thao tác trong biếnấn form
III. Thao tác trên cookie
Chương 4: Thao tác trên tham số truyền
CHƯƠNG 4:THAO TÁC TRÊN THAM SỐ TRUYỀN
DE
Thao tác trên tham số truyền là kĩ thuật thay đổi thông tin quan trọng trên cookie, URL hay biến ẩn của form. Kĩ thuật Cross-Site Scripting, SessionID, SQL Injection, Buffer Overflow…cũng cần dùng đến các tham số này để hoàn thiện các bước tấn công của hacker. Có thể nói các tham số truyền là đầu mối cho mọi hoạt động của hacker trong
quá trình tấn công ứng dụng. Vì thế đây là nội dung chương đầu tiênđượcđềcập trong
phần thứhai, mục đích cũng là để hỗ trợtốt hơn phần trình bày các chương kế tiếp.
I. THAO TÁC TRÊN URL
I.1. Khái niệm:
Khi nhập một form HTML thì kết quả sẽ được gửi đi theo hai cách: GET hay
POST. Nếu dùng GET, thì tất cả các tên biến và giá trị của nó sẽ xuất hiện trong chuỗi URL.
Ví dụ 4.I.1-1: Có một trang web ứng dụng cho phép thành viên đãđược thay đổi
mật khẩu.
http://www.nganhang.com/example?user=thang&newpass=123
Với:
+ username là tên người cần thay đổi mật khẩu. + newpass là mật khẩu mới cho username Tuy nhiên, bằng cách thay đổi tham số như sau:
Chương 4: Thao tác trên tham số truyền
http://www.nganhang.com/example?user=admin&newpass=111111
Hacker đã có thể thay đổi mật khẩu của admin bằng một mật khẩu mới bất kì,
trong ví dụ này là ‘1111111’
I.2. Một sốbiện pháp khắc phục
Để chống lại kiểu thay đổi nội dung một chuỗi URL, ứng dụng có thể áp dụng biện pháp sau:
• Ứng dụng sử dụng cơ chế bảng băm (hash table). Sau khi người dùng chứng
thực thành công với một username , ứng dụng sẽ sinh ra một khoá tương ứng.
Khoá này sẽ được lưu trên server cùng với biến username trong đối tượng
bảng băm. Mỗi khi người dùng kết nối đến ứng dụng, khoá và username này
sẽ được gửi đi và được so sánh với khoá và username trong bảng băm. Nếu
tương ứng với bản ghi trong dữ liệu thì hợp lệ. Còn nếu không thì server biết
rằng người dùng đã thayđổi URL.
• Ngoài ra, với những thông tin có giá trị, cần mã hoá thông tin này trước khi
cho hiển thị trên trình duyệt để tránh hacker có thể sửa đổi tùy ý.