도카이트

[DVWA] File Upload (Low) 본문

Web/DVWA

[DVWA] File Upload (Low)

dodoh4t 2022. 5. 19. 20:07
728x90
반응형

File Upload

웹 서비스 첨부 파일, 환경 설정 미흡을 이용하여 악의적인 스크립트가 포함된 파일을

업로드 한 후에 웹 서버에 침투를 하는 공격

 

 

페이지 화면

[DVWA - File Upload)

- 파일을 업로드할 수 있는 화면이 보인다!

- 파일을 선택 후 Upload 버튼을 클릭하면 웹 서버에 파일이 업로드되는 듯 하다.

 

더 자세한 내용은 소스코드를 일단 확인하고 살펴보도록 하자 !-!

 

 

소스코드

[File Upload 페이지 - 소스코드]

- 업로드 된 파일이 $target_path 인 /hacable/uploads/ 경로로 업로드 되는듯 하다!

- 업로드 성공 시 $target_path에 성공적으로 업로드되었다는 문장을 출력한다고 한다!

 

대략 어떤 경로에 업로드 된 파일이 위치하게 되는지 살펴보았으니.. 파일 업로드 취약점을 이용하여 공격을

시도하기 위해서 간단히 php를 이용한 웹 쉘을 제작하여 실습을 진행해보도록 하자 :)

 

 

간단한 웹 쉘 제작 후 파일 업로드

[PHP Webshell - Notepad++]

- php로 간단히 한 줄 웹 쉘을 제작해보았다! (웹쉘 코드에 관한 정보는 구글링 시 많이 나온다!)

- system 함수를 사용하여 GET Method로 cmd의 파라미터 값을 받아온다.

- /webshell.php?cmd=[’실행하고자 하는 명령어’] 입력 시 공격 대상 서버에서 해당 명령어를 실행할 수 있다!

- 웹 쉘 작성 후 저장 시 PC에 설치되어 있는 백신에 의해서 강제 삭제 당하는 경우가 있다..

- 이와 같은 경우엔 실시간 감시를 잠시 꺼주거나, 우리가 작성한 파일을 예외처리 해주도록 하자!

 

 

웹 쉘 업로드

[Webshell Upload]

- 작성한 webshell.php를 업로드한다!

- 성공적으로 업로드되었음을 확인할 수 있으며, 업로드 경로가 함께 출력된다.

 

 

웹 쉘 정상 동작 확인

[File Upload 취약점을 이용한 Webshell 실행]

- cmd 의 파라미터 값으로 pwd 명령을 입력하여 페이지 탐색을 시도하였다.

- 정상적으로 pwd 명령이 $target_path 경로에서 실행됨을 확인할 수 있다!

728x90

'Web > DVWA' 카테고리의 다른 글

[DVWA] SQL Injection (Low)  (0) 2022.05.19
[DVWA] Insecure CAPTCHA (Low)  (0) 2022.05.19
[DVWA] File Inclusion (Low)  (0) 2022.05.18
[DVWA] CSRF (Low)  (0) 2022.05.18
[DVWA] Command Injection (Low)  (0) 2022.05.16
Comments