Iriton's log
[Dreamhack] Lv.1 csrf - 1 본문
/admin/notice_flag에서 userid 값이 admin이 아니면 Access Denied 2를 띄우며 리턴되지만
admin이라면 memo_text에 플래그 값을 추가한다.
이 memo_text는 어디에 쓰일까?
전역 변수 memo_text는 메모 페이지에 들어갈 때 파라미터값을 전달 받아서 html에 작성하고 그 값을 띄운다.
즉, /admin/notice_flag 에 admin으로 접근하면 된다.
flag 페이지에서 값을 입력 받고 check_csrf 함수를 호출한다.
해당 함수에서는 csrf 인지 판별하기 위해 /vuln를 거쳐서 온다.
/vuln에서는 (사진에선 안보이지만) frame, script, on을 필터링 한다.
sscript 와 같이 문자 사이에 문자열을 넣어도 되는데 이번엔 img src가 URL 처리를 한다는 것을 이용할 것이다.
<img src="/admin/notice_flag?userid=admin">
코드를 넣어주면 필터에 걸리지도 않고,
admin 아이디로 notice_flag에 접근하게 되어 메모 페이지에 가면 flag 값을 얻을 수 있다.
'WebHacking > WarGame' 카테고리의 다른 글
[webhacking.kr] old-44 : command injection (1) | 2023.11.21 |
---|---|
[Dreamhack] Lv.1 command-injection-chatgpt (0) | 2023.11.15 |
[Webhacking.kr] Challenge 23 (0) | 2023.11.14 |
[Dreamhack] Lv.1 csrf-2 (0) | 2023.11.13 |
[Dreamhack] Lv.1 XSS Filtering Bypass (0) | 2023.11.13 |
Comments