### 简要描述:
大汉版通某系统存在多处任意文件上传/删除漏洞
### 详细说明:
一、漏洞代码
文件上传:
漏洞一:/xxgk/jcms_files/jcms1/web1/site/zfxxgk/ysqgk/attachupload.jsp
漏洞二:/xxgk/jcms_files/jcms1/web1/site/zfxxgk/ysqgk/apply_attach_upload.jsp
文件删除:
上述两个文件同时存在任意文件删除漏洞
先来看任意文件删除的代码:
```
if("D".equals(strBillStatus)) {
delFileName = filepath.substring(filepath.lastIndexOf("/")+1,filepath.length());
// 删除文件
String strFilePath = strDictionary + "/"+delFileName;
File file = new File(strFilePath);
if(file.exists() && file.isFile()) {
file.delete();
}
```
可以看出来,没有经过任何的过滤便进行了文件的删除操作,因而造成了任意文件删除漏洞。
再来看任意文件上传代码:
```
if("S".equals(strBillStatus)) {
if (bResult) {
//上传文件名
strName = upload.getFileName();
//文件大小
long nSize = upload.getFileSize();
//文件名
String strOldName = strDictionary + "/" + strName;
//文件类型
int nPot = strOldName.indexOf(".", strOldName.length() - 6);
String strFileType = strOldName.substring(nPot + 1, strOldName.length());
File file1 = new File( strOldName );
//得到系统时间
java.util.Date current = new java.util.Date();
java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyMMddHHmmssSSS");
java.text.SimpleDateFormat formatter1 = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//新文件名=系统时间+原文件类型
strNewName = formatter.format(current)+"."+strFileType;
File newFile = new File(strDictionary + "/" + strNewName);
//改文件名
file1.renameTo(newFile);
filepath = sessionPath + "/" + strNewName;
filename = strName;
} //end if
}
```
这里上传的类File 对上传文件的后缀有一定的限制,但在Window下同样可以实现GETSHELL
二、漏洞利用
首先来看任意文件删除
我们先上传任意的jpg文件,来测试删除漏洞,如下图
[<img src="https://images.seebug.org/upload/201405/1215583072f449f5cc9a8e99aa8fed45529d7bbf.jpg" alt="1.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/1215583072f449f5cc9a8e99aa8fed45529d7bbf.jpg)
点击删除后,抓包修改文件路径即可删除任意文件,考虑到删除任意文件有很大的危害性,这里不具体测试,如下图
[<img src="https://images.seebug.org/upload/201405/1216010028c93249f1338cd1a746462af9a31c98.jpg" alt="2.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/1216010028c93249f1338cd1a746462af9a31c98.jpg)
再来测试任意文件上传:
首先上传一个正常的帮马图片,点击上传 抓包修改,如图
[<img src="https://images.seebug.org/upload/201405/1216032182f5e8d8e0d1f4fae5c022177c8b2241.jpg" alt="3.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/1216032182f5e8d8e0d1f4fae5c022177c8b2241.jpg)
我们知道"."在Windows下会被自动忽略,于是生成.jsp文件,如图
[<img src="https://images.seebug.org/upload/201405/12160459e0f69ee85aff492803c3f35671160463.jpg" alt="4.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/12160459e0f69ee85aff492803c3f35671160463.jpg)
### 漏洞证明:
三、漏洞证明
[<img src="https://images.seebug.org/upload/201405/12160459e0f69ee85aff492803c3f35671160463.jpg" alt="4.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/12160459e0f69ee85aff492803c3f35671160463.jpg)
暂无评论