【文件上传漏洞】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文件上传漏洞
- 定义
- 客户端
- js检测
- 服务器
- 检测后缀
- 黑名单
- 白名单
- 检测内容
- 其他
定义
文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。
这种攻击方式是最为直接和有效的,“文件上传” 本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。
常见的攻击文件为webshell木马程序,这种程序是.php 格式,可以进行操作系统控制
客户端
js检测
检测上传文件的格式,不经过后段服务器
绕过方法:
(1)打开前端代码,将事件的检测请求代码删除
(2)将文件后缀名改的符合规范,然后上传,然后进行抓包,将我们上传的文件的后缀名改回php,然后再发送给服务器
服务器
检测后缀
黑名单
绕过方法:
白名单
绕过方法:
(1)MIME多媒体类型:可以设置支持什么后缀名为:比如jpg/jpeg/png
抓包,将包中的content-Type类型改为上述对应的MIME类型
(2)getimagesize() 函数
getimagesize() 是php的一个函数,用于获取图像大小及相关信息,成功返回一个数组,失败则返回FALSE 并产生一条E WARNING 级的错误信息
绕过方法:
(1)直接伪造数据的 头部
(2)将木马程序插入到图片中
CMD方法:
copy /b test.png+1.php muma.png
【通过copy /b指令,将创建的1.php木马程序和 test.png合并成一个新的png后缀的木马程序】
(3)使用一些工具生成(2)一样的图片木马文件,比如,edjpgcom程序
检测内容
该处使用的url网络请求的数据。