[DreamHack] [web] [Level 1] xss-2 풀이

2024. 12. 27. 13:18Information Security 정보보안/DreamHack

728x90

배울내용 

dreamhack,

web hacking,

개발자도구,

dreamhack 풀이,

dreamhack XSS 문제,

dreamhack web 풀이 ,

XSS Filtering Bypass ,

Cross-Site Scripting,

xss-2

 

 

문제

 

 

 

 

위에 문제도 크게 다를게 없어서 sscript , script, Script 등 대소문자, 문자필터링우회 등 시도해봤지만 이번에는 alert 가작동이 되지않아 코드를 확인해봤다 

 

 

그런데도  코드에는 script 태그를 차단하거나 무해화하는 처리가 없으므로 XSS 공격 가능성이 있었는데도 작동을 안하는걸 봤을때 다음 중 하나일 가능성이 있다

XSS 필터링이 없다면 의심되는 동작 

  1. Selenium에서 URL 실행 실패:
    • Selenium이 XSS 페이로드(예: <script>alert(1)</script>)를 처리할 때 브라우저 에러가 발생하면 False를 반환
    • 이는 필터링처럼 보일 수 있지만, 실제로는 브라우저의 실행 실패
  2. 브라우저 보안 정책:
    • 로컬 서버(http://127.0.0.1:8000)에서 페이지 로드 중 CSP(Content Security Policy)나 브라우저 보안 정책으로 인해 스크립트 실행이 차단

 

 

그래서 이번엔 안해본 img 태그를 넣고 onerror 를 이용해서 script 를 실행하는 방법을 해보자 

 

 

<img src="Sarimus3rdLegPicture.jpg" onerror="alert(document.cookie;)">

 

이런식으로 하면되지만 아까는 alert 에도 어떠한 이유로 안되었기떄문에 이번에는 script 와 alert 없이 써보자 

 

<img src="Sarimus.svg" onerror="location.href='/memo?memo='+document.cookie">

 

위와같이 작성후 아래처럼 써주면 된다 그러면 memo에 다시 확인하면된다 

 

 

 

이러면 성공적으로 플레그를 뛰울수있게 된다 

 

728x90