Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.



L'environnement d'exploitation libre Ronin, une alternative à Metasploit

Par Rédaction, secuobs.com
Le 02/11/2009


Résumé : Ronin est un environnement d'exploitation offrant une interface en ligne de commandes et facilitant le développement et l'exécution de codes d'exploitation. Il permet aussi d'effectuer des attaques par injections SQL, d'utiliser un scanner interne de vulnérabilités PHP (LFI/RFI, PHPRPC) et des scanners externes (Nikto, NMAP).



Ronin est un environnement d'exploitation, compatible avec Ruby 1.9 ( lien ) et RSpec ( lien ), qui est publié sous la licence Open Source GPL v2 ( lien ). Il vise à faciliter le développement de codes d'exploitation, d'extensions et de charges utiles (payload) dans le cadre d'audits ou de recherches en sécurité informatique. Ronin permet également de simplifier la distribution et le partage de ces développements à travers plusieurs systèmes standards de gestion de version ( lien ).

Il s'appuie sur la console Ruby interactive IRB ( lien ) pour offrir des fonctions d'historique, d'auto-complétion et d'auto-indentation, ainsi qu'un affichage soigné et une distinction par couleur pour les différents types de sortie. L'interface extensible en ligne de commande, basée sur Thor ( lien ), permet elle d'accéder aux sous-commandes Ronin. Une interface graphique, basée sur JRuby/Swing ( lien ) ou Shoes ( lien ), et une interface Web, Merb ( lien ) ou Sinatra ( lien ), sont à l'étude.

En termes d'architecture, Ronin semble très similaire à la branche 3.x de Metasploit ( lien ). Ces deux environnements d'exploitation reposent en effet sur l'utilisation conjointe de Ruby et d'une interface interactive en ligne de commandes. Bien qu'utilisant également un ORM ( Object Relational Mapper - lien ) pour la gestion objet via des bases de données relationnelles, les similarités s'arrêtent là puisque Ronin utilise DataMapper ( lien ) quand Metasploit privilégie ActiveRecord ( lien ).

Les fonctionnalités Ronin sont fournies par des librairies (ASM, Dorks, Exploits, Gen, SQL, PHP, Web) que les utilisateurs peuvent installer en fonction de leurs besoins. Outre le développement et l'exécution de codes, Ronin offre aussi un scanner de vulnérabilités LFI/RFI ( [Local|Remote] File Inclusion - lien ) pour PHP et le support PHPRPC ( lien ). Les injections SQL ( lien ), les Google Dorks (cf. Goolag - lien ) et la gestion de scanners tiers (NMAP, Nikto) sont également présents.

Comme déjà évoqué, Ronin autorise les utilisateurs à publier et partager leurs codes. Ce partage est possible via des répertoires, les Overlays ( lien ), d'objets et d'extensions qui peuvent être hébergés par l'intermédiaire de n'importe quelle solution VCS de type SVN, Git, Mercurial Hg ou Rsync. Les opérations distantes et locales de création, d'installation et de mises à jour relatives aux contenus des Overlays reposent sur des procédures simples à effectuer via l'interface en ligne de commandes.

A noter la possibilité de charger et installer des éléments depuis plusieurs Overlays différents. Ronin repose sur une architecture où tout est considéré objet (entier, chaîne, ...) et où tous les objets sont stockés localement dans des bases de données relationnelles. La connectivité à ces bases et la simulation objet sont assurées par le composant DataMapper cité précédemment et également responsable de la gestion des caches et des mirroirs pour les objets stockés dans les Overlays.

En ce qui concerne les formats de données, le binaire, le texte, le HTTP, les URI et le HTML sont pris en charge. Les protocoles réseau les plus courants (TCP, UDP, SMTP/ESMTP, POP3, Imap, Telnet et HTTP/HTTPS) sont aussi supportés, au même titre que Ipv4, Ipv6 et la norme de routage CIDR ( lien ). Parmi les autres caractéristiques marquantes, on retrouve la gestion des exceptions ( lien ), un générateur d'aléa et les dumps hexadécimaux ( lien ).

Suite au rachat ( lien ) de Metasploit par Rapid7 ( lien ), Ronin pourrait s'avérer une alternative des plus intéressantes. D'autant plus si d'aventure le modèle de diffusion des codes Metasploit était amené à subir des modifications fondamentales. En attendant, Ronin reste donc un projet à suivre avec intêret. Il le sera encore plus si une forte communauté venait à se former pour l'alimenter, lui offrant ainsi les richesses actuelles de Metasploit.

La vidéo de la présentation « ToorCamp: Ronin - A Platform for Publishing and Mayhem » :



Télécharger Ronin 3.0 ( lien )
Le code source ( lien )
La documentation API ( lien )

Source : Security Shell ( lien )