Pocsuite3的安装和使用及poc代码的学习

简介: Pocsuite3的安装和使用及poc代码的学习

简 介:


Pocsuite 是由知道创宇404实验室打造的一款开源的远程漏洞测试框架。


你可以直接使用 Pocsuite 进行漏洞的验证与利用;

你也可以基于 Pocsuite 进行 PoC/Exp 的开发,因为它也是一个 PoC 开发框架;

同时,你还可以在你的漏洞测试工具里直接集成 Pocsuite,它也提供标准的调用类。


Pocsuite3是完全由Python3编写,支持Windows/Linux/Mac OSX等系统,在原Pocsuite的基础上进行了整体的重写与升级,使整个框架更具有操作性和灵活性。


Pocsuite3在编写时参考了很多市面上的开源框架以及流行成熟的框架,在代码工程结构上参考了Sqlmap,Pocsuite-console模式则参照了routersploit与metasploit,所以Poc的代码格式和以前有些差别(但是尽量克制了大的改动)。


Pocsuite3也提供了非常简单的接口调用,可以集成到其他安全工具内部。


一、Pocsuite3的安装


安装:


1.wget https://github.com/knownsec/pocsuite3/archive/master.zip


2. unzip pocsuite3-master


3. 同时需要安装两个依赖


pip install requests requests-toolbelt


c01c65dd14af39c40507f76212683c09_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


pip install pyreadline


42d30309afe59135e9d00ab9c29226cd_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


4. python3 cli.py -h(检验安装效果)


74f57d8c0ffbff2ddbd66a5204440f50_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


二、Pocsuite3的使用


python3 cli.py--r pocs/ecshop_rce.py--dork ecshop--threads 5


使用ZoomEye搜索ecshop并使用ecshop_rce.py探测,指定线程数量为5


21783b7b1795ba2dfb41b34aac0ef828_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

0900b444a7fbd479fb9efc712180f6a6_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


有时候由于命令过多会导致参数重用性比较高,因此pocsuite还可以从配置文件中进行修改。


这边我们打开pocsuite.ini文件


849a4834853d0bda3b79ac64ceffb196_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


Target底下有个poc=,这里就是可以选择自己想要使用的poc,


这个poc可以是自己写的,也可以是pocsuite3中自带的


321c5e196be5c0158c0d1376862c299a_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


这边举一个例子,poc = pocs/drupalgeddon2.py


4cde81c2eca44a2f05c7f1ffda930237_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


mode就是写明poc需要执行的模式是exp还是verify,这边ini文件中默认是verify


698dc1c31d873bacb1fc74f19748fb9c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


Account这里就是写zoomeye、shodan这些的用户名密码,pocsuite3会通过zoomeye


这些帮助你做资产搜集


ae7dec25f275fe48c63c0c959cf0402f_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


Modules中在我看来主要是设置,dork用来设置zoomeye等里面的搜索语句


举个例子:


38ec3f9e9593ef319f3dfe260cf5bea2_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


然后再最后一个模块修改一下线程数


cf7aeba6c015a640a5d2254400f8f1c0_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



然后


python3 cli.py -c ../pocsuite.ini



080e403f8c93bad4c9420fd2a557513c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



我中间还是改了一下使用得poc以及设置内容,因为没有shodan会员,也没有使用shodan,


虽然没有扫出什么东西,不过使用pocsuite.ini来修改参数就这样进行得,会比较清晰,也不会遗漏参数。


如果有shodan,zoomeye一同开启,就将comparison改成true,这样得到的结果会更清楚。


Pocs插件


通过--plugins在后面指定插件名称,多个插件可以用,分割。


例如--plugins html_report将会生成HTML报表格式文档。


生成html报告的插件地址:


https://github.com/knownsec/pocsuite3/blob/master/pocsuite3/plugins/html_report.py


生成txt报告的插件地址


https://github.com/knownsec/pocsuite3/blob/master/pocsuite3/plugins/file_record.py


同时插件也可以在github上维护一个仓库调用。


举例:


https://github.com/knownsec/pocsuite3/blob/master/pocsuite3/plugins/poc_from_redis.py


Pocsuite3还具有console模式,由于我是在windows环境下搭建的,console模式更适用于linux以及mac环境,因此大佬们可以自行去尝试


三、POC编写的学习


321c5e196be5c0158c0d1376862c299a_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



在poc3中自带很多python编写的poc


因此尝试过效果之后 打开之前的ecshop_rce.py进行代码学习



b8ae53e729ffadc5f0e0ad7d91a9237e_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



代码的刚开始总体来说是一个简介,


关于创建的时间、作者的名字、poc针对的对象以及版本等等。



097d31d88c85bd7c18bf09d9e3621abf_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png




此处我认为是需要自行定义你所需要使用的ecshop的版本以及匹配的payload,


甚至可以自行定义攻击的payload代码。



ded489c88dd4de07d4bfc412a1e10f62_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



这边就很容易理解,把常用的ecshop2和3的payload写进函数中,当版本匹配时可以直接调用已经写入的payload。


其实这边写的比较分散,可以用payload={}把所有patload写在一起。




bdb3259079311a5108900286b3228c29_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png




这边就是用来验证漏洞的函数,首先就是输入你的url


如果你选择是auto也就是随机的话,它会将你的2.x以及3.x版本的payload全部都执行一遍,如果有定义版本,则根据版本来执行payload,


最后将结果输出,如果遇到timeout,也就是运行时间过长则执行中断。



ee31211027b376804ccb9247360a27ba_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



这边写明了当执行成功的时候则输出结果,输出失败的时候则输出target is not vulnerable(目标无漏洞)


底下两个函数就是前面option里说的自定义,这个都是在cmd中进行自定义的,


可以根据pocsuite3的命令格式自行使用自己的command以及payload。


attack函数还会根据个人写的命令来执行提权。



2510cf89d4d24c7658be79cfd32b408f_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png



这个函数的意思就是进行权限升级,再来漏洞利用,其逻辑和之前的verify很相似,


但不同的是


verify是验证漏洞,exploit是进行漏洞利用,这就是看使用的payload以及需要输出的结果的区别。


exp这边需要在cmd中写入webshell提权的命令,才能够进行使用,否则只会执行verify验证环节中的内容。


相关文章
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows Server 2003 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows Server 2003 操作系统保姆级教程(附链接)
|
安全 Linux 数据安全/隐私保护
AWVS多平台安装(保姆级)教程
AWVS多平台安装(保姆级)教程
3962 0
|
10月前
|
数据采集 机器学习/深度学习 人工智能
反爬虫机制深度解析:从基础防御到高级对抗的完整技术实战
本文系统阐述了反爬虫技术的演进与实践,涵盖基础IP限制、User-Agent检测,到验证码、行为分析及AI智能识别等多层防御体系,结合代码实例与架构图,全面解析爬虫攻防博弈,并展望智能化、合规化的发展趋势。
3160 62
反爬虫机制深度解析:从基础防御到高级对抗的完整技术实战
|
消息中间件 安全 Java
vulhub部分复现记录(后面大概都是原文档了,也比较难复现就不继续了)
本文介绍了多个软件的安全漏洞及其复现过程,涉及的软件包括Vulhub、Flask、ActiveMQ、Adminer、Airflow、Apache Druid、Apereo CAS、APISIX、AppWeb、Aria2、Bash、Cacti、Celery、CGI、ColdFusion和Confluence。每个部分详细描述了漏洞的背景、环境搭建步骤、漏洞复现的具体操作和验证方法。例如,Flask的SSTI漏洞通过构造特定的模板参数实现命令执行;ActiveMQ的反序列化漏洞利用特制的序列化对象触发;这些示例不仅展示了漏洞的危害性,还提供了实际的复现步骤,帮助读者深入理解这些安全问题。
3958 3
vulhub部分复现记录(后面大概都是原文档了,也比较难复现就不继续了)
|
安全 NoSQL Shell
pocsuite3 工具使用
pocsuite3 工具使用
555 1
|
安全 网络安全 Apache
CVE-2021-41773 复现
CVE-2021-41773 复现
1258 1
|
存储 安全 PHP
不知几DAY的Symfony---RCE复现
Symfony是一个开源的PHP Web框架,它现在是许多知名 CMS 的核心组件,例如Drupal、Joomla! 此文演示了该框架存在的一个RCE漏洞
不知几DAY的Symfony---RCE复现
|
开发框架 安全 .NET
Web安全-一句话木马
Web安全-一句话木马
2442 5
|
Web App开发 存储 安全
就一次!带你彻底搞懂CSRF攻击与防御
与XSS攻击相比,利用CSRF漏洞发动攻击会比较困难,这也是在网络上看起来CSRF的人气小于XSS的原因之一。下面我们来利用CSRF漏洞发起攻击,并针对攻击进行防御,彻底弄懂CSRF,话不多说,我们直接开冲。

热门文章

最新文章