
Livraison d'exploits chiffrés pour les masses
Ce projet vise à livrer des exploits de navigateur au navigateur victime de manière chiffrée. L'Ellyptic-curve Diffie-Hellman (secp256k1) est utilisé pour l'accord de clé et AES est utilisé pour le chiffrement.
En livrant le code de l'exploit (et le shellcode) à la victime de manière chiffrée, l'attaque ne peut pas être rejouée. Pendant ce temps, la source HTML/JS est chiffrée, ce qui rend le reverse engineering de l'exploit beaucoup plus difficile.
Si vous n'avez aucune idée de ce dont je parle, cherchez sur Google "How to hide your browser 0-days" et regardez ma présentation. Ou regardez-la sur Youtube : https://www.youtube.com/watch?v=eyMDd98uljI Ou les slides sur Slideshare : https://www.slideshare.net/bz98/how-to-hide-your-browser-0days
L'idée de livrer un exploit chiffré a été publiée par moi le 2 juin 2015 : https://twitter.com/zh4ck/status/605754804472823808 https://www.mrg-effitas.com/research/generic-bypass-of-next-gen-intrusion-threat-breach-detection-systems/
Les gars du kit d'exploit Angler m'ont juste volé l'idée. Et l'ont implémentée mal.

Ces instructions vous permettront d'obtenir une copie du projet et de le faire fonctionner sur votre machine locale à des fins de développement et de test.
Dépendances obligatoires - clonez le projet IRONSQUIRREL, placez-vous dans le répertoire du projet, et exécutez les commandes suivantes :
sudo apt-get install ruby-dev
bundle install
En fait, les gems nokogiri et gibberish seront installés.
Dépendance optionnelle (pour la livraison de payload chiffrée basée sur l'environnement Powershell) : Ebowla https://github.com/Genetic-Malware/Ebowla
ruby IRONSQUIRREL.rb --exploit full_path_to_exploit
ruby IRONSQUIRREL.rb --exploit /home/myawesomeusername/IRONSQUIRREL/exploits/alert.html
Après cela, visitez le serveur web depuis un navigateur. Exemple de sortie :
Listening on 2345
GET / HTTP/1.1
GET /sjcl.js HTTP/1.1
GET /dh.js HTTP/1.1
GET /client_pub.html?cl=SOifQJetphU2CvFzZl239nKPYWRGEH23ermGMszo9oqOgqIsH5XxXi1vw4P4YFWDqK6v4o4jIpAVSNZD1x5NTw%3D%3D HTTP/1.1
GET /final.html HTTP/1.1
GET /sjcl.js HTTP/1.1
The end
N'hésitez pas à soumettre des corrections de bugs, des demandes de fonctionnalités, des commentaires ...
Ce projet est sous licence GPL3 - voir le fichier LICENSE.md pour plus de détails
