Đây là một lỗi mình vô tình phát hiện hồi tháng 09/2016, chưa có thời gian để đi sâu hơn xem nó có thể khai thác để tấn công đến mức nào hay chỉ là Self-XSS, tuy nhiên cũng muốn chia sẻ cách mình thực hiện để tìm ra lỗi này.
Như các trang thương mại điện tử lớn hiện nay, Lazada có áp dụng các biện pháp để bảo mật và loại bỏ các input đầu vào có thể khai thác XSS, mình đã thử cách đơn giản nhất là test khung tìm kiếm.
1 |
http://www.lazada.vn/catalog/?q=test |
1 |
http://www.lazada.vn/catalog/?q=<script>alert(document.cookie)</script> |
Kết quả hiển thị không có gì bất thường:
Có thể thấy được chuỗi XSS vừa nhập đã được filter và encode thành:
1 |
<script>alert(document.cookie)</script> |
Vậy là không khai thác được ở đây, mình quay lại trang chủ http://www.lazada.vn/ và tiến hành test thử lại, nhưng lần này mình không để nguyên chuỗi XSS như ban đầu mà chủ động chuyển nó sang dạng URL Encoded như bên dưới:
1 |
%3Cscript%3Ealert%28document.cookie%29%3C%2Fscript%3E |
Kết quả cũng không có gì, có thể Lazada cũng đã filter những chuỗi đã Encoded. Rút kinh nghiệm từ một trang trước đó đã test, mình đi vào chi tiết các sản phẩm trên web.
Link mình đi đến: http://www.lazada.vn/samsung-galaxy-a7-2016-16gb-vang-hang-phan-phoi-chinh-thuc-2161366.html
Nhập lại chuỗi XSS đã chuyển mã vào khung tìm kiếm.
1 |
%3Cscript%3Ealert%28document.cookie%29%3C%2Fscript%3E |
Kết quả:
Như có nói ở trên, lỗi này cần được xem xét nhiều hơn nếu muốn tận dụng để tấn công, tuy nhiên có thể thấy được là đã có thể khai thác và thực thi đoạn JavaScript để hiển thị thông tin cookies trên trình duyệt.
Recent Comments