异步社区 2017-05-02 1087浏览量
本节书摘来自异步社区《高度安全环境下的高级渗透测试》一书中的第1章1.7节Dradis框架介绍,作者【英】Lee Allen,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.7 Dradis框架介绍
Dradis框架是一个Rails应用程序,它可以用于管理在渗透测试时出现的数据过载情况。Dradis基于Web的用户界面体验良好,它简化了渗透测试周期的数据收集过程,并且能够将数据方便地分享给团队其他成员。
在结合不同的数据源,例如Nmap、Nessus,甚至Metasploit时,你通常需要构造某种数据库,然后使用各种方法管理导入的数据。Dradis可以让你单击几下鼠标,就能通过插件导入这些数据。Dradis也允许你上传附件(例如截图),或将你自己的注释添加至数据库中。
# cd /pentest/misc/Dradis/
#./start.sh
一旦服务开启,你需要打开你的浏览器并输入https://127.0.0.1:3004,这将进入Dradis应用程序的介绍界面。
你现在可以在Login字段选择一个新的用户名。用户登录作为信息使用,它不会影响工作区域。在Password区域输入共享的服务密码。一旦你单击Log in按钮,Dradis主工作区域就会出现。用户名及密码输入页面如图1.16所示。
1.在程序窗口顶部的工具栏中单击add branch按钮。
2.你可以为新的分支重命名。使用PracticePenTest重写branch #2,并按Enter键。
3.右键单击PracticePenTest并选择add child来分级。
4.试验一下并添加几个文件夹,然后思考你将如何安排你的数据,以方便访问和易于管理。
图1.17是一个项目树示例,假定该项目树在渗透测试期间用来收集数据。
1.7.1 导出一个项目模板
测试包含一系列计划好的阶段和过程这些阶段计划在不同测试情况下变化不大。为了充分利用这一事实,我们将创建一个可重复利用的模板。
在选择好PracticePenTest节点后,在顶部菜单栏上单击export图标。当展开Project export菜单时,将看到As template选项。单击该选项可以将项目模板以XML文件的形式存储到我们需要的位置。导出操作如图1.18所示。
1.7.2 导入一个项目模板
PracticePenTest节点伴随着剩下的数据一起删除了。现在是我们重新利用它的时候了,我们需要导入dradis-template.xml文件。单击菜单栏中的Import from file选项,然后选择old importer。从下拉菜单中选择Project template upload,单击Upload完成导入程序,一旦你的屏幕刷新,将会有两个新的文件夹出现:一个文件夹名为Upload files,另一个自然就是原来的PracticePenTest节点结构。具体操作如图1.19所示。
1.7.3 准备导入样本数据
为了完全领会Dradis框架的价值,我们将使用一些在渗透测试和漏洞测试中常用的工具来产生一些测试数据。大多数人应该比较熟悉这些工具,所以这里不会深入讨论这些工具。
要是BT5_R1_Tester1还没有启动,我们首先要做的就是立刻让它跑起来。一旦你登录到BackTrack客户端主机并通过startx命令打开了用户图形界面,那么在顶部菜单栏单击终端图标就会启动一个新的终端会话。用户图形界面如图1.20所示。
# cd Desktop/
# mkdir testData
# cd testData/
现在我们将使用Nmap生成数据,扫描生成的数据随后会导入到Dradis中:
nmap -vv -O -sS -A -p- P0 -oA nmapScan 127.0.0.1
该命令会初始化Nmap,使其扫描本地主机,并命令结果保存成三个格式的文件:XML文件、标准文件、grepable文件。由于没有指定目录,所以文件将保存在当前工作目录下。我们进行了一个针对所有端口和操作系统版本检测的细致TCP SYN扫描,这个命令针对在线的所有主机。
导入你的Nmap数据
在Dradis Web控制台已经打开,而且PracticePenTest项目树已经加载之后,选择Import from file, old improter,然后在Import from file菜单中选择Nmap upload格式,然后单击Select a file:输入区域右边的文件夹图标,浏览并选择nmapScan.xml文件,然后单击Open。导入文件窗口如图1.21所示。
在Dradis启动和运行时,我们需要选择PracticePenTest节点,同时单击工作区项目树右边的Add note按钮,在弹出的编辑器中输入This is a note,然后单击Save。这就将你的注释添加至列表中了。
更改默认的HTML模板
可以看到,Dradis的输出非常友好,但如果你需要更多定制的输出呢?你可以通过更改标准模板,来定制(自定义)导出的格式,下面是如何更改文档脚的例子:
将当前工作目录更改为选择导出插件。在此情况下我们将修改html_export/template.html.erb文件。
# cd /pentest/misc/dradis/server/vendor/plugins/html_export
为了修改template.html.erb文件,我们将使用Nano,它是一个强大且易用的文本编辑器。
# nano template.html.erb
文件将显示在Nano文本编辑器中。如果需要参考的话,Nano的命令会显示在应用的底部。我们通过设置template.html.erb文件来使用HTML文件对模板进行小的修改。将
<title><% = title %></title>
<h1>You can change this template to suite your needs. </h1>
在Nano中使用Ctrl+O保存你修改的文件并写到磁盘中。你将被问到用什么文件名来保存文件,你可以使用默认的文件名并在键盘上直接按Enter。
想查看改变是否生效,回到Dradis Web控制界面,选择PraticePenTest,然后单击工具栏的export→HTMLexport选项。你的新模板将被加载,在导出的报告中即可看到改变是否成功。模板是可以定制的,只要你付出一点努力并具备HTML技巧,你就能够定制自己想要的模板。
这表示在使用BackTrack下不能完全展示Dradis的性能。Word模板容易定制,使其包含公司信息,以你喜欢的格式列出数据并将标准页眉和页脚添加到文档中。
由于Dradis是使用起来非常方便如果你需要将数据导出到MS Word的功能,但是没有许可将它安装在BackTrack上,那么你可以将Dradis安装在一台安装了MS Office的Windows主机上,将Dradis项目从BackTrack中导出并重新导入Windows的Dradis中。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
云安全开发者的大本营