Sh00t:一个渗透测试管理工具

2019-05-09 16:09:24 浏览数 (1)

Sh00t是一个高可定制的渗透测试管理工具,它强调让测试人员手动进行安全测试,并让你专注于执行安全测试任务的本身。此外,Sh00t还为我们提供了测试用例的待办事项清单,以及可以使用自定义的漏洞报告模板来生成漏洞报告。

特性

动态任务管理器替换简单的编辑器或任务管理工具 自动化,可定制的安全测试用例清单,用于替换Evernote,OneNote或其他工具 管理用于不同目的的自定义bug模板并自动生成漏洞报告 支持多个评估和项目,以逻辑分离你的不同需求 所有操作都将自动被保存 将自动生成的漏洞报告导出到Markdown,并提交HackerOne! 集成JIRA,ServiceNow集 - 即将推出 将漏洞报告导出到Markdown - 即将推出 高可定制性

安装

Sh00t安装需要Python 3以及一些额外的软件包。设置Sh00t的最简单方法是使用Conda环境。但是,如果你安装了Python 3和pip,Anaconda是可选的 - 你可以跳到下面的第4步。

一次性设置

1.安装最小的conda安装环境Miniconda,并按照安装说明进行操作。安装完成后你需要重新加载bash配置文件,或重启终端以使conda命令生效。对于Windows,启动Anaconda Prompt并在该窗口中运行以下所有命令。 2.创建一个新的Python 3环境:conda create -n sh00t python=3.6 3.激活sh00t环境:conda activate sh00t。如果你看到类似CommandNotFoundError: Your shell has not been properly configured to use ‘conda activate’的错误消息,则你必须手动启用conda命令。按照显示的说明和错误消息进行操作。你可能需要重新加载bash配置文件或重启终端。尝试再次激活sh00t:conda activate sh00t。这次你应该可以在终端中看到(sh00t) XXXX$。 4.克隆或下载该项目的最新版本到你指定的位置:https://github.com/pavanw3b/sh00t。git clone需要安装Git。 5.解压缩sh00t文件夹:cd sh00t。注意,这是项目文件中最外层的sh00t目录而不是sh00t/sh00t。 6.安装Sh00t依赖包:pip install -r requirements.txt 7.设置数据库:python manage.py migrate 8.创建用户帐户:python manage.py createsuperuser并按照UI创建帐户。 9.可选但推荐:来自OWASP测试指南(OTG)和Web应用程序黑客手册(WAHH)的Avail 174安全测试用例:python reset.py。

启动Sh00t:

如果你的计算机上已安装了Python 3,则可以直接跳转到第3步。

1.如果是Linux/Mac,则打开终端。如果是Windows,则打开Anaconda Prompt。 2.如还未激活sh00t环境:conda activate sh00t 3.如果不在sh00t目录下,请则导航到该目录:cd sh00t 4.启动Sh00t server:python manage.py runserver 5.在你习惯的浏览器上访问http://127.0.0.1:8000/。使用之前在设置中创建的用户凭据登录。 6.欢迎来到Sh00t! 7.完成后,停止服务:Ctrl C 8.(可选)关闭sh00t环境以继续其他工作任务:conda deactivate。

更新升级:

1.导航到克隆sh00t的文件夹:cd sh00t 2.如果服务正在运行,请停止服务:Ctrl C 3.git pull最新的代码库,或从github下载源码并替换文件。 4.如果未激活sh00t环境:conda activate sh00t 5.设置依赖项:pip install -r requirements.txt 6.迁移最新数据库更改:python manage.py migrate 7.启动server:python manage.py runserver

关于错误:

Sh00t是Python编写的,并由Django Web Framework提供支持。如果出现任何错误问题,你可以通过谷歌搜索错误信息,在大多数情况下能解决你的问题。如果还是无法解决,那么你也可以通过github issue反馈问题。

名词解释:

Flag:Flag就是一个标记的目标,即需要进行测试的测试用例。Flag是根据所选的测试方法自动生成的,其包含了测试的详细步骤。如果漏洞被确认,那么我们则称它为sh0t。 Sh0t:Sh0ts即漏洞。通常,Sh0t会包含漏洞的技术说明,受影响的文件/URL重现及修复建议。Sh0t的大部分内容都是一键生成的,只有像“受影响的参数”,“步骤”这样的动态内容才能更改。 Assessment:评估,即测试评估。它可以是对一个应用或一个项目的评估 - 取决于用户想要管理的方式,是Project的一部分。 Project:项目包含评估。项目可以逻辑分离你的工作。它可以是不同的工作,漏洞赏金,一切由你决定。

它是如何工作的?

首先创建一个新的评估。选择你要测试的方法。当前有330个测试用例,分为86个Flags,属于13个Modules,这些Modules是根据“Web应用程序黑客手册”测试方法创建的。Modules和Flags可以手动选择和定制。使用Flags创建评估后,现在测试人员必须手动来测试它们,或者在扫描器,工具的帮助下进行半自动化测试,在完成后将其标记为“Done”。在执行评估时,我们通常会提供特定于应用程序中某些场景的自定义测试用例。可以在任何时间点轻松创建一个新的Flag。

每当确认一个Flag为有效bug时,就会创建一个Sh0t。可以选择最匹配的bug模板,sh00t将根据所选模板自动填充漏洞报告。

相关截图

仪表盘:

Flags:

在创建新评估时选择方法及测试用例:

漏洞报告模板:

Sh00t适用人群

1.应用程序安全工程师:渗透测试和漏洞评估 2.Bug赏金猎人 3.独立安全研究人员 4.蓝队,开发人员漏洞修复 5.任何的网络安全爱好者或从业人员

*参考来源:GitHub,FB小编secist编译,转载请注明来自FreeBuf.COM

0 人点赞