Portswigger-Insecure direct object references

problem link

풀이

유저 채팅 로그를 서버 파일 시스템에 저장하고 이를 URL을 통해 접근한다. carlos의 비밀번호를 찾고 로그인하라.

채팅 기능이 있다. View transcript를 누르면 로그 파일을 다운로드할 수 있다.

버튼을 누르면 위와 같은 POST를 날린다.

그리고 이를 받은 서버는 POST 내용을 이용하여 로그 파일을 생성하고, 이를 다운로드하도록 리다이렉트 한다. 맨 처음 로그를 신청했을 때 2.txt였고, 다시 요청했을 때 3.txt였으니 1.txt에 원하는 데이터가 있을 것 같다.

/download-transcript/1.txt 경로로 이동하면 남의 로그에 접근할 수 있다. 비밀번호는 im33vzehzu29vr8pjdop이다.

이를 이용해 로그인하면 성공이다. 이 취약점은 보호해야 하는 리소스에 직접 접근할 수 있기에 발생했다.


tags: writeup, access control vulnerability, idor, wstg-athz-04, wstg-athz-02, wstg-athz-03, web hacking