Lab: URL-based access control can be circumvented
Last updated
Last updated
Trang web này có bảng điều khiển quản trị chưa xác thực tại /admin
, nhưng hệ thống front-end đã được cấu hình để chặn truy cập bên ngoài vào đường dẫn đó. Tuy nhiên, ứng dụng back-end được xây dựng trên một framework hỗ trợ X-Original-URL
header
Mục tiêu: Truy cập bảng quản trị và xóa người dùng carlos
.
Việc truy cập trực tiếp vào /admin là không thành công
Gửi request đến Repeater. Thay đổi URL trong yêu cầu thành / và thêm HTTP header X-Original-URL: abc
.
Quan sát thấy ứng dụng trả về phản hồi "Not Found". Điều này cho biết hệ thống back-end đang xử lý URL từ X-Original-URL
header.
Thay đổi X-Original-URL
header thành /admin
Để xóa carlos
, hãy thêm ?username=carlos
vào chuỗi truy vấn thực và thay đổi X-Original-URL
đường dẫn thành /admin/delete