[TryHackMe] Server Side Request Forgery Lab

코준·2025년 6월 10일

TryHackMe

목록 보기
13/32

SSRF 시나리오로 문제를 풀어보자. Acme IT Support 웹사이트에서 새로운 엔드포인트가 발견됐고, 추가된 기능을 살펴보자.


/private에는 IP주소로 컨텐츠를 볼 수 없다는 메세지를 표시하고
/customers/new-account-page에 고객의 아바타를 설정할 수 있는 기능을 추가했다고 한다.

고객 계정을 만들어서 업데이트를 시도해보라고 한다.

계정을 만들고 아바타를 설정할 수 있는 새 엔드포인트의 소스를 보면 URI 스키마로 아바타가 표시되고

업데이트를 한 상태가 되면 base64로 인코딩돼있다.

아바타의 value를 private으로 바꾸고 변경하니 URL cannot start with private이라는 메세지가 나온다.

디렉토리 순회기법으로 x/../private을 넣으면 어떻게 될까 ?

서버가 /private으로 리퀘스트를 받을 수 없으니 ../으로 리퀘스트를 /private으로 변환하도록 상위 디렉토리로 이동시킨 것이다.

변경된 화면에서는 /private 디렉토리의 내용이 base64로 인코딩돼있다.
디코딩하면 챌린지의 답이 된다.

profile
Hi !

0개의 댓글