idsfree:在云提供商中安全、隔离地启动黑客测试,而不会在提供商中发出安全警报

idsfree的Python项目详细描述


idsfree

idsfree:在云提供商中安全、隔离地启动黑客测试,而不会在提供商中发出安全警报

idsFree logohttps://travis-ci.org/BBVA/idsfree.svg?branch=masterhttps://img.shields.io/pypi/l/Django.svghttps://img.shields.io/pypi/status/Django.svghttps://codecov.io/gh/bbva/idsfree/branch/master/graph/badge.svgDocumentation Status
Project sitehttps://github.com/bbva/idsfree
Issueshttps://github.com/bbva/idsfree/issues/
Documentationhttps://idsfree.readthedocs.io/
AuthorsDaniel Garcia (cr0hn)
Latest Version1.0.0-alpha
Python versions3.5 or above

什么是idsfree?

idsfree允许您执行黑客测试,而无需在ids机制上发出警报。

什么问题可以解决idsfree?

有很多组织和公司(用户也是)只有云作为他们自己的产品、开发和任何其他他们需要的东西的基础设施。

但是,安全活动部分会发生什么?当然,我们是在谈论道德黑客和渗透测试。云提供商的主要部分不允许在他们的平台(或非常有限的平台)中执行黑客任务,,即使您只攻击自己的服务

idsfree允许您执行:

  1. hacking任务without raise alert into cloud provider
  2. 创建一个安全且隔离的网络来执行黑客测试。
  3. automatic您的hacking任务遵循上一点的概念。

它是怎么工作的?

要执行上述任务,idsfree请执行以下步骤:

  1. idsfree使用ssh连接云提供商中的虚拟机。
  2. 一旦连接,idsfree将使用docker swarm在此虚拟机上创建一个私有的加密网络。
  3. 获取应用程序(及其环境要求)作为Docker映像,并将其附加到先前创建的网络上运行。
  4. 附加到网络黑客工具作为Docker容器,并通过加密和隔离的网络发起选定的攻击。
  5. 获取工具的results并以可用格式导出它们:jsonjunit格式(对于与jenkins集成非常有用)。
  6. 清理来自虚拟机的容器和网络。

下一张图片演示了如何在云提供商中部署环境:

IdsFree running

快速启动

安装

> python3.5 -m pip install idsfree

检查远程环境

idsfree允许检查远程系统是否具备所有必要条件 去跑步。用法示例如下:

通过在命令行中传递密码来检查远程系统

> idsfree -v -H 192.168.111.129  -d -U root -P MY_PASSWORD prepare
[ * ] Starting preparation of remote host...
[ * ] Checking remote machine for minimum requisites
[ * ] Initialization Swarm at IP: 192.168.111.129
[ * ] Creating new encrypted network: DgJXoXmeYhASHjmSV

检查远程系统并告诉idsfree询问密码

> idsfree -v -H 192.168.111.129  -d -U root -A prepare
[ * ] Starting preparation of remote host...
[ * ] Checking remote machine for minimum requisites
[ * ] Initialization Swarm at IP: 192.168.111.129
[ * ] Creating new encrypted network: DgJXoXmeYhASHjmSV

发起攻击

目前,idsfree可以发起两种类型的攻击:net web,并尝试选择最好的工具来执行攻击。

此外,idsfree可以两种格式报告:jsonjunit

在JUnit中发起攻击并报告

> idsfree -v -H 192.168.111.129  -d -U root -P MY_PASSWORD run_attacks  -p  6379 -t net -s redis redis -o results.xml -e junit
[ * ] Starting attacks of remote host...
[ * ] Checking remote machine for minimum requisites
[ * ] Creating temporal encrypted network: lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst
[ * ] Removing temporal encrypted network: lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst
[ * ] Generating results as 'JUnit' format, in file: 'results.xml'

发起攻击,用json报告并询问密码

> idsfree -v -H 192.168.111.129  -d -U root -A run_attacks  -p  6379 -t  net -s redis redis -o results.json -e json
[ * ] Starting attacks of remote host...
[ * ] Checking remote machine for minimum requisites
[ * ] Creating temporal encrypted network: lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst
[ * ] Removing temporal encrypted network: lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst
[ * ] Generating results as 'json' format, in file: 'results.json'

文档

(仍在等待!)

转到文档站点:https://idsfree.readthedocs.io/

贡献者

欢迎投稿。您可以在项目文件的TODO.md中找到todo任务的列表。

所有参与者都将被添加到CONTRIBUTORS.md文件中。

如果你打算为这个项目做贡献,请提前感谢!:)

许可证

此项目在BSD license

下分发

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将asynchttpclient作为maven项目发送异步post请求并运行   java无法查找JNDI   java NavigationView仅在   实现ApplicationListener的java Spring控制器   java如何在Maven项目的类路径中设置TestNG?   JSTL<c:if>标记中的java测试属性   java Show toast错误并在没有可用连接时阻止显示webview   java多线程中的并发性   如何使用java获取一个月的第一个星期日   java spring安全性angularjs 403   maven SASS的Java实现?   Android上的java MD5怪异行为   java shutdownNow()然后重新调度ScheduledThreadPoolExecutor:如何?   java如何在读取文本文件后生成数组