工具提交
一、背景
蜻蜓安全工作台是一个安全工具集成平台,集成市面上主流的安全工具,并按照工作场景进行编排,目前主要预制了四个场景:信息收集、黑盒扫描、POC批量验证、代码审计; 最大特点就是集成的工具多、种类全,你可以将你想要的工具编排成任意一个场景,快速打造属于自己的安全工作台~
https://github.com/StarCrossPortal/QingTing
在这篇文章中主要讲解,如何将自己喜欢的工具集成到蜻蜓安全工作台里面来,下面说下工具如何封装。
二、学习工具使用
在将工具集成到平台中之前,你需要了解工具的下载方式、依赖安装、使用方法;只有满足这几个条件你才有可能集成到平台中去。
我以弱口令检测工具WebCrack为例,讲解如何在蜻蜓安全工作台中提交工具。
2.1 工具下载
首先需要你从工具的官方网站,或者GitHub将工具下载下来
git clone https://github.com/yzddmr6/WebCrack返回内容如下
Cloning into 'WebCrack'...
remote: Enumerating objects: 104, done.
remote: Counting objects: 100% (31/31), done.
remote: Compressing objects: 100% (25/25), done.
remote: Total 104 (delta 9), reused 17 (delta 3), pack-reused 73
Receiving objects: 100% (104/104), 138.12 KiB | 867.00 KiB/s, done.
Resolving deltas: 100% (30/30), done.2.2 安装工具的依赖
接着对照工具的文档,我安装依赖,安装命令如下所示
返回结果
2.3 学习使用方法
现在学习工具使用方法,为后续接入做准备
2.4 改造工具
在上没使用的体验中,发现还需要进行交互,这非常不方便,我想执行一条命令就可以让他工作,所以需要改动代码
改动代码之前,需要分析主入口文件,其中有一个变量名url_file_name
我把他的修改成这个从参数中获取即可

接下来我用permeate搭建一个靶场,然后将登录地址放进去
返回结果如下,可以看到接收参数成功了,并且已经运行成功。
从反馈的结果来看,工具使用了万能密码暴力破解成功了。
三、学习镜像制作方法
现在我们已经知道工具如何接入,只需要让程序执行他就行了,所以我们需要学习蜻蜓安全工作台插件的一些基本规则,学习规则很简单。
我们只需要将蜻蜓已经写好的插件下载下来,看看之前的插件怎么写的就可以了。
3.1 案例分析
如下图是蜻蜓安全工作台已经编写好的插件, 
我们随意挑选一个案例,以长亭的xray工具接入为例,

可以看到工具一共有三个目录:code、tools、Dockerfile
我们先分析一下 dockerfile 文件
从Dockerfile文件中可以看到其实镜像制作,只需要把两个目录复制到镜像就可以了,然后让他启动执行一个主入口文件;
我们接下来再继续看主入口文件所在的code目录,打开文件查看,index.php 内容如下

从这个图中可以看到,插件的流程其实是读取要扫描的目标,然后将目标丢给工具去扫描,然后将扫描的结果存储到数据库
四、制作工具镜像
现在我们开始尝试自己写插件,首先将xray的整个文件夹复制一份,新的文件夹名字叫做webcrack,然后把tools里面的内容删除
接着将最开始下载的webcrack代码复制过来,如下图所示

接下来我们再分析index.php的具体逻辑,这里剧透一下,我们只看index.php就行,其他地方不用看了,用之前的配置就行了。
然后我们开始替换文件内容,直接将文件内容的xray改成webcrack,如下图所示 
再剧透一个地方,我们只需要改这两个函数就行了。

4.1 调用工具
首先我们需要关注执行工具的函数,这里面我们只需要关注CMD 这个命令

把这个命令改成webcrack的调用命令就行了

4.2 录入数据
然后再看下一个导入数据的函数writeData

在这个方法里可以看到只做了三件事,首先读取工具的结果,然后将结果的JSON字符串转换为数组,之后插入数据库即可。
作者:汤青松 微信:songboy8888 日期:2022年05月09日
最后更新于