![License](https://camo.githubusercontent.com/a0928611dcb0e59ad4212f0f71da766bed206367b67d0325ba695e97681e70d4/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d47504c76322d7265642e737667)
跨平台模块化并发框架,可用于采集/爬虫/爆破/批量PoC等任何需要并发的地方。
- 支持两种并发模式*(多线程/单线程异步)*和多种输入方式
- 极简式模块编写
- 无交互运行,方便部署自动化
- 实用工具/PoC更新中
![banner.png](https://github.com/Xyntax/POC-T/raw/cdxy/docs/banner.png?raw=true)
这个小巧的并发框架可以满足许多日常需求.
用户可参考以下已集成的脚本来编写自己的功能模块.
模块 |
说明 |
./module/sqli-poc-example.py |
SQL注入PoC示例(方正翔宇某系统) |
./module/jboss-poc.py |
jboss漏洞PoC(jexboss去后门版) |
./module/struts2-s2032.py |
Struts2 S2-032 远程命令执行 |
./module/zonetransfer-poc.py |
DNS域传送漏洞PoC |
模块 |
说明 |
./module/zabbix-weakpass.py |
zabbix弱口令扫描 |
./module/brute-example.py |
密码爆破示例(51idc某站) |
模块 |
说明 |
./module/spider-example.py |
爬虫示例(B站用户签名档爬虫) |
./module/collector-example.py |
页面采集示例 |
模块 |
说明 |
./module/vote-example.py |
给基友开发的刷票脚本 |
others |
等你开脑洞 |
pip install -r requirement.txt
python POC-T.py
usage: POC-T.py [-T|-C] [-m] [-f|-i|-n] [options]
example:
python POC-T.py -T -m test -f ./dic/1-100.txt
python POC-T.py -C -m test -i 1-100
python POC-T.py -C -m spider-example -n 10.0.0.0/24
engine:
-T 多线程模式
-C 协程(单线程异步)模式
-t [num] 设置并发数量(线程数量)
module:
-m [module] 指定加载的PoC或模块名称
target mode:
-f [target] 从文件加载目标列表(常用于扫描或批量漏洞验证)
-i [start]-[end] 给定起始数字和结束数字,自动生成payload(常用于有数字规则的遍历,爬虫等)
-n [IP/MASK] 从IP和子网掩码加载目标,如:10.0.0.0/28 (用于扫描网段)
optimization:
-o [output] 输出文件路径,默认保存在./output/目录下
--single 当验证到一个结果时退出(常用于密码爆破)
--nF 取消文件输出
--nS 取消屏幕输出
--show 显示./module/文件夹下所有可用的模块名称
--debug 开启debug模式,输出一些细节
--update 自动从github更新程序
以下含@的目录表示用户可控区域,用户可根据需要增加/修改/调用其中的内容
目录 |
说明 |
POC-T.py |
程序入口 |
module |
@自定义模块/PoC脚本库 |
util |
@工具库 |
data |
@资源库 |
output |
默认输出位置 |
lib |
项目代码 |
docs |
文档及版权声明 |
thirdparty |
第三方库 |
极简式模块编写,它只需要声明一个函数作为接口,没有其他任何限制.
- 进入
./module
目录
- 在此目录下新建Python文件
poctest.py
- 在代码中添加函数 poc()
- 添加逻辑使验证成功(漏洞存在)时
return True
,验证失败时return False
- (程序运行时,每个子线程调用该文件的poc()方法,并将队列中的取出的字符串传入该方法)
def poc(input_str):
return True or false
python POC-T.py --show
查看全部模块名称
- 在命令行中使用
-m poctest
参数即可完成poctest
模块的加载 (注意名称末尾不需要写.py
)
util
文件夹中收集了具有通用性的工具组件.用于简化代码,提高PoC准确性,赋予脚本更多功能.
编写模块时,可以使用from util.xxx import xxx()
直接调用,具体功能请查看原文件注释.
工具 |
说明 |
urlparser.py |
URL处理工具,可对采集到的杂乱URL进行格式化/自动生成等 |
useragent.py |
User-Agent处理工具, 支持随机化UA以绕过防御规则 |