hacktricks/network-services-pentesting/137-138-139-pentesting-netbios.md
2024-02-10 21:30:13 +00:00

99 lines
6.4 KiB
Markdown

# 137,138,139 - NetBios 펜테스팅
<details>
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>를 통해 AWS 해킹을 처음부터 전문가까지 배워보세요<strong>!</strong></summary>
HackTricks를 지원하는 다른 방법:
* **회사를 HackTricks에서 광고하거나 HackTricks를 PDF로 다운로드**하려면 [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)를 확인하세요!
* [**공식 PEASS & HackTricks 스웨그**](https://peass.creator-spring.com)를 얻으세요.
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요. 독점적인 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션입니다.
* 💬 [**Discord 그룹**](https://discord.gg/hRep4RUj7f) 또는 [**텔레그램 그룹**](https://t.me/peass)에 **참여**하거나 **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**를** **팔로우**하세요.
* **HackTricks**와 **HackTricks Cloud** github 저장소에 PR을 제출하여 **해킹 트릭을 공유**하세요.
</details>
## NetBios 이름 서비스
**NetBIOS 이름 서비스**는 **이름 등록 및 해결**, **데이터그램 분배**, **세션 서비스**와 같은 다양한 서비스에 관여하며, 각 서비스에 대해 특정 포트를 사용합니다.
[Wikidepia에서](https://en.wikipedia.org/wiki/NetBIOS_over_TCP/IP):
* 이름 등록 및 해결을 위한 이름 서비스 (포트: 137/udp 및 137/tcp).
* 연결 없는 통신을 위한 데이터그램 분배 서비스 (포트: 138/udp).
* 연결 지향적 통신을 위한 세션 서비스 (포트: 139/tcp).
### 이름 서비스
NetBIOS 네트워크에 참여하려면 장치는 고유한 이름을 가져야 합니다. 이는 "Name Query" 패킷을 보내는 **브로드캐스트 프로세스**를 통해 달성됩니다. 이에 대한 이의가 없으면 이름은 사용 가능한 것으로 간주됩니다. 또는 **이름 서비스 서버**에 직접 조회하여 이름의 가용성을 확인하거나 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 <IP>
nbtscan <IP>/30
sudo nmap -sU -sV -T4 --script nbstat.nse -p137 -Pn -n <IP>
```
### 데이터그램 분배 서비스
NetBIOS 데이터그램은 UDP를 통해 연결 없는 통신을 지원하며, 직접 메시징 또는 모든 네트워크 이름에 대한 브로드캐스팅을 지원합니다. 이 서비스는 **138/udp** 포트를 사용합니다.
```bash
PORT STATE SERVICE VERSION
138/udp open|filtered netbios-dgm
```
### 세션 서비스
연결 지향적 상호작용을 위해 **세션 서비스**는 **TCP** 연결을 통해 두 장치 간의 대화를 용이하게 합니다. 세션은 "세션 요청" 패킷으로 시작되며 응답에 따라 수립될 수 있습니다. 이 서비스는 큰 메시지, 오류 감지 및 복구를 지원하며, TCP는 흐름 제어와 패킷 재전송을 처리합니다.
세션 내에서의 데이터 전송은 **세션 메시지 패킷**을 통해 이루어지며, 세션은 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}
```
<details>
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>를 통해 AWS 해킹을 처음부터 전문가까지 배워보세요<strong>!</strong></summary>
HackTricks를 지원하는 다른 방법:
* **회사를 HackTricks에서 광고하거나 HackTricks를 PDF로 다운로드**하려면 [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)를 확인하세요!
* [**공식 PEASS & HackTricks 스웨그**](https://peass.creator-spring.com)를 얻으세요.
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요. 독점적인 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션입니다.
* 💬 [**Discord 그룹**](https://discord.gg/hRep4RUj7f) 또는 [**텔레그램 그룹**](https://t.me/peass)에 **참여**하거나 **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)를 **팔로우**하세요.
* **Hacking 트릭을 공유하려면** [**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 저장소에 PR을 제출하세요.
</details>