Wargame/Dreamhack2 [Dreamhack] pathtraversal Path Traversal 취약점을 이용하여 /api/flag에 있는 플래그를 획득하는 문제이다. userid 를 통해서 출력됨. 코드를 보면, /api 루트 일 때 /user/, /flag 를 리턴한다. userid 칸에는 아무 값 입력 시에 undefined가 뜨게 되므로, fiddler를 통해 변조해주도록 하자. userid=../../../../../../../../api 이렇게 경로를 변조해주고 Response 하면, 코드의 내용처럼 출력되었다. 즉, userid를 통해 경로 조작이 가능하다. 문제에서 /api/flag에 플래그가 위치한다고 했으므로, userid = ../../../../../../../../api/flag 해주면 flag를 획득할 수 있다. 2022. 4. 25. [Dreamhack] php-1 php로 작성된 사이트에서 LFI 취약점을 이용해 플래그를 획득하는 문제이다. LFI(Local File Inclusion) 취약점이란? 웹 브라우저를 통해 서버에 파일을 포함시키는 과정이다. 즉, 공격 대상 서버에 위치한 파일을 포함시켜 읽어오는 공격이다. 이 취약점은 인클루드 시, 페이지 경로가 적절히 필터링되지 않거나 디렉토리 변경 명령어들의 삽입을 허용했을 때 일어난다. 대부분 LFI 취약점은 URL을 통해 이뤄지게 된다. flag.php 파일 클릭 시, Permission denied 문구가 뜬다. 이때, url을 보면, http://host1.dreamhack.games:10625/?page=view&file=../uploads/flag.php 로 표시가 된다. 기본적인 LFI 공격은 위와 같.. 2022. 4. 25. 이전 1 다음