문제 설명
사용자의 정보를 조회하는 API 서버입니다.
Path Traversal 취약점을 이용해 /api/flag에 있는 플래그를 획득하세요!
문제 코드에 있는 /get_info 코드를 보고 userid 입력란에 입력한 값은 /api/user/{userid}로 나오는 것을 알 수 있다.
flag가 위치하는 경로로 접근하려면 userid 칸에 ../flag를 입력해야한다.
그래서 userid칸에 ../flag를 입력했는데 정보가 뜨지 않는 것을 확인할 수 있었다.
이를 해결하기 위해 버프 스위트 내부에서 위 서버를 다시 열고 ../flag를 입력해보았다.
버프 스위크에서 서버 여는 법은
여기서 open browser해주면 된다.
request 창을 보면 userid가 undefined되어 있는 것을 확인할 수 있다. 이것을 고쳐주기 위해 request창에서 마우스 오른쪽 버튼을 눌러서 send to repeater 해주고 들어간다.
undefined였던 userid 페이로드 값을 ../flag코드로 바꿔준다.
그리고 send 처리해주면 <pre>구문 안에 DH로 써진 flag가 도출된 것을 확인할 수 있다.
'웹 보안' 카테고리의 다른 글
5/7 최신동향 (정형,비정형 데이터 가명처리) (0) | 2024.05.13 |
---|---|
Dreamhack 워게임 (session) (0) | 2024.04.02 |
Dreamhack (web-ssrf) (0) | 2024.03.28 |
Dreamhack 워게임(file-download-1) (0) | 2024.03.26 |
Dreamhack 워게임(image-storage) (0) | 2024.03.26 |