[웹해킹] xss-2

Woo·2025년 1월 7일

워게임(웹해킹)

목록 보기
5/14

📖 문제

https://dreamhack.io/wargame/challenges/268


📖 분석

https://velog.io/@woo2083/Dreamhack-XSS-1
바로 전에 푼 xss-1문제와 비슷한 문제이다. xss-1처럼 xss 취약점을 이용해 플래그를 획득하는 문제이다.

서버 생성 후 문제 사이트에 들어가보면 4개의 페이지로 구성되어있다.

📗 / 페이지


구성은 이전 xss-1 문제와 같다.

📗 /vuln 페이지


구성은 이전 xss-1 문제와 같다.

📗 /memo 페이지


구성은 이전 xss-1 문제와 같다.

📗 /flag 페이지


구성은 이전 xss-1 문제와 같다.

📘 app.py

@app.route("/vuln")
def vuln():
    return render_template("vuln.html")

이전 xss-1 문제와 차이점은 return값을 html로 전달한다는 것이다.
이러면 xss-1 문제에서 사용한 <script> 태그로 xss를 발생 시키는 방법은 막힌 것으로 확인된다.


📖 풀이

문제를 해결하기 위해선 vuln.html에서 발생하는 XSS 취약점을 통해 쿠키를 탈취해야한다.
document.cookie를 사용하기 위해선 <img src>를 사용해 우회 기법을 사용한다.

<img src="XSS-2">

위의 값을 flag 페이지에 입력을 하면 플래그를 획득할 수 있다.
입력 후 memo 페이지로 돌아가면 플래그 값이 있다.

profile
다덤벼

0개의 댓글