安全小课堂第四期 (202101) - 文件上传漏洞

1. 文件上传漏洞有什么危害

比如你开发一款 OA 办公系统,员工上传照片作为自己的头像,但是你这个上传是存在漏洞的,那我就可以上传一点别的东西。如果我上传一个 JSP 文件或者一个 PHP 文件,如果我又知道文件存放的地址,那么我一访问我上传的文件,它是不是就会被解析执行?如果我文件代码是病毒或者木马呢?是不是病毒、木马代码就会被执行?这就是危害!

2. 文件上传漏洞原理

主要还是看程序员的代码是怎么写的,比如只对上传的文件做简单的扩展名校验,那么这必定存在文件上传漏洞!存不存在漏洞,关键看代码怎么写!

3. 文件上传漏洞场景

1:上传 ISSUES.txt 文件到指定目录下
安全小课堂第四期 (202101) - 文件上传漏洞

2:利用 burpsuite 工具拦截到上传请求信息并修改文件名为../test.txt,放开上传文件请求
安全小课堂第四期 (202101) - 文件上传漏洞

3:文件上传成功
安全小课堂第四期 (202101) - 文件上传漏洞

4:test.txt 文件出现在指定目录上一层
安全小课堂第四期 (202101) - 文件上传漏洞

4. 文件上传漏洞修复方案

(1)文件类型检查,判断文件类型,强烈推荐白名单方式;

(2)将文件上传目录直接设置为不可执行,对于Linux而言,撤销其目录的'x'权限,杜绝脚本执行的可能性;

(3)文件名加密传输,代码中对上传请求进行解密验证;