Nmap options

Nmap option

Nmap 6.40 ( http://nmap.org )
Usage: nmap [Scan Type(s)] [Options] {target specification}

TARGET SPECIFICATION:

Can pass hostnames, IP addresses, networks, etc.
Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
-iL : Input from list of hosts/networks
-iR : Choose random targets
--exclude : Exclude hosts/networks
--excludefile : Exclude list from file

HOST DISCOVERY:

-sL: List Scan - simply list targets to scan
-sn: Ping Scan - disable port scan
-Pn: Treat all hosts as online -- skip host discovery
-PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports
-PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes
-PO[protocol list]: IP Protocol Ping
-n/-R: Never do DNS resolution/Always resolve [default: sometimes]
--dns-servers : Specify custom DNS servers
--system-dns: Use OS's DNS resolver
--traceroute: Trace hop path to each host

SCAN TECHNIQUES:

-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans
-sU: UDP Scan
-sN/sF/sX: TCP Null, FIN, and Xmas scans
--scanflags : Customize TCP scan flags
-sI : Idle scan
-sY/sZ: SCTP INIT/COOKIE-ECHO scans
-sO: IP protocol scan
-b : FTP bounce scan

PORT SPECIFICATION AND SCAN ORDER:

-p : Only scan specified ports
Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
F: Fast mode - Scan fewer ports than the default scan
-r: Scan ports consecutively - don't randomize
--top-ports : Scan most common ports
--port-ratio : Scan ports more common than

SERVICE/VERSION DETECTION:

-sV: Probe open ports to determine service/version info
--version-intensity : Set from 0 (light) to 9 (try all probes)
--version-light: Limit to most likely probes (intensity 2)
--version-all: Try every single probe (intensity 9)
--version-trace: Show detailed version scan activity (for debugging)

FIREWALL/IDS EVASION AND SPOOFING:

-f; --mtu : fragment packets (optionally w/given MTU)
-D : Cloak a scan with decoys
-S : Spoof source address
-e : Use specified interface
-g/--source-port : Use given port number
--data-length : Append random data to sent packets
--ip-options : Send packets with specified ip options
--ttl : Set IP time-to-live field
--spoof-mac : Spoof your MAC address
--badsum: Send packets with a bogus TCP/UDP/SCTP checksum


1. 포트 스캔 기술

  • TCP SYN 스캔 (-sS)
프로토콜(TCP) 포트를 스캔하는데 가장 빠른 방법으로 지금까지 단연 인기 있는 스캔방법이다. 이 스캔은 연결 스캔보다 더 비밀스러우며 모든 기능적인 TCP 스택에 대해 잘 작동한다.
  • TCP 연결 (-sT)
연결 스캔은 대부분의 다른 방법처럼 로우 패킷에 의존하기 보다는 장치를 스캔하는데 같은 이름의 시스템 콜을 사용한다. 이 스캔은 대부분 권한이 없는 유닉스 사용자들이 사용하며 그런 경우 SYN스캔이 작동하지 않기 때문에 IPv6를 대상으로 사용된다.
  • UDP (-sU)
UDP 포트 스캔이다.
  • TCP FIN, Xmas, Nll (-sF, -sX, sN)
특정 목적 스캔 방법으로 방화벽 뒤에 있는 시스템을 탐험하기 위해 방화벽을 몰래 지나치는데 사용한다. 불행히도 이 스캔들은 일부 시스템이 보여주지 않는 대상 시스템의 행동에 의존한다.
  • TCP ACK (-sA)
ACK 스캔은 보통 방화벽 규치 세그를 정밀하게 표시하기 위해 사용한다. 특히 ACK스캔은 방화벽 규칙이 제대로 된 상태에 있는지 아닌지를 이해하는데 도움을 준다. 단점을 열린 포트와 닫힌 포트를 구별하지 못하는 점이다.
  • TCP Window (-sW)
윈도우 스캔은 ACK스캔과 같은데 특정장치에 대해서는 열린 포트와 닫힌 포트를 구별할 수 있다는 점에서 다르다.
  • TCP Maimon (-sM)
이 모호한 방화벽-침투 스캔방법은 FIN스캔과 유사한테 ACK플래그도 포함한다. 이는 더 많은 패킷 필터링 방화벽을 잡게 허락하는데 단점은 FIN스캔보다 더 적은 시스템에 대해 작동한다는 점이다.
  • TCP Idle (-sl)
Idle 스캔은 모든 방법 중 가장 비밀스러운 스캔방법이며 때로는 신뢰성이 있는 IP주소 관계조차 탐험한다. 불행히도 이 스캔 역시 느리고 복잡하다.
  • IP 프로토콜 (-sO)
프로토콜 스캔은 어느 IP프로토콜이 대상 장치에 의해 지원되는지를 결정한다. 이것은 TCP나 UDP포트 번호보다는 IP프로토콜 숫자를 통해 순환하기 때문에 기술적으로 포트 스캔이 아니다. 하지만 여전히 -P 옵션을 사용해 스캔된 프로토콜 번호를 선택하고 결과를 보통의 포트 테이블 형식으로 보고하며 포트 스캐닝 방법과 같은 스캔엔진을 사용한다.
  • TCP FTP 바운스 (-b)
TCP FTP 바운스 스캔 종류는 FTP서버를 속여 프록시로 포트 스캔을 수행하게 한다. FTP서버는 이제 이 스캔을 방지하게 패치됐다.

2. 포트 선택

  • -p
-p인수를 통해 해당 포트를 지정한다. port대신 서비스가 매치될 수도 있다.(-p ssh)
  • -p 80, 21, 22
, 를 이용해 다수의 포트를 선택할 수 있다.
  • -p 20-23
-를 이용해 범위를 확장할 수 있다.
  • -p-
전체 포트(1 ~ 65535)를 스캔한다.
  • -p http*
와이드카드(*)는 포트와 유사한 이름의 서비스를 매치시키는데 사용될수 있다.

3. 서비스 탐지

  • -sV
열려있는 해당 포트의 서비스와 버젼을 탐지한다.

4. 방화벽, IDS 우회 및 스푸핑

  • -f; --mtu
fragment packets 크기를 조정하여 탐지를 어렵게 한다.
  • -S
source IP address를 변조한다.
  • -g; --source-port
source port를 변조한다.
  • -e
특정 인터페이스를 선택한다.
  • --data-length
랜덤 데이터를 패킷에 추가한다.
  • --ttl
time-to-live 필드를 설정한다.
  • --spoof-mac
MAC 주소를 변조한다.
  • --badsum
TCP/UDP/SCTP패킷에 잘못된 checksum 값을 설정한다.


참고:http://sol9501.blog.me/70102045865
 

0 개의 댓글:

댓글 쓰기