# 137,138,139 - Pentesting NetBios {% hint style="success" %} Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Check the [**subscription plans**](https://github.com/sponsors/carlospolop)! * **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %} ## NetBios Name Service **NetBIOS Name Service** відіграє важливу роль, включаючи різні сервіси, такі як **реєстрація та розв'язання імен**, **розподіл датаграм** та **сесійні сервіси**, використовуючи специфічні порти для кожного сервісу. [From Wikidepia](https://en.wikipedia.org/wiki/NetBIOS_over_TCP/IP): * Сервіс імен для реєстрації та розв'язання імен (порти: 137/udp та 137/tcp). * Сервіс розподілу датаграм для без'єднаної комунікації (порт: 138/udp). * Сесійний сервіс для орієнтованої на з'єднання комунікації (порт: 139/tcp). ### Name Service Щоб пристрій міг брати участь у мережі NetBIOS, він повинен мати унікальне ім'я. Це досягається через **процес широкомовлення**, де надсилається пакет "Запит імені". Якщо заперечень не надходить, ім'я вважається доступним. Альтернативно, можна безпосередньо запитати **сервер служби імен**, щоб перевірити доступність імені або розв'язати ім'я в IP-адресу. Інструменти, такі як `nmblookup`, `nbtscan` та `nmap`, використовуються для перерахунку служб NetBIOS, виявляючи імена серверів та MAC-адреси. ```bash PORT STATE SERVICE VERSION 137/udp open netbios-ns Samba nmbd netbios-ns (workgroup: WORKGROUP) ``` Перераховуючи службу NetBIOS, ви можете отримати імена, які використовує сервер, та MAC-адресу сервера. ```bash nmblookup -A nbtscan /30 sudo nmap -sU -sV -T4 --script nbstat.nse -p137 -Pn -n ``` ### Datagram Distribution Service NetBIOS датаграми дозволяють безконнектне спілкування через UDP, підтримуючи прямі повідомлення або трансляцію на всі мережеві імена. Ця служба використовує порт **138/udp**. ```bash PORT STATE SERVICE VERSION 138/udp open|filtered netbios-dgm ``` ### Session Service Для орієнтованих на з'єднання взаємодій, **Session Service** полегшує розмову між двома пристроями, використовуючи **TCP** з'єднання через порт **139/tcp**. Сесія починається з пакета "Session Request" і може бути встановлена на основі відповіді. Сервіс підтримує більші повідомлення, виявлення помилок і відновлення, при цьому TCP обробляє управління потоком і повторну передачу пакетів. Передача даних у межах сесії включає **Session Message packets**, при цьому сесії завершуються закриттям TCP з'єднання. Ці сервіси є невід'ємною частиною функціональності **NetBIOS**, що забезпечує ефективну комунікацію та обмін ресурсами в мережі. Для отримання додаткової інформації про протоколи TCP та IP, зверніться до їх відповідних [TCP Wikipedia](https://en.wikipedia.org/wiki/Transmission_Control_Protocol) та [IP Wikipedia](https://en.wikipedia.org/wiki/Internet_Protocol) сторінок. ```bash PORT STATE SERVICE VERSION 139/tcp open netbios-ssn Microsoft Windows netbios-ssn ``` **Прочитайте наступну сторінку, щоб дізнатися, як перерахувати цю службу:** {% content-ref url="137-138-139-pentesting-netbios.md" %} [137-138-139-pentesting-netbios.md](137-138-139-pentesting-netbios.md) {% endcontent-ref %} ## HackTricks Автоматичні команди ``` Protocol_Name: Netbios #Protocol Abbreviation if there is one. Port_Number: 137,138,139 #Comma separated if there is more than one. Protocol_Description: Netbios #Protocol Abbreviation Spelled out Entry_1: Name: Notes Description: Notes for NetBios Note: | Name service for name registration and resolution (ports: 137/udp and 137/tcp). Datagram distribution service for connectionless communication (port: 138/udp). Session service for connection-oriented communication (port: 139/tcp). For a device to participate in a NetBIOS network, it must have a unique name. This is achieved through a broadcast process where a "Name Query" packet is sent. If no objections are received, the name is considered available. Alternatively, a Name Service server can be queried directly to check for name availability or to resolve a name to an IP address. https://book.hacktricks.xyz/pentesting/137-138-139-pentesting-netbios Entry_2: Name: Find Names Description: Three scans to find the names of the server Command: nmblookup -A {IP} &&&& nbtscan {IP}/30 &&&& nmap -sU -sV -T4 --script nbstat.nse -p 137 -Pn -n {IP} ``` {% hint style="success" %} Вивчайте та практикуйте AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Вивчайте та практикуйте GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Підтримайте HackTricks * Перевірте [**плани підписки**](https://github.com/sponsors/carlospolop)! * **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи Telegram**](https://t.me/peass) або **слідкуйте** за нами в **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Діліться хакерськими трюками, надсилаючи PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) репозиторіїв на github.
{% endhint %}