Cet article propose un bref récit sur ce que peut nous révéler quelque chose d'aussi habituel que NetBIOS. Quelles informations cela peut-il fournir à un potentiel attaquant/pentester ?
Le domaine d'application des techniques de renseignement concerne les réseaux internes, c'est-à-dire isolés et non accessibles depuis l'extérieur. De telles réseaux existent généralement dans n'importe quelle entreprise, même très petite.
En soi NetBIOS est généralement utilisé pour obtenir un nom de réseau. Et cela suffira pour réaliser au moins quatre choses.
Détection des hôtes
Grâce au fait que NetBIOS peut utiliser UDP comme transport, sa vitesse permet de détecter des hôtes dans de très grands réseaux. Par exemple, l'outil nbtscan, faisant partie du package éponyme, peut résoudre en seulement 2 secondes (pouvant saturer le réseau) les adresses du réseau au format 192.168.0.0/16, tandis qu'un scan TCP traditionnel prendra des dizaines de minutes. Cette caractéristique peut être utilisée comme technique de détection des hôtes (host sweep) dans des réseaux très étendus, dont on ne connaît rien avant de lancer nmap. Bien que le résultat ne garantisse pas une détection à 100 %, car principalement, seuls les hôtes Windows répondront et encore pas tous, cela permettra tout de même de déterminer à peu près dans quels intervalles se trouvent les hôtes vivants.
Identification des hôtes
En utilisant les résultats des noms obtenus à partir des adresses IP :

on peut voir : au-delà du fait que le nom révèle le propriétaire de la station de travail (bien que cela ne soit pas toujours le cas), l'une des adresses se distingue clairement des autres. On peut voir que le nom obtenu est KALI. Ce comportement est généralement caractéristique des implémentations unixde SMB/NetBIOS dans le cadre du package samba ou de très anciennes versions de Windows 2000.
Obtention du nom KALI, tandis que sur d'autres hôtes, cela <unknown> indique la présence d'un soi-disant null-session. Avec les paramètres par défaut, les serveurs SMBsont susceptibles d'y recourir. linux Null-session permet simplement d'obtenir des informations supplémentaires de manière complètement anonyme (comme on peut le voir sur l'écran), telles que la politique de mot de passe local, la liste des utilisateurs locaux, des groupes et la liste des ressources partagées : Souvent sur

linux SMB Linux SMB-sur les serveurs, il peut y avoir des partages accessibles publiquement, non seulement en lecture, mais même en écriture. La présence de ces deux types présente divers risques, dont l'utilisation dépasse le cadre de cet article.
NetBIOS permet également d'obtenir les noms de tous les types stockés par la station de travail :

dans ce cas, cela permet de savoir que l'hôte est également un contrôleur de domaine. ARRIVA.
Il convient également de noter que NetBIOS permet d'obtenir mac-adresse. En outre, contrairement aux requêtes arp, les requêtes NetBIOS peuvent sortir du sous-réseau. Cela peut être utile si, par exemple, il est nécessaire de localiser un ordinateur portable ou un matériel spécifique sur le réseau, en connaissant son fabricant. Étant donné que les trois premiers octets mac-d'adresse identifient le fabricant, on peut, en envoyant de telles NetBIOS-requêtes dans tous les sous-réseaux connus, tenter de trouver l'appareil recherché (http://standards-oui.ieee.org/oui.txt).
Détermination de l'appartenance à un domaine
Souvent, lors des déplacements dans les réseaux internes d'entreprise, il est nécessaire d'attaquer spécifiquement la station de travail, intégrée au domaine (par exemple, pour obtenir des privilèges au niveau d'administrateur de domaine) ou vice versa. Dans ce cas, NetBIOS cela peut à nouveau être utile :

Dans ce cas, grâce à NetBIOS tous les noms de tous les types ont été obtenus. Parmi eux, on peut voir, en plus du nom du PC (ce qui a déjà été obtenu auparavant), aussi le nom du groupe de travail. Par défaut, pour windows c'est généralement quelque chose comme WORKGROUP ou IVAN-PC, mais si la station de travail est dans un domaine, alors son groupe de travail est le nom du domaine.
Ainsi, grâce à NetBIOS on peut savoir si la station de travail est dans un domaine et, si oui, dans lequel.
Si l'on a besoin d'obtenir la liste des hôtes de domaine dans le sous-réseau, une seule requête de diffusion avec le nom du domaine souhaité suffira :

en réponse, tous les hôtes appartenant à ce domaine répondront.
Détection des hôtes multihomés
Et enfin, une autre technique probablement très peu connue, qui est tout simplement indispensable pour trouver des chemins dans des réseaux protégés, peut-être même physiquement isolés. Cela peut être des réseaux d'ateliers d'entreprises, remplis de contrôleurs. L'accès à ce réseau pour un attaquant signifie la possibilité d'influencer le processus technologique, et pour l'entreprise, le risque de subir d'énormes pertes.
La question est que, même si le réseau est isolé du réseau d'entreprise, il n'est pas rare que certains administrateurs, soit par paresse, soit pour d'autres raisons, décident d'activer une autre carte réseau sur leurs ordinateurs pour accéder à ce réseau. Cela se fait bien sûr en contournant toutes les règles des pare-feux d'entreprise. C'est pratique, n'est-ce pas, mais pas très sécurisé ; si vous êtes piraté, vous deviendrez alors un pont vers ce réseau et vous en porterez la responsabilité.
Cependant, pour un attaquant, il y a un problème ici : trouver cet administrateur qui s'est connecté à un réseau protégé de manière illégale. De plus, c'est un problème difficile même pour les responsables de la sécurité du réseau. Dans les grandes entreprises, c'est vraiment un défi, comme chercher une aiguille dans une botte de foin.
Dans cette situation, il y aurait deux options évidentes pour l'attaquant :
1. essayer d'utiliser chaque PC dans la sous-réseau d'entreprise comme passerelle vers le réseau recherché. Ce serait très pratique, mais cela est rare, car sur windows les hôtes le transfert IP est presque toujours désactivé. De plus, cette vérification n'est possible qu'à l'intérieur de sa propre sous-réseau, et elle nécessite également que l'attaquant connaisse exactement l'adresse cible du réseau isolé.
2. essayer d'accéder à chaque hôte à distance et d'exécuter la simple commande ipconfig/ifconfig. Et ici, tout n'est pas si simple. Même si l'attaquant a acquis les droits d'administrateur de domaine, les pare-feux et les pare-feux locaux ne sont pas annulés. Donc, cette tâche ne peut pas être automatisée à 100 %. En conséquence, il reste pénible de devoir entrer dans chaque hôte, en contournant les pare-feux (qui bloquent souvent le port 445/tcp), en espérant enfin voir l'interface réseau souhaitée.
Cependant, il existe un moyen beaucoup plus simple. Il y a une méthode extrêmement simple qui permet d'obtenir sur tel ou tel hôte une liste des interfaces réseau. Supposons que nous avons un hôte :

il s'agit d'une résolution inversée de l'adresse IP → nom réseau. Si nous essayons maintenant de faire une résolution directe, nom réseau → adresse IP :

nous découvrirons que cet hôte est également une passerelle (apparemment) vers un autre réseau. Il convient de noter que dans ce cas, la requête était diffusée. En d'autres termes, seuls les hôtes de la sous-réseau de l'attaquant l'entendront.
Si l'hôte cible se trouve en dehors de la sous-réseau, on peut envoyer une requête ciblée :

Dans ce cas, il est clair que la cible se situe en dehors du sous-réseau de l'attaquant. Avec la clé -B, il a été spécifié que la requête doit être envoyée à une adresse spécifique, et non à une adresse de diffusion.
Il ne reste plus qu'à collecter rapidement des informations sur tout le sous-réseau d'intérêt, et non sur une seule adresse. Pour cela, on peut utiliser un petit python-script :

Et quelques secondes plus tard :

C'est l'hôte dédié, dans ce cas improvisé, qui serait la première cible de l'attaquant s'il cherchait à pénétrer le réseau 172.16.1/24.

Les noms répétés sur différentes adresses IP indiquent que l'hôte a aussi deux cartes réseau, mais dans le même sous-réseau. Il convient de noter que NetBIOS ne divulgue pas alias-s (qui peuvent facilement être identifiés via des requêtes ARP comme IP avec les mêmes mac). Dans ce cas adresse IP ont des mac.
Un autre exemple d'utilisation de cette technique est le Wi-Fi public. On peut parfois rencontrer des situations où, parmi les appareils invités se connectant à un réseau public, le personnel d'une entreprise fermée se connecte également. Grâce à cette technique de renseignement, un attaquant pourra très rapidement tracer un chemin d'accès à un réseau fermé :

Dans ce cas, parmi 65 clients du Wi-Fi public, il y avait deux stations de travail ayant une interface supplémentaire, probablement liée au réseau d'entreprise.
Si parfois, entre les segments de réseau ou directement sur les stations de travail, il y a une filtration du trafic sur le port 445/tcp, empêchant l'accès à distance au système (exécution de code à distance), dans ce cas, pour la résolution des noms par NetBIOS on utilise le port 137/udp, dont le blocage est rare, car cela nuirait considérablement à la convivialité du travail sur le réseau, par exemple, l'environnement réseau pourrait disparaître, etc.
Comme on dit, l'énumération est la clé
Y a-t-il une protection contre cela ? Il n'y en a pas, car ce n'est pas une vulnérabilité dans tous les cas. C'est juste une fonctionnalité par défaut de ce qui est très peu disponible par défaut dans windows (dans linux le comportement est légèrement différent). Et si vous vous êtes soudainement connecté de manière non coordonnée dans un segment fermé, l'attaquant vous trouvera rapidement.
Source : habr.com
