作者:guko
pocsuite是一款基于漏洞与POC的远程漏洞验证框架,记录基本使用和POC跟EXP编写的学习记录
0x01 安装
直接下载解压安装
wget https://github.com/knownsec/pocsuite3/archive/master.zip unzip master.zip |
0x02 使用方法
Pocsuite具有两种交互模式,一种是命令行模式,另一种是控制台交互模式。–verify参数来调用verify方法,用于验证目标是否存在漏洞,–attack参数调用attack方法,用来向目标发起攻击。
1、verify验证模式,验证目标是否存在漏洞。-r为脚本路径,-u为目标地址
python3 pocsuite.py -r pocs/test1.py(脚本路径) -u url --verify |
2、批量验证,将需要验证的所有目标IP写到一个txt文件中批量利用
python3 pocsuite.py -r pocs/test1.py(脚本路径) -u url.txt --verify |
3、加载文件夹下所有poc对目标进行测试,-r为文件夹路径
python3 pocsuite.py -r pocs/* -u url --verify |
4、使用多线程。–threads表示线程数
python3 pocsuite.py -r pocs/test1.py(脚本路径) -u url --verify |
5、使用Zoomey搜索引擎,搜索开放端口6379的Redis服务
python3 cli.py --dork 'port:6379' --vul-keyword 'redis' --max-page 2 |
6、Attack模式,向目标发起有效供给
python3 pocsuite.py -r pocs/test1.py(脚本路径) -u url --attack |
7、使用shell交互式模式,对目标进行远程控制
python3 pocsuite.py -r pocs/test1.py(脚本路径) -u url --shell |
8、使用自定义命令‘command’,调用外部传递参数,进行半交互式命令执行
python3 pocsuite.py -r pocs/test1.py(脚本路径) -u url --attack --command "whoami" |
0x03 POC脚本编写
搭建Flask服务器模板环境
这里直接用VULHUB中的环境快速搭建
https://github.com/vulhub/vulhub/tree/master/flask/ssti docker-compose build docker-compose up -d |
实际编写,将模版的_verify方法替换成Flask漏洞检测脚本既完成POC的编写
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
#!/usr/bin/python3 #新建一个符合POC命令规范的py文件 #编写POC实现类DemoPOC,继承自POCBase类 from collections import OrderedDict from urllib.parse import urljoin import re from pocsuite3.api import POCBase, Output, register_poc, logger, requests, OptDict, VUL_TYPE from pocsuite |