0x01 fuxploider介绍
0x01 fuxploider介绍
Fuxploider是一种开源渗透测试工具,可自动检测和利用文件上传表单缺陷的过程。该工具能够检测允许上传的文件类型,并能够检测哪种技术最适合在所需的Web服务器上上传Web Shell
或任何恶意文件。
0x02 fuxploider安装
Python3.6+
git clone https://github.com/almandin/fuxploider.git
cd fuxploider
pip3 install -r requirements.txt
如果您的pip有问题(并且您使用Windows):
python3 -m pip install -r requirements.txt
对于Docker安装
docker build -t almandin/fuxploider .
0x03 fuxploider使用
要获取基本选项和开关的列表,请使用:
python3 fuxploider.py -h
帮助:
Usage: fuxploider.py [-h] [-d postData] [--proxy proxyUrl] [--proxy-creds [credentials]] [-f integer] [--cookies omnomnom] [--uploads-path path] [-t templateName] [-r regex] -u target [--not-regex regex] [--true-regex regex] [-l listOfExtensions | -n n] [-v | -vv | -vvv] [-s] [-y] [-T Threads] [-U useragent | --random-user-agent] [-m] [--input-name image] [--form-action upload.php]
可选参数:
-h, --help 显示这个帮助信息并退出
-d postData, --data postData 通过 POST 方法传输的额外数据 Example: -d "key1=value1&key2=value2"
--proxy proxyUrl 代理信息 Example: --proxy "user:[email protected]:8080"
--proxy-creds [credentials] 在运行时提示代理凭据 Format: 'user:pass'
-f integer, --filesize integer 用于创建和上传文件的文件大小 (in kB).
--cookies omnomnom 用于 HTTP 请求的 Cookie Example: PHPSESSID=aef45aef45afeaef45aef45&JSESSID=AQSEJHQSQSG
--uploads-path path 远程服务器上放置上传文件的路径 Example: '/tmp/uploads/'
-t templateName, --template templateName 用于代码执行检测的恶意有效载荷 默认是使用所有已知的模板 有关模板的完整列表参见 TEMPLATE 部分
-r regex, --regex-override regex 指定用于检测代码执行的正则表达式 覆盖在使用的模板中定义的默认代码执行检测正则表达式
-l listOfExtensions, --legit-extensions listOfExtensions 以逗号分隔的合法的扩展名列表 用于表单的正常使用 Example: 'jpg,png,bmp'
-n n 使用的常用扩展名的数量 Example: -n 100
-v 详细模式
-vv 非常详细的模式
-vvv 非常非常详细的模式
-s, --skip-recon 跳过侦查阶段 在这一阶段 Fuxploider 试图确定服务器期望和过滤哪些扩展名 需要 -l 开关
-y 蛮力检测每个入口点 不会在第一次发现代码执行时停止
-T Threads, --threads Threads 并行任务线程的数量
-U useragent, --user-agent useragent 在请求目标时使用的用户代理
--random-user-agent 在请求目标时使用随机的用户代理
必要具名参数:
-u target, --url target 包含要测试的文件上传表单的 Web 页面 URL Example: http://test.com/index.html?action=upload
--not-regex regex 匹配上传失败的正则表达式
--true-regex regex 匹配上传成功的正则表达式
手动表单检测参数:
-m, --manual-form-detection 禁用自动表单检测 当使用 JavaScript 加载表单和当 URL 中存在多个文件上传表单而导致自动检测失败时很有用
--input-name image 输入文件的名称 Example: <input type="file" name="image">
--form-action upload.php 表单 action 属性的路径 Example: <form method="POST" action="upload.php">
[TEMPLATES]
模板是被扫描的远程服务器上的恶意负载
代码执行检测是基于负载的预期输出完成的
默认模板如下:
'phpinfo' - '简单调用 phpinfo() 函数的 php 纯文本文件'
'nastygif' - '有效的 GIF 文件 在文件的注释部分调用 phpinfo() 函数'
'nastyjpg' - '有效的 JPG 文件 在文件的注释部分调用 phpinfo() 函数'
'basicjsp' - '基础的 JSP 文件 具有简单的数学表达式'
'imagetragick' - '尝试利用 ImageMagick CVE-2016–3714 RCE 漏洞'
'htaccess' - '利用 Apache 2.4 错误配置上传 .htaccess 文件'
0x04 fuxploider获取
项目地址:https://github.com/almandin/fuxploider
好文推荐
欢迎关注 系统安全运维