파일 업로드 취약점 (3)

밍기적·2022년 11월 10일
0

웹해킹

목록 보기
3/35
post-thumbnail

DVWA에 접속하여 Security 레벨을 High로 설정합니다.

이전과 동일하게 파일 업로드 탭에서 php파일을 업로드 후 버프스위트에서 요청 메시지를 확인합니다.


마찬가지로 index.php가 전송되면서 파일의 형태를 작성하여 요청을 보내고 있습니다.

이제 웹사이트에서 해당하는 소스코드를 보겠습니다.
만약 파일을 업로드 할 때 .(dot)을 기준으로 파일확장자를 upload_ext 변수에 저장한 뒤 해당 변수를 조건문으로 비교합니다.

비교했을 시 이미지 파일 확장자 명이 아니라면 업로드 실패 문자를 나타내게 됩니다. 우리는 업로드에 성공했을 때 나오는 문자를 원하므로 파일 확장자 명의 변화를 주어야 합니다.

해당 서버에서는 .(dot)을 기준으로 파일확장자 명을 획득하므로 .(dot)을 추가함으로써 해당 기능을 우회할 수 있습니다.

파일명을 index3.php.jpg로 변환한 다음 전송해봅니다.

성공적으로 업로드 되었다는 것을 확인할 수 있습니다.

마지막으로 터미널에서 접속해본다면 성공적으로 동작하는 것을 확인할 수 있습니다. 해당 서버에서는 파일 확장자 명을 지운 뒤 php파일로서 저장되어서 작동할 수 있게 됩니다.

0개의 댓글