技术分享 | 自定义PoC对接插件,漏扫更强大
前言:群里的大佬们纷纷写出各种牛X的插件,让人羡慕到飞起。对于我这种编程盲来说,写一个新的插件那估计是费了!不过,千古插件一大抄…咳咳,千古奇文一大抄,抄来抄去创新高!哈哈,开玩笑的!接下来,我就打个样,试试水,在大佬的插件基础上修改一下下,配合自己编写的PoC,也可以玩的风生水起!
正好手头上也有个监控的漏洞, 所以就借鉴了Vanilla大佬的“Hikvision”插件(不要来打我)。
1. 最终效果
以我自定义的Goahead-Cameras未授权访问漏洞为案例,结合修改的Hikvision插件,效果一毛一样!5秒刷新一次的PPT:
2. 自定义POC
由于某些敏感原因,这里以Goby预置的海康摄像头未授权访问这个漏洞为案例。
Hikvision IP Camera Access Bypass(ICSA-17-124-01/CVE-2017-7921)
2.1 漏洞触发url
根据漏洞的详情可以看到两个触发点:
- 查看用户角色
http://camera.ip/Security/users?auth=YWRtaW46MTEK
- 查看监控实时截图
http://camera.ip/onvif-http/snapshot?auth=YWRtaW46MTEK
- 配置文件下载
http://camera.ip/System/configurationFile?auth=YWRtaW46MTEK
2.2 Goby内置查询规则
首先扫描一批案例,通过Goby内置的指纹来识别出资产的信息。可以看到硬件层的显示为“Hikvision-Cameras-and-Surveillance”:
那么搜索语法就是
app=”Hikvision-Cameras-and-Surveillance”
看下图搜索结果:
当然我们也可以通过别的方法进行搜索资产,比如body=”xxx”,header=”xxx”等等首先要找到一个通用的存在的字符串,如下图,body,header,banner等一些信息都是在打开url第一个响应的页面里面,如下图,将body里面的“doc/page/login.asp“作为搜索关键字,那么语法为
body=”doc/page/login.asp”
看一下搜索结果:
2.3 自定义POC的编写
经过2.1和2.2我们已经知道了两个重要的信息,搜索资产的语法和漏洞触发的url。
2.3.1 漏洞信息编写
必要填写名称和查询规则。选择填写高级配置里面的,漏洞来源,详情,作者,修复方案!
2.3.2 测试部分编写
共有三个漏洞URL,我们可以任选其一,或者其二,干脆三个一起来判断,理论上判断维度越多,漏洞判断越精准,当然判断时间也会长。
我想选择第一个url进行测试,看一下漏洞URL的响应,我们选择一个特有性,唯一性,的字符串作为判断漏洞的存在(我选择administrator的原因是,监控肯定会存在一个管理员权限的账户,但是账户的名称或许不是admin)。
Goby填写测试如下,http头部没有添加是因为Goby发包的时候默认会添加头部,也可自己添加,data部分没有的话也无需添加。
最后提交保存(这个提交不是提交到Goby官方上,不会泄露你所有的漏洞信息,只是保存到本地,提交是生成一个json文件)。
注:文件名不支持中文字符,一定要英文字符。
2.3.3 测试效果
提交保存后,重新开启一个扫描任务,可以看到刚编写的PoC的漏洞扫描结果:自定义的搜索所规则和Goby内置的还是差2个风险资产。也说明咱们的规则是没有错的。
可以看到扫描出来的漏洞结果和Goby内置的一样:
自定义POC基本差不多就是这个流程了,接下来开始搞插件~
3.修改插件
按照Goby官方的开发文档里的说明,修改插件的关键部分——package.json和extensions.js。
3.1 下载原插件
扩展程序界面找到Hikvision验证插件并下载。
3.2 修改插件介绍信息
下载完成后,得到文件目录如下:
直接打开package.json和extensions.js这两个文件,里面的内容都可以修改,主要的是command和visible,因为extensions.js里面需要这两个参数。
这里是我修改后的样子:
3.3 修改漏洞信息
extensions.js四个地方需要修改,package.json里面的command和visible,一个是咱们自定义漏洞的名称(注释地方都已经说了哈),最后一个是窗口的title。
这个是我修改过的:
漏洞名称在这里查找,中文名称也可以的哈哈!
3.4 拼接漏洞URL
最后一步,index页面的修改!这个没啥好说的了,就是拼接一下漏洞url,就可以了。
4. 小结
由于某些敏感原因,自定义PoC编写部分没有以我的Goahead-Cameras未授权访问漏洞为案例,不过流程是一样的,表哥们掌握了方法即可~ 至于插件编写部分,表哥们不要喷我哈,本人开发能力着实有限!此次也是为了熟悉一下Goby插件基本开发流程。大家可以更多的发挥一下~
文章来自Goby社区成员:mojie,转载请注明出处。
下载Goby内测版,请关注微信公众号:GobySec
最新评论