文件上传漏洞
介绍
文件上传漏洞是发生在有上传功能的应用中,如果应用程序对用户的上传文件没有控制或者存在缺陷,攻击者可以利用应用上传功能存在的缺陷,上传木马病毒等有危害的文件到服务器上面,控制服务器。
文件上传漏洞产生的主要原因是:应用中存在上传功能,但是上传的文件没有经过严格的合法性检验或者检验函数存在缺陷,导致可以上传木马文件到服务器。文件上传漏洞危害极大因为可以直接上传恶意代码到服务器上,可能会造成服务器的网页篡改、网站被挂马、服务器被远程控制、被安装后门等严重的后果。
目录
webshell的编写
webshell的含义
webshell通常被称为匿名用户(入侵者)通过网站端口对网站服务器的某种程度上操作的权限。它大多以动态脚本的形式存在,因此也有人称之为网站的后门工具。
webshell的编写
在vscode创建一个.php文件,编写木马程序。下面是一个简单的木马
1 | system($_GET[a]); @ |
这段代码接受一个名为a的GET参数,并使用@system函数执行该参数指定的命令。
upload-labs靶场闯关
upload-labs靶场的介绍
介绍:一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种 上传漏洞 的靶场。
第1关
1.下载upload-labs-master压缩包,将其解压到小皮的根目录下。
2.开启小皮的apache,关闭小皮的mysql
3.在主机vscode中编写木马程序命名为1.php,把1.php复制到虚拟机的桌面
1 |
|
4.在小皮,打开网站,进入第一关,F12关掉js,然后上传1.php
4.右键复制图片链接到另一个网页,在网址后面加上?a=whoami 或
?a=systeminfo 成功截图如下
第2关
1.查看代码,发现上传的文件必须是jpeg,png,gif类型
2.上传1.php后,用Yakit抓包,改为手动劫持,把16行改为image/jpeg,在点击自动放行。
3.右键复制图片链接到另一个网页,在网址后面加上?a=whoami 或
?a=systeminfo
第3关
1.查看代码,发现后缀 .asp .aspx .php .jsp 全被禁了
2.把木马1.php重命名为1.php5,在虚拟机浏览器访问192.168.2.197。
3.之后的步骤和第一关一样。
第4关
1.在vscode创建并编写 .htaccess文件,.htaccess文件是Apache服务器的一个配置文件,它允许网站管理员在服务器配置文件(通常是httpd.conf)之外,为特定目录及其子目录设置独立的配置指令
1 | <FilesMatch "3.jpg"> |
2.把 .htaccess 移到虚拟机桌面
3.再把木马重命名为3.jpg
4.先上传.htaccess文件,再上传3.jpg
5.右键复制图片链接到另一个网页,在网址后面加上?a=dir 成功截图如下
第18关
1.查看代码,第18行服务器删除当前目录文件。原理是这样的:服务器删文件。
向服务器不断发送上传木马请求的包,不断发送访问木马的包,服务器删不过来,个别木马被上传。若服务器性能好,则木马不能上传成功。
2.重新编写木马程序
1 |
|
3.先上传一张正常的图片10.jpg,右键复制图像链接。
4.打开Burp,把复制的图像链接后面的2024011xxxx.jpg改为2.php,然后粘贴到Burp的内置浏览器,再抓包
5.把抓到的包发送到intruder,得到访问木马的包。
6.接下来,去抓上传木马的包,选择2.php,点击下图箭头处的上传,把抓到的上传木马的包发送到intruder
7. 3和4都改成无限发包,3是上传,4是访问。
![image.png](https://raw.githubusercontent.com/Xiaotang23/tu/main/img/1704891390603-d307cab2-7d08-4aa6-9430-2678af922b0f.png)
8. 3和4的线程都改成50
![image.png](https://raw.githubusercontent.com/Xiaotang23/tu/main/img/1704891573291-56a2dfc0-500d-40fe-b6fc-bebf4988967f.png)
9.点击Burp的开始攻击。结果如下
![Image.png](https://raw.githubusercontent.com/Xiaotang23/tu/main/img/1704981839385-21f5a2ff-1095-4412-93b6-dc5715616b2d.png)
10.复制Request中的选中的部分,粘贴到upload/的后面并访问。
![Image.png](https://raw.githubusercontent.com/Xiaotang23/tu/main/img/1704981891067-8a5b9687-887f-4f1a-826a-337cfbc4a084.png)
蚁剑工具的使用
蚁剑工具的介绍
蚁剑(AntSword)是一款被设计用于网络攻击的远程控制工具,它能够使得攻击者获取受害计算机的远程控制权限。蚁剑通过在受害者计算机上植入恶意软件,创建一个“后门”,使攻击者可以未经授权地访问受害者系统,进行数据窃取、监控、操纵等一系列非法操作。
蚁剑工具的使用
1.重新编写木马2.php
1 |
|
2.kali自带蚁剑工具,双击AntSword
3.右击空白处,添加数据。
4.按下图填写URL地址和连接密码。点击测试链接。
5.连接靶机成功,可以对靶机上的文件进行操作。