Package: idsfree
idsFreeIdsFree: Launch hacking tests in cloud providers securely, isolated and without raise security alerts in the providerProject sitehttps://github.com/bbva/idsfreeIssueshttps://github.com/bbva/idsfree/issues/Documentationhttps://idsfree.readthedocs.io/AuthorsDaniel Garcia (cr0hn)Latest Version1.0.0-alphaPython versions3.5 or aboveWhat’s idsFree?IdsFreeallow you to perform hacking testing without raise alerts at IDS mechanism.What problem solve IdsFree?There’re many organizations and companies (an users too) that only have Cloud provides as an infrastructure for their own products, developments and any other thing that they will need.But,what happen with active part of security? Of course we’re talking about ethical hacking and penetration testing. The major part of cloud providers doesn’t allow to perform hacking tasks in their platform (or very limited),even if you only attack your own services!IdsFreeallow you to do:Hackingtaskswithout raise alert into Cloud Provider.Create asecure and isolated networkto perform your hacking tests.Automateyourhacking tasksfollowing the concept of previous point.How it works?To perform the above tasks,IdsFreefollow these steps:IdsFree uses a SSH connection a virtual machine in your cloud provider.Once connected, idsFree willcreate a private and cyphered networkon this virtual machine usingDocker Swarm.Getyour application(and their environment requisites)as a Docker imageand run it attaching it to the previously created network.Attachto the networkhacking toolsas docker containers and launch selected attacks through the cyphered and isolated network.Take theresultsof tools and export them in a usable format:JSONorJUnitformat (very useful for integrating withJenkins).Clean upthe container and network from the virtual machine.The next image illustrates how the environment are deployed in the cloud provider:Quick startInstall>python3.5-mpipinstallidsfreeCheck remote environmentIdsFree allow to check if a remote system has all the necessary conditions
to run. An examples of usage are:Check remote system by passing the password in command line>idsfree-v-H192.168.111.129-d-Uroot-PMY_PASSWORDprepare[*]Startingpreparationofremotehost...[*]Checkingremotemachineforminimumrequisites[*]InitializationSwarmatIP:192.168.111.129[*]Creatingnewencryptednetwork:DgJXoXmeYhASHjmSVCheck remote system and tell to idsFree ask for the password>idsfree-v-H192.168.111.129-d-Uroot-Aprepare[*]Startingpreparationofremotehost...[*]Checkingremotemachineforminimumrequisites[*]InitializationSwarmatIP:192.168.111.129[*]Creatingnewencryptednetwork:DgJXoXmeYhASHjmSVLaunching the attacksCurrently, idsFree can launch two type of attacks: net | web, and try to choice the best tools to perform the attacks.Also, idsFree can report in two formats:JSONandJUnit.Launch attack and report in JUnit>idsfree-v-H192.168.111.129-d-Uroot-PMY_PASSWORDrun_attacks-p6379-tnet-sredisredis-oresults.xml-ejunit[*]Startingattacksofremotehost...[*]Checkingremotemachineforminimumrequisites[*]Creatingtemporalencryptednetwork:lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst[*]Removingtemporalencryptednetwork:lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst[*]Generatingresultsas'JUnit'format,infile:'results.xml'Launch attack, report in JSON and ask for password>idsfree-v-H192.168.111.129-d-Uroot-Arun_attacks-p6379-tnet-sredisredis-oresults.json-ejson[*]Startingattacksofremotehost...[*]Checkingremotemachineforminimumrequisites[*]Creatingtemporalencryptednetwork:lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst[*]Removingtemporalencryptednetwork:lEvXBfPNVmoCZyFmKJsnPSADJjrUoxmxjFst[*]Generatingresultsas'json'format,infile:'results.json'Documentation(Still pending!)Go to documentation site:https://idsfree.readthedocs.io/ContributorsContributors are welcome. You can find a list ot TODO tasks in theTODO.mdat the project file.All contributors will be added to theCONTRIBUTORS.mdfile.Thanks in advance if you’re planning to contribute to the project! :)LicenseThis project is distributed underBSD license