장치가 NetBIOS 네트워크에 참여하려면 고유한 이름을 가져야 합니다. 이는 "이름 쿼리" 패킷이 전송되는 브로드캐스트 프로세스를 통해 이루어집니다. 이의 제기가 없으면 이름은 사용 가능한 것으로 간주됩니다. 또는 이름 서비스 서버에 직접 쿼리하여 이름의 가용성을 확인하거나 이름을 IP 주소로 해상할 수 있습니다. nmblookup, nbtscan, nmap과 같은 도구는 NetBIOS 서비스를 열거하는 데 사용되며, 서버 이름과 MAC 주소를 드러냅니다.
연결 지향 상호작용을 위해, Session Service는 두 장치 간의 대화를 촉진하며, TCP 연결을 통해 포트 139/tcp를 사용합니다. 세션은 "Session Request" 패킷으로 시작되며, 응답에 따라 설정될 수 있습니다. 이 서비스는 더 큰 메시지, 오류 감지 및 복구를 지원하며, TCP는 흐름 제어 및 패킷 재전송을 처리합니다.
세션 내 데이터 전송은 Session Message packets를 포함하며, 세션은 TCP 연결을 닫음으로써 종료됩니다.
이 서비스는 NetBIOS 기능에 필수적이며, 네트워크 전반에 걸쳐 효율적인 통신 및 자원 공유를 가능하게 합니다. TCP 및 IP 프로토콜에 대한 자세한 정보는 각각의 TCP Wikipedia 및 IP Wikipedia 페이지를 참조하십시오.
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}