해당 실습은 Dreamhack에서 제공되는 가상환경에서 진행되었습니다.
사전 동의 없는 불법 침입, 수색, 분석 등의 행위는 불법이니 꼭 명심하시길 바랍니다.
앞에서는 로드맵에서 기본저인 힌트를 주고 풀이까지 존재하기에 어렵지 않게 넘어갈 수 있었다.
2번 문제는 1번 문제에서 약간의 응용을 요구하는 문제인 것 같다.
Step 1)
Stage 4의 '혼자실습'에 설명이 포함되어 있는 문제이다.
Step 2)
접속 정보를 받아 접속해보면 확인할 수 있는 각 페이지들은 다음과 같다.
다운로드한 문제 파일을 열어 소스코드와 같이 확인해 보면 동작한 결과를 이해할 수 있다.
(이번 문제에서는 vuln 페이지의 동작 결과가 다름)
① 메인 페이지에 해당하는 코드
② vuln(xss) 페이지에 해당하는 코드. 앞선 1번 문제와는 다르게 param 인자를 가져와 화면에 보여주는 것이 아닌 메인 페이지처럼 vuln.html 페이지를 보여준다.
③ flag 페이지에 해당하는 코드. 1번 문제와 동일하다.
④ memo 페이지에 해당하는 코드. 1번 문제와 동일하다.
Step 3)
1번 문제는 풀이에 대한 설명도 있고 vuln(xss) 페이지에서 이미 스크립트 구문이 동작한다는 사실을 알려줘서 쉽게 풀이를 할 수 있었다. 1번 문제와 차이점이 vuln(xss) 페이지의 스크립트 동작 여부만 다르다는 것을 알았다면 풀이 방법이 보인다.
vuln(xss) 페이지에서 <script>alert(1)</script> 구문 외에 우회하여 동작하는 스크립트가 있는지 찾아보자.
(xss cheat sheet를 참고하면 다양한 태그에서 동작시킬 수 있는 스크립트 구문을 확인할 수 있다.)
Step 4)
vuln(xss) 페이지에서 스크립트가 동작하도록 우회 구문을 찾았으니 이를 사용하여 1번 문제풀이와 같이 삽입한다.
Step 5)
memo 페이지로 이동하면 쿠키 값이 출력되어 있는 것을 볼 수 있다. (Request Bin은 생략)
'보안 > 웹해킹' 카테고리의 다른 글
[Dreamhack] 1단계 - xss-1 (0) | 2023.05.22 |
---|---|
[Dreamhack] 1단계 - session-basic (0) | 2023.05.16 |
[Dreamhack] 1단계 - devtools-sources (0) | 2023.05.16 |
[Dreamhack] 1단계 - cookie (0) | 2023.05.08 |