×
618会员大促,站长已经被打骨折了
我也来一脚
忽略

Poc2jar:一款漏洞验证、利用工具

Java编写,Python作为辅助依赖的漏洞验证、利用工具,添加了进程查找模块、编码模块、命令模块、常见漏洞利用GUI模块、shiro rememberMe解密模块,加快测试效率。

2022.4.1更新v0.56

1.优化URL编码存在非url编码字符的百分号情况

Poc2jar:一款漏洞验证、利用工具插图

2.实现单个exp大类的单个url测试

3.增加单个url测试时的代理功能

4.增加文件Base64bytes编码,具体实战可参考https://mp.weixin.qq.com/s/outtxUANOa406ErGleWjtQ

Poc2jar:一款漏洞验证、利用工具插图1

2022.3.30更新v0.55

1.修复命令模块下的bash编码错误的问题

Poc2jar:一款漏洞验证、利用工具插图2

2.修复CS命令上线第一条命令少了"的问题

Poc2jar:一款漏洞验证、利用工具插图3

2022.1.20更新v0.54

修复shiro解密逻辑

增加shiro AES GCM解密,原工具https://github.com/r00tuser111/SerializationDumper-Shiro 只支持AES CBC

Poc2jar:一款漏洞验证、利用工具插图4

Poc2jar:一款漏洞验证、利用工具插图5

Poc2jar:一款漏洞验证、利用工具插图6

另shiro key增加到1208个,参考项目https://github.com/SummerSec/ShiroAttack2

2022.1.15更新v0.53

修复windows下进程查找模块乱码问题,原因还是和之前一样的,文本编码应该为gbk

增加提取路径模块,工作中会遇到要提取一些路径问题,这里我简单举两个例子,web.xml下,显示了一些配置文件,诸如/WEB-INF/xxx文件,但是有很多,手动查找起来特别慢,这里直接使用工具

Poc2jar:一款漏洞验证、利用工具插图7

再比如说,我们要去通过web.xml去读取源码,那么我们就要去获取类名,但是一个个去匹配,比较麻烦,也可以使用工具匹配

Poc2jar:一款漏洞验证、利用工具插图8

也可以直接请求url进行匹配,如下

Poc2jar:一款漏洞验证、利用工具插图9

也可以用于其他方面,如spring下的未授权接口收集,直接访问授权页面的即可收集所有spring的接口 也可以直接请求url进行匹配,如下

Poc2jar:一款漏洞验证、利用工具插图10

2022.1.7更新v0.52

修复windows下无法保存poc问题 Poc2jar:一款漏洞验证、利用工具插图11

2022.1.7更新v0.51

修复druid解密模块的问题,原版本中存在无法解密问题(1.0.16+版本)

AES模块增加key、iv的模式(Base64、Hex)、补位模式 Poc2jar:一款漏洞验证、利用工具插图12

2022.1.6更新v0.50

修复cors poc生成的双引号问题

Poc2jar:一款漏洞验证、利用工具插图13

增加AES、DES加解密模块

Poc2jar:一款漏洞验证、利用工具插图14

增加部分常用命令(https://xz.aliyun.com/t/10699)

Poc2jar:一款漏洞验证、利用工具插图15

2021.12.31更新v0.49

优化了tasklist的进程查找

优化了常用命令的排序 Poc2jar:一款漏洞验证、利用工具插图16

todo:添加aes、des加解密的模块

2021.12.8更新v0.48

增加shiro RememberMe参数解密模块,取自https://github.com/r00tuser111/SerializationDumper-Shiro

增加反编译工具fernflower.jar、shiro key文件keys.conf

举例说明: 使用ysoserial工具生成 Poc2jar:一款漏洞验证、利用工具插图17

进行解密: Poc2jar:一款漏洞验证、利用工具插图18

使用shiro利用工具生成 Poc2jar:一款漏洞验证、利用工具插图19

进行解密: Poc2jar:一款漏洞验证、利用工具插图20

2021.11.30更新v0.47

新增模块

1.增加CORS漏洞poc生成、JSONP漏洞poc生成,在日常挖洞过程中,会遇到cors、jsonp,有些是安服项目,有些是src项目,但是每次遇到这些漏洞,poc的生成会比较麻烦,像我自己平时也会挖掘一些漏洞交到src混混奖励等等

Poc2jar:一款漏洞验证、利用工具插图21

模块演示环境取自DoraBox(https://github.com/0verSp4ce/DoraBox)

CORS生成模块:

Poc2jar:一款漏洞验证、利用工具插图22

导出文件为poc2jar-cors.html

Poc2jar:一款漏洞验证、利用工具插图23

访问poc2jar-cors.html,即可看到弹窗:

Poc2jar:一款漏洞验证、利用工具插图24

这里有个CORS的小tips,在一些src站点中,把js代码保存成js文件,然后上传个新的html引用这个js文件,在一些环境中就可以执行了

JSONP模块:

Poc2jar:一款漏洞验证、利用工具插图25

导出文件为poc2jar-jsonp.html

Poc2jar:一款漏洞验证、利用工具插图26

访问poc2jar-jsonp.html,即可看到弹窗

Poc2jar:一款漏洞验证、利用工具插图27

优化部分: Python脚本模块增加报错机制,具体实现为:

            Process pro = Runtime.getRuntime().exec(commands);
            InputStream Output = pro.getInputStream(); // Output为正常信息
            InputStream errorOutput = pro.getErrorStream(); // errorOutput为报错信息

界面如下: Poc2jar:一款漏洞验证、利用工具插图28

2021.11.25更新v0.46

增加druid未授权漏洞利用,可以查看到jdbc链接、数据库用户名、sql语句、访问的uri、SESSION值 Poc2jar:一款漏洞验证、利用工具插图29 简单说下为什么要收集这些信息,jdbc的数据库名称、用户名、密码都有可能是一样的,这里收集也是为了站点的信息收集;

sql语句的一些变量可以收集起来进行fuzz,针对同一类开发团队来说,以及一些路由的可能语句;

uri信息这里做了jdbc执行次数的降序排列,也就是最上面的可能就是系统执行sql语句的路由,可以重点看下;

SESSION值,大家应该都知道,看SESSION的有效性了;

还有一个小优化就是bash命令增加去掉花括号和bash -c的版本,感谢@金鱼 师傅完善 Poc2jar:一款漏洞验证、利用工具插图30

发现python模块下的脚本可能会未响应,后续增加脚本的延时跳出未响应状态 (迭代的时候发现properties被覆盖了,已经更正过来,感谢@Tukali 师傅提交issue)

2021.11.20更新v0.45

1.base64解码优化,遇到奇数编码会报错,由于没有处理好报错问题,导致程序出错,优化如下:

(如该种解码只出现了三种情况,其他情况报错忽略)

Poc2jar:一款漏洞验证、利用工具插图31

2021.11.19更新v0.44

1.base64模块解码加入分段猜解,类似base64编码中可能存在部分非base64的加密部分,剔除后进行base64解密。参考(https://xz.aliyun.com/t/7779)

测试base64: RuYW1lPVRfWlBHTF9ER1dSU0pHWlNYJklzaGFzWVBYSEJ5ZmlsZWQ9JnNlbGVjdGZpZWxkSWRzPSwmc2VsZWN0ZmllbGRJZHNWYWx1ZT0sY29td2lzZWR1Y29td2lzZWR1c3VibWl0PXRydWUmeXB4aHZhbHVlPTI3OTQ2Jn Poc2jar:一款漏洞验证、利用工具插图32 Poc2jar:一款漏洞验证、利用工具插图33

2.优化cs payload,可以进行按钮保存,方便之后打开使用 Poc2jar:一款漏洞验证、利用工具插图34

2021.11.19更新v0.43

优化windows下的启动参数,由于mac下java默认是utf-8,windows下java默认是gbk

mac下 Poc2jar:一款漏洞验证、利用工具插图35

windows下

Poc2jar:一款漏洞验证、利用工具插图36

导致有师傅提了issue,这里思考了一下,把文本文档的编码更改一下应该就行了,windows下双击打开jar: Poc2jar:一款漏洞验证、利用工具插图37

2021.11.18更新v0.42

1.增加命令模块(Bash模块、PowerShell模块、Python模块、Perl模块),参考http://www.jackson-t.ca/runtime-exec-payloads.html

Bash模块 Poc2jar:一款漏洞验证、利用工具插图38

PowerShell模块 Poc2jar:一款漏洞验证、利用工具插图39

Python模块 Poc2jar:一款漏洞验证、利用工具插图40

Perl模块 Poc2jar:一款漏洞验证、利用工具插图41

2.增加cs快速生成命令模块,第二三四条可以绕过windows defender的上线命令,第一条只是做了加号处理 Poc2jar:一款漏洞验证、利用工具插图42

第五条效果不好 Poc2jar:一款漏洞验证、利用工具插图43

3.优化windows下体验(由于没在windows下测试,导致windows之前的jar都打不开,0.42开始,windows和mac都会进行一次测试)

todo:base64模块解码加入猜解,参考(https://xz.aliyun.com/t/7779)

2021.11.17更新v0.41

1.优化listview选择列表事件,可通过上下方向键进行选择,

由于使用方向键可以移动光标位置,所以可以通过监听onKeyReleased事件来实现,具体实现逻辑如下:

添加监听事件:

onKeyReleased="#mListView1Click2"

事件定义为:

public void mListView1Click2(KeyEvent event)

函数为:

mListView1.getSelectionModel().getSelectedItem()

通过读取光标来进行获取listview选中的内容

2.去除了文件中会显示.DS_store文件

3.增加druid1.0.16版本及以后的解密方式 Poc2jar:一款漏洞验证、利用工具插图44

4.增加编码模块(Unicode、URL、Base64、Hex、Html、ascii编码),由于平时编码工具很少,要么是burp的编码模块,很难用,要么是某些在线网站,在线网站进行编码,需要有互联网,就导致了在一些内网环境中无法进行编码、解码,所以写了进去,简单介绍下:

Unicode模块(遇见一些网页响应包里的无法转码,可以尝试这个模块) Poc2jar:一款漏洞验证、利用工具插图45 Poc2jar:一款漏洞验证、利用工具插图46

URL模块(有些在URL里以百分号存在的字符,可以尝试这个模块) Poc2jar:一款漏洞验证、利用工具插图47 Poc2jar:一款漏洞验证、利用工具插图48

Base64模块(形如base64格式的,可以尝试这个模块) Poc2jar:一款漏洞验证、利用工具插图49 Poc2jar:一款漏洞验证、利用工具插图50

Hex模块 Poc2jar:一款漏洞验证、利用工具插图51 Poc2jar:一款漏洞验证、利用工具插图52

Html模块(形如&#格式的,可以尝试这个模块) Poc2jar:一款漏洞验证、利用工具插图53 Poc2jar:一款漏洞验证、利用工具插图54

ascii模块(一般是在SQL注入中会用到,取ascii码进行比对) Poc2jar:一款漏洞验证、利用工具插图55 Poc2jar:一款漏洞验证、利用工具插图56

2021.11.15更新 v0.4

1.完善密码模块对druid密码的解密,在druid 1.0.16版本及之前 Poc2jar:一款漏洞验证、利用工具插图57 发现有些时候poc利用的还不是很好,emmm在思考怎么优化

2021.8.14更新 v0.3

1.完善对于单个目标进行全部poc检测 Poc2jar:一款漏洞验证、利用工具插图58

2.python运行命令可在调用python脚本手动设置。

3.将python固定至jar包内部,减少config.properties文件;将test.txt固定至jar包内部,减少test.txt文件(对macos来说,windows还未适配)

后续看看windows怎么减少config.properties文件和test.txt文件,文件说明在最下面都有解释

基本已经完成我所需要的功能了,后续看有必要再次更新

2021.8.8更新 v0.2

1.批量模块更改为python批量,默认用的python3,所以需要配置一下python3命令。(emmm后续再看看改成go试试)

2.添加finalshell密码解密

3.添加seeyon数据库密码解密

注:

1.增加了pythonexp/poc2jarpiliang.py、url.txt文件,最好重新下载一遍项目里的txt

2.property/config.properties增加python2、python3,python脚本默认python2执行

python批量

Poc2jar:一款漏洞验证、利用工具插图59

finalshell密码解密(支持批量)

Poc2jar:一款漏洞验证、利用工具插图60

seeyon数据库密码解密(支持批量)

Poc2jar:一款漏洞验证、利用工具插图61

源介绍

poc2jar

个人写的很简陋的poc工具,每次遇到新的漏洞爆发出来,都要去复现,复现好以后保存到哪里就成了一个问题了,写这个工具,就是为了解决这个问题,希望能集合到个人主机内,然后可以根据不同的poc来使用

工具介绍

poc保存模块

举一个很简单的例子,hikvision的漏洞 Poc2jar:一款漏洞验证、利用工具插图62 截取到数据包如下:

GET /onvif-http/snapshot?auth=YWRtaW46MTEK HTTP/1.1
Host:x.x.x.x
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:89.0) Gecko/20100101 Firefox/89.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

直接放入到poc保存模块里,进行发包 Poc2jar:一款漏洞验证、利用工具插图63 可以看到返回的为二进制的图片,那我们可以把漏洞关键字设置为Content-Type:image/jpeg,只要请求这个路径返回这个,就判断为存在漏洞

Poc2jar:一款漏洞验证、利用工具插图64

满足条件,可以保存为yml文件

填入exp名称、yml文件的名称(这里名称需要带入组件,如这里应该为hikvision/test.yml) Poc2jar:一款漏洞验证、利用工具插图65 至此,保存yml文件成功

exp利用模块

直接选择刚刚保 存的yml文件 Poc2jar:一款漏洞验证、利用工具插图66

输入刚刚的url,进行测试 Poc2jar:一款漏洞验证、利用工具插图67 存在相应回显即为存在漏洞

批量利用(这里多线程没有处理好,暂时不能太多目标,后期想更换为python多线程)

Poc2jar:一款漏洞验证、利用工具插图68

tasklist进程搜索模块

这里需要tasklist /svc格式的输入 Poc2jar:一款漏洞验证、利用工具插图69

常用命令模块

Poc2jar:一款漏洞验证、利用工具插图70

python利用模块

Poc2jar:一款漏洞验证、利用工具插图71

不足 todo

①.对于一些复杂请求的没有做到兼容测试,还是依赖于python模块去执行 暂时没找到好方法替代

②.对于多线程没有处理好 用python替代了

③.对于单个目标可以把对应模块的poc全部测一遍

④.所需要的文件有点多,考虑办法不需要文件,直接写进jar包内 2021.8.14(部分完成)

⑤.考虑和goby、xray格式相同(长久来看)

对文件的说明

①.poc文件夹存放poc文件,即yml文件

②.property文件夹存放cmdlists.txt,即常用命令模块;config.properties,即python路径,或者环境变量下python的调用命令;exetest.txt,即tasklist /svc查找的敏感进程;test.txt是保存的请求包

③.pythonexp文件夹存放的python脚本,usage放在了文件第一行,可以进行调用

安装说明

安装pyyaml库 5.3.1

运行

Mac OS

直接运行jar即可

Windows

直接运行jar即可

相关文件下载地址

该资源需登录后下载

去登录
温馨提示:若该资源侵犯了您的权益,请联系我们处理。
Poc2jar:一款漏洞验证、利用工具
免费资源
立即下载