idsfree:在云提供商中安全、隔离地启动黑客测试,而不会在提供商中发出安全警报
idsfree的Python项目详细描述
idsfree
idsfree:在云提供商中安全、隔离地启动黑客测试,而不会在提供商中发出安全警报
Project site | https://github.com/bbva/idsfree |
Issues | https://github.com/bbva/idsfree/issues/ |
Documentation | https://idsfree.readthedocs.io/ |
Authors | Daniel Garcia (cr0hn) |
Latest Version | 1.0.0-alpha |
Python versions | 3.5 or above |
什么是idsfree?
idsfree允许您执行黑客测试,而无需在ids机制上发出警报。
什么问题可以解决idsfree?
有很多组织和公司(用户也是)只有云作为他们自己的产品、开发和任何其他他们需要的东西的基础设施。
但是,安全活动部分会发生什么?当然,我们是在谈论道德黑客和渗透测试。云提供商的主要部分不允许在他们的平台(或非常有限的平台)中执行黑客任务,,即使您只攻击自己的服务!
idsfree允许您执行:
- hacking任务without raise alert into cloud provider。
- 创建一个安全且隔离的网络来执行黑客测试。
- automatic您的hacking任务遵循上一点的概念。
它是怎么工作的?
要执行上述任务,idsfree请执行以下步骤:
- idsfree使用ssh连接云提供商中的虚拟机。
- 一旦连接,idsfree将使用docker swarm在此虚拟机上创建一个私有的加密网络。
- 获取应用程序(及其环境要求)作为Docker映像,并将其附加到先前创建的网络上运行。
- 附加到网络黑客工具作为Docker容器,并通过加密和隔离的网络发起选定的攻击。
- 获取工具的results并以可用格式导出它们:json或junit格式(对于与jenkins集成非常有用)。
- 清理来自虚拟机的容器和网络。
下一张图片演示了如何在云提供商中部署环境:
快速启动
安装
> 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可以两种格式报告:json和junit。
在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'
文档
(仍在等待!)
许可证
此项目在BSD license
下分发