네트워크/네트워크 보안

nmap

비니화이팅 2018. 1. 19. 10:22

nmap

아래의 홈페이지에서 다운로드 받을 수 있다.

https://nmap.org/

 

- profile : scan option 이다.(대부분 Intense scan 사용)

- command : profile에서 옵션을 지정하면 그에 맞게 바뀐다.


옵션

nmap [scan type] [options] [target]

Scan

Type

-sS

TCP SYN scan = half-open scan

-sT

TCP Connect scan = open scan

-sU

UDP scan

-sF

TCP FIN scan : FIN패킷 이용

-sX

TCP Xmas scan : FIN, PSH, URG 패킷 이용

-sN

TCP NULL scan : NULL 패킷 이용

-sA

TCP ACK scan

-sP

Ping Scan

-D

Decoy scan : 실제 스캐너 주소 외에도 다양한 주소로 위조하여 스캔

-b

TCP Bounce scan

Port

Option

-p 22

22번 포트 스캔

-p ssh

ssh로 스캔

-p 20, 25, 80

여러 포트 스캔

-p 1-1023

1-1023포트 스캔

-pT:21, 23, 110, U:56

TCP 21, 23, 110번 포트와 UDP 53번 포트를 스캔

Output

Option

-v

상세 내역 출력

-d

Debugging

-oN 파일

결과를 일반 파일 형식으로 출력

-oX 파일

결과를 XML 파일 형식으로 출력

-oG 파일

결과를 Grepable 파일 형식으로 출력

-oA 파일

일반(.nmap), XML, grepable(.gnmap)파일 형식으로 출력

기타

Option

-O

OS정보 출력

-F

빠른 네트워크 스캐닝

-T0~-T5

T0 : 아주 느리게, T5:아주 빠르게

타겟

www.xxx.com

호스트이름 지정

192.168.0.10

특정 IP지정

192.168.0.0/24

192.168.159 대역 지정



<사용 예>
ex) nmap –T4 –sU –p 53,123 192.168.159.149

ex) nmap –T4 –sS –p 23,80 192.168.159.149 –D 10.10.10.1,10.10.10.2(실제 아이피 외에도 위조된 IP로 스캔)

ex) nmap –T4 –sS –oN “NMAP_OUTPUT/Nomal.out” –p 23,80 192.168.159.149



STATE

open

서비스 열려있음

closed

서비스 닫혀있음

filtered

방화벽에 의해 차단

open|filtered

해당 포트가 열린 상태이거나 차단되는 경우(응답 없는 경우)



TCP Connect Scan=Open Scan

- 결과는 가장 정확하지만 연결 설정을 직접 수행하므로 시스템 로그가 남는다.

- 연결이 완료되면 RST+ACK전송하여 연결을 강제로 종료한다.



=> TCP Scan 패킷 분석(Port open 시)


=> TCP Scan 패킷 분석(Port close 시)


포트 열렸을 경우

SYN+ACK

포트 닫혔을 경우

RST+ACK

방화벽에 의해 필터링 되고 있는 경우

응답이 없거나 ICMP Destination Unreachable 메시지

(일반적으로 방화벽은 ICMP 메시지 응답을 주지 않도록 설정돼있음)




UDP Scan

- ICMP Unreachable메시지를 이용한다.

- UDP포트의 Open여부를 확인하기 위한 스캐닝이다.



=> UDP Scan 패킷 분석(Port close 시)

- 아무 패킷도 돌아오지 않는다.


=> UDP Scan 패킷 분석(Port close 시)




포트 열렸을 경우

응답이 없음

포트 닫혔을 경우

 ICMP Destination Unreachable 메시지



TCP SYN Scan=Half-open Scan

- 완전한 연결을 수행하지 않기 때문에 시스템 로그가 남지 않아 그 흔적을 알 수 없다.

- SYN+ACK패킷이 오면 RST를 보내 강제로 종료한다.




=> TCP half open Scan 패킷 분석(Port open 시)


=> TCP half open Scan 패킷 분석(Port close 시)


포트 열렸을 경우

SYN+ACK

포트 닫혔을 경우

RST+ACK


X-mas Stealth Scan

- TCP 헤더의 제어비트를 비정상적으로 설정해서 스캔한다.

- 스캔 대상 호스트에 로그를 남기지 않는다.

- X-mas : ACK, FIN, RST, SYN, URG의 패킷 묶음



포트 열렸을 경우

응답이 없음

포트 닫혔을 경우

RST+ACK



FIN Stealth Scan

- TCP 헤더의 제어비트를 비정상적으로 설정해서 스캔한다.

스캔 대상 호스트에 로그를 남기지 않는다.

- 연결되어있지 않은 포트에 일부 제어비트(FIN, PSH, URG)를 설정한 탐지패킷을 전송한다.



포트 열렸을 경우

응답이 없음

포트 닫혔을 경우

RST+ACK



NULL Stealth Scan

- TCP 헤더의 제어비트를 비정상적으로 설정해서 스캔한다.

스캔 대상 호스트에 로그를 남기지 않는다.

- 연결되어있지 않은 포트에 제어비트를 아무것도 설정하지 않은 탐지패킷을 전송한다.



포트 열렸을 경우

응답이 없음

포트 닫혔을 경우

RST+ACK



Ping 스캔-방화벽 우회
https://www.hackingarticles.in/understanding-guide-nmap-ping-scan-firewall-bypass/