XSS level mẫu giáo xD
Writeup của mình về 1 bài trên tryhackme.com, gồm 6 level
Level 1
Xem qua trang web
Nhập tên vào ô input, tên nhập vào sẽ được hiển thị với câu chào
Source code
Nhập
1
<script>alert("THM")</script>
Và qua được level 1
Level 2
Chuỗi nhập vào sẽ được hiển thị trong 1 ô input
Xem qua source code, ta thấy giá trị nhập vào được chèn vào thuộc tính value của thẻ input
Payload để bypass với dấu “ và > để đóng thẻ input
1
"><script>alert("THM")</script>
Level 3
Lần này đầu vào được cho vào 1 textarea
Source code
Payload tương tự như trên, lần này đóng thẻ textarea rồi chèn cặp thẻ script
1
</textarea><script>alert("THM")</script>
Level 4
Lần này chuỗi nhập vào được hiện thị tương tự Level 1
Check thử source code
Ta thấy có 1 đoạn javascript thực hiện việc lấy phần tử có class name là “name” và thiết lập nội dung cho nó là nội dung người dùng nhập vào
Sử dụng một dấu nháy ( ‘ ) và dấu chấm phẩy để thoát khỏi câu lệnh hiện tại, sau đó đóng luôn thẻ script
1
';</script><script>alert("THM")</script>
Level 5
Chuỗi nhập vào sẽ được hiển thị ngay dưới
Xem qua source code
Chèn thử 1 đoạn script đơn giản
Ta thấy từ “script” đã bị lọc khỏi input
Nhưng thử viết hoa thì không bị filter
Ta có payload
1
<SCRIPT>alert("THM")</SCRIPT>
Level 6
Ta nhập đường dẫn ảnh và ảnh sẽ được hiện thị phía dưới
Xem qua source code
Ta có payload
1
" onerror="alert('THM')"