모의해킹

파일 업로드 취약점 실습(2)

박연준 2023. 7. 1. 23:21

파일 업로드 취약점 실습(2)

다음으로 oyesmall 게시판 페이지에서 또 다른 파일 업로드 취약점을 테스트 해보기 위해 먼저 cmd.asp 파일을 복사해 cmd.txt 파일로 변경한다.

 

cmd.txt 파일을 업로드 하기 전 Burp Suite 도구를 이용해 Submit 버튼을 누르면 전송되는 패킷을 잡아보았다. Burp Suite 도구를 이용해 패킷을 잡아보면 다음과 같이 filename 값에 cmd.txt 라고 하는 파일로 전송되는 것을 확인할 수 있다.

 

cmd.txt 부분을 cmd.asp 라고 변경해 준후 Forward 버튼을 누른다.

 

이렇게 프록시 도구인 Burp Suite 도구를 이용해 요청에서 중간에 변조를 통해서 파일 업로드 취약점이 발생하는 것을 확인하였다.

 

 

이번에는 Burp Suite 도구를 이용해 응답 쪽을 변조하는 파일 업로드 취약점을 실습해볼 것이다. 다음과 같이 asp파일을 올리고 패킷을 잡아보았다.

 

패킷을 잡아본 결과 첨부 가능한 확장자를 올리라는 알림창이 나오게 된다. 이 뜻은 패킷이 가기 전에 클라이언트 쪽에서 검사하는 코드가 있기 때문에 나오는 것이므로 로그가 잡히지 않는 것이다.

 

확인을 누른 후 게시판 오른 쪽 클릭 후 페이지 소스 보기를 누른 후에 소스 코드를 살펴본 결과 다음처럼 확장자를 검사하는 코드가 있는 것을 확인할 수 있다.

 

 

다음으로 소스 코드 페이지를 닫은 후 새로고침을 Burp Suite를 이용해 잡아보면 shop_board_write.asp 파일을 GET방식으로 조회한다는 것을 알 수 있다.

 

Forward 버튼을 누르면 다음과 같이 파일 업로드 확장자를 검사하는 코드를 확인할 수 있다.

 

 

asp 파일을 업로드 하기 위해 다음과 같이 .asp 파일이 참이 되는 코드를 입력해준다.

 

 

Forward 버튼을 누르면 새로고침이 완료되는데 버튼을 누른 후 페이지 소스 코드를 보면 다음과 같이 asp 파일 확장자도 참이되는 코드로 변경된 것을 확인할 수 있다.

 

따라서 다음과 같이 asp 파일을 올려보았다.

 

다음과 같이 서버에서 확장자 검사를 하지 않았기 때문에 asp 파일이 업로드 되었다.

'모의해킹' 카테고리의 다른 글

파일 다운로드 취약점 실습(1)  (0) 2023.07.01
파일 업로드 취약점 실습(3)  (0) 2023.07.01
파일 업로드 취약점 실습(1)  (0) 2023.07.01
SQL Injection 실습(1)  (0) 2023.07.01
XSS 실습  (0) 2023.06.26