137,138,139 - Pentesting NetBios

Support HackTricks

NetBios Name Service

NetBIOS Name Service이름 등록 및 해상도, 데이터그램 배포, 세션 서비스와 같은 다양한 서비스를 포함하여 중요한 역할을 하며, 각 서비스에 대해 특정 포트를 사용합니다.

From Wikidepia:

  • 이름 등록 및 해상도를 위한 이름 서비스 (포트: 137/udp 및 137/tcp).

  • 연결 없는 통신을 위한 데이터그램 배포 서비스 (포트: 138/udp).

  • 연결 지향 통신을 위한 세션 서비스 (포트: 139/tcp).

Name Service

장치가 NetBIOS 네트워크에 참여하려면 고유한 이름을 가져야 합니다. 이는 "이름 쿼리" 패킷이 전송되는 브로드캐스트 프로세스를 통해 이루어집니다. 이의 제기가 없으면 이름은 사용 가능한 것으로 간주됩니다. 또는 이름 서비스 서버에 직접 쿼리하여 이름의 가용성을 확인하거나 이름을 IP 주소로 해상할 수 있습니다. nmblookup, nbtscan, nmap과 같은 도구는 NetBIOS 서비스를 열거하는 데 사용되며, 서버 이름과 MAC 주소를 드러냅니다.

PORT    STATE SERVICE    VERSION
137/udp open  netbios-ns Samba nmbd netbios-ns (workgroup: WORKGROUP)

NetBIOS 서비스를 열거하면 서버가 사용하는 이름과 서버의 MAC 주소를 얻을 수 있습니다.

nmblookup -A <IP>
nbtscan <IP>/30
sudo nmap -sU -sV -T4 --script nbstat.nse -p137 -Pn -n <IP>

Datagram Distribution Service

NetBIOS 데이터그램은 UDP를 통해 연결 없는 통신을 허용하며, 직접 메시지를 보내거나 모든 네트워크 이름에 브로드캐스팅할 수 있습니다. 이 서비스는 포트 138/udp를 사용합니다.

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 WikipediaIP Wikipedia 페이지를 참조하십시오.

PORT      STATE SERVICE      VERSION
139/tcp   open  netbios-ssn  Microsoft Windows netbios-ssn

다음 페이지를 읽어 이 서비스를 열거하는 방법을 배우세요:

137,138,139 - Pentesting NetBios

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}
HackTricks 지원하기

Last updated