IV.1. Khái niệm
SSI là đoạn mã được nhúng vào trong trang Web để yêu cầu trình chủ cung cấp
thông tin ở một điểm nào đó trong trang. Ví dụ 10.IV.1-1:
Chương 10: Một số kĩ thuật tấn công khác
<!--#include file="test.asp"-->
Dòng lệnh trên nhúng nội dung file “test.asp” vào trong trang Web.
Tuy nhiên, SSI không phải được hỗ trợ trong hầu hết các trình chủ, Apache và IIS
là 2 trình chủ hỗ trợ SSI. Trang Web có sử dụng SSI thường được lưu dưới dạng
.shtml hoặc .stm (là phần mở rộng của .html hay .htm) để báo hiệu cho trình chủ biết trang này có sử dụng SSI để tiết kiệm thời gian xử lí cho trình chủ (không mất thời gian tìm kiếm).
Quá trình thực hiện xửlí một trang Web yêu cầu:
Nếu không có bất kì chỉ thị nào khác, trình chủ chỉ gửi nội dung trang Web cho trình duyệt nhưng với một SSI, thì công việc tuần tự theo những bước như sau: • Trình chủ nhận dữ liệu và phân tích dữ liệu (tìm kiếm và phân loại những câu
lệnh đặc biệt) để chỉ thị thực hiện
• Dưa trên những câu lệnh mà trình chủ tìm thấy, trình chủ thực thi những câu lệnh đó để trả kết quả cho trình duyệt.
• Trả kết quả về cho trình duyệt
Có 3 khảnăng thực hiện:
• Nhận thông tin từ một file và chèn vào trong trang • Gán giá trị cho một số biến
• Gọi chương trình CGI
Chương 10: Một số kĩ thuật tấn công khác
IV.2. Cách tấn công
Hacker lợi dụng những ô nhập để chèn thêm vào đó nội dung một câu lệnh SSI. Ví dụ 10.IV.2-1:
<!--#jdbc select="SELECT * FROM User" name="result" driver="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost:3306/project" -->
Thiết lập câu lệnh Select
<!--#jdbc name="result" next="true" -->
Câu lệnh này di chuyển con trỏ đến dòng đầu tiên trong tập tin.
<!--#jdbc name="result" column="1" -->
Hiển thị nội dung dòng đầu tiên.
IV.3. Biện pháp phòng chống
Với người quản trị, cấu hình lại trình chủ sao cho trình chủ không hỗ trợ SSI. Với người lập trình, kiểm tra kĩ nội dung dữ liệu gửi từ người dùng. Loại bỏ những kí tự như < > # -- !…Tuy nhiên điều này nên được thực hiện tại trình chủ, không nên kiểm tra tính đúng đắn của dữ liệu bằng ngôn ngữ phía trình khách, vì khả năng thay đổi nội dung của trang Web.
Chương 11: Tổng kết quá trình tấn công của Hacker
Chương 11
TỔNG KẾT QUÁ TRÌNH TẤN CÔNG CỦA HACKER
Nội dung: