본문 바로가기
Portswigger/XSS

Portswigger - DOM XSS in document.write sink using source location.search solution

by jh117jh 2023. 8. 24.
728x90

검색 기능에 DOM based XSS 취약점이 포함되어 있고

document.write와 location.search함수를 사용하고 있다.

 

document.write는 디버그나 텍스트를 화면에 출력할 때 많이 쓰며 웹브라우저에 입력값을 출력해 준다.

location.search는 url의 파라미터를 가져올 때 쓴다.

예를 들어 www.naver.com?search=안녕하세요  의 ?search부분을 가져오는 것이다.

 

사이트에 들어가 관리자모드로 스크립트문을 확인해 보면

검색창에 입력한 값이 img태그에 들어가고 있다. 

 

보고 딱 생각난 게 sql문제 푸는 것과 비슷하게 img태그를 닫아버리고 script문을 추가하면 될 것 같았다.

//는 뒤에 남은 ">를 주석처리하기 위해 넣었다.

"><script> alert(0);</script> // 를 넣어보니 문제가 풀렸다.

728x90