TigerDemon

[5주차] Dreamhack XSS-2 본문

2023-SWLUG/CTF 문제 풀이

[5주차] Dreamhack XSS-2

호랑2D 2023. 11. 8. 13:12

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

 

xss-2

여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. 문제 수정 내역

dreamhack.io

 

위 링크에 들어가면 전에 풀었던 문제와 비슷하게 뜬다.

 

문제에서 제공하는 소스 코드를 확인해보았다.

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

위 코드 부분이 중요한데 여기서 vuln에서 파라미터를 반환하지 않고 render_template를 사용하고 있는 것이다. 그래서 script 태크를 사용하지 못하고 다른 방법으로 우회해야 한다.

우회 기법으로 <svg onload=location.href="/memo?memo="+document.cookie> 를 입력해준다.

이때 SVG 태그는 html의 문법 중 하나로 벡터 기반 그래픽 XML 형식으로 정의하는 것을 의미하는데 이를 통해 우회할 수 있다. 따라서 svg 태크를 이용해 관리자의 쿠키 값을 memo 페이지로 넘긴다.

위에처럼 입력을 했더니 이렇게 FLAG 값이 나왔다.

 

<참고 자료>

https://blog.naver.com/security-705/223107396808

 

xss-2

#드림핵 #xss_2 #보안 #IT [문제] 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. ...

blog.naver.com

 

'2023-SWLUG > CTF 문제 풀이' 카테고리의 다른 글

[6주차] Dreamhack csrf-1  (0) 2023.11.15
[6주차] Dreamhack XSS Filtering Bypass  (0) 2023.11.15
[5주차] XSS-Game level-5  (0) 2023.11.08
[5주차] Dreamhack XSS-1  (0) 2023.11.08
[5주차] Dreamhack DOM XSS  (0) 2023.11.08