Iriton's log

[Dreamhack] Lv.1 csrf - 1 본문

WebHacking/WarGame

[Dreamhack] Lv.1 csrf - 1

Iriton 2023. 11. 14. 00:57

/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