搜尋
首頁運維linux運維網路掃描工具nmap的使用說明

網路掃描工具nmap的使用說明

Jun 23, 2017 am 11:15 AM
nmap掃描工具網路


本文目錄:

#1.1 選項說明

1.2 嘗試一次掃描

#1.3 掃描目標說明

1.4 連接埠狀態說明

1.5 時間參數最佳化

1.6 掃描作業系統類型

1.7 快速掃描存活的主機

##1.8 快速掃描連接埠


nmap一般就用來掃描主機是否在線(特別是掃描區域網路內存活的機器)、開放了哪些連接埠。其他的功能用的比較少,做滲透的人可能要了解的多些。


1.1 選項說明

nmap需要自行安裝。

shell> yum -y install nmap

使用nmap -h可以查看選項和用法。選項非常多,這是功能強大的工具帶來的必然結果,但簡單使用並用不到幾個選項。

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 : Infilename> from list of hosts/networks

  -iR : Choose random targets

##  -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

  -sn: Ping Scan - disable port scan

  -Pn: Treat all hosts as online -- skip host#  -Pn: Treat all hosts as online -- skip host discoveryskip

  -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

  -PR: ARP ping - does not need HW address -> ; IP translation

  -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

##  -F: Fast mode - Scan fewer ports

##  -F: Fast mode - Scan fewer ports

##  -F: Fast mode - Scanthan 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###  -sV: Probe open ports to determine service/version info###  -sV: Probe open ports to determine service/## ###  -sR: Check what service uses opened ports using RPC scan######  --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:顯示詳細的版本掃描活動(用於偵錯)

SCRIPT SCAN:

  -sC:相當於--script=default

  - -script=: ;是逗號分隔的目錄、腳本檔案或腳本類別清單

  --script-args=: 為腳本提供參數# --script-trace:顯示發送和接收的所有資料

  --script-updatedb:更新腳本資料庫。系統偵測

--osscan-limit:將作業系統偵測限制在有希望的目標#osscan-guess:更積極地猜測作業系統

#也和效能:

 需要的選項以秒為單位,或在數值後面附加「ms」(毫秒)、

 「s」(秒)、「m」(分鐘)或「h」(小時)(例如 30m)。

#  -T:設定計時範本(越高越快)

#  --min-hostgroup/max-hostgroup :並行主機掃描群組大小

  --min-parallelism/max-parallelism :探針並行化

  -- min -rtt-timeout/max-rtt-timeout/initial-rtt-timeout

      偵測往返時間。探測重傳次數。 :調整探測之間的延遲  --min-rate :傳送封包不慢於每秒  --max-rate :傳送封包的速度不超過 每秒

防火牆/IDS 規避與欺騙:

### -f; --mtu :片段資料包(可選地帶有給定的 MTU)###### -D :用誘餌掩蓋掃描#### ######## -S :欺騙來源位址############# -e :使用指定介面###### -g/- -source -port : 使用給定的連接埠號碼######  --data-length : 將隨機資料附加到傳送的封包######  --ip-options ; : 發送帶有指定ip 選項的封包######  --ttl : 設定IP 生存時間欄位######  --spoof-mac ; :欺騙您的MAC 位址######  --badsum:傳送帶有偽造TCP/UDP/SCTP 校驗和的封包######OUTPUT:########### ##  -oN/- oX/-oS/-oG :分別以正常、XML、s|  --reason:顯示連接埠處於特定狀態的原因

  --open:僅顯示開放(或可能開放)的連接埠

  --packet-trace:顯示全部傳送和接收的資料包

--iflist:列印主機介面與路由(用於偵錯)

--log-errors:將錯誤/警告記錄到正常格式的輸出檔案

  --append-output:附加到而不是破壞指定的輸出檔案

  --resume :恢復中止的掃描

  --stylesheet :用於將XML 輸出轉換為HTML 的XSL 樣式表

--webxml:參考來自Nmap.Org 的樣式表以獲得更可移植的XML

--no-stylesheet:防止XSL 樣式表與XML 輸出關聯

MISC:

-6: 啟用IPv6 掃描

-A: 啟用作業系統偵測、版本偵測、腳本掃描與追蹤路由

  --datadir < ;dirname>:指定自訂Nmap 資料檔案位置

  --send-eth/--send-ip:使用原始乙太網路封包或IP 封包傳送

  --privileged:假設使用者俱有完全特權

  --unprivileged:假設使用者缺乏原始套接字權限

  -V:列印版本號

-h:列印此說明摘要頁面。 .0.0/8

nmap - v -iR 10000 -Pn -p 80

常用的就上面標紅的幾個。

#1.2 嘗試一次掃描

nmap掃描一般會比較慢,特別是掃描非本機的時候。

#只掃描生長端口,但是不代表真的只開了兩個端口,這樣不加任何參數的nmap將自動決定掃描1000個高危險端口,但哪些是高危險端口由nmap決定。常見的連接埠能掃描出來。 #可以指定"-p [1-65535] "來掃描所有端口,或者使用"-p-"選項也是全面掃描。預設總是會掃描端口,可以使用-sn選項禁止掃描端口,以加速掃描主機是否最多。風格的位址,Nmap將掃描所有和

該參考IP位址
#具有相同cidr安裝的所有IP位址或主機。 .10.255之間的256台主機,192.168 .10.40/24會做同樣的事情。 255.255之間的65536個IP位址。

#CIDR位元標誌很簡潔但有時不夠靈活。位址或廣播位址可以用逗號分隔的數字或範圍清單為IP位址指定其範圍。不必結束的位址僅限最後的8位元:「0-255.0-255.13.37」將在整個網際網路範圍內掃描所有以「13.37」結束的位址。 ,它們不一定是相同的型別。

虽然目标通常在命令行指定,下列选项也可用来控制目标的选择:

  • -iL (从列表中输入)

中读取目标说明。在命令行输入一堆主机名显得很笨拙,然而经常需要这样。例如DHCP服务器可能导出10000个当前租约列表。列表中的项可以是Nmap在命令行上接受的任何格式(IP地址,主机名,CIDR,IPv6,或者八位字节范围)。每一项必须以一个或多个空格、制表符或换行符分开。如果希望Nmap从标准输入读取列表,则使用"-"作为表示/dev/stdin。

  • --exclude (排除主机/网络)

  • --excludefile (排除文件中的列表),这和--exclude的功能一样,只是所排除的目标是用提供的。

1.3.1 范围扫描示例

指定一个IP地址然后加一个CIDR的掩码位,如192.168.100.22/24,当然写成192.168.100.0/24也是一样的,因为nmap需要的是参考IP。如果扫描的是范围地址,可以192.168.100.1-254这样的书写方式。

[root@xuexi ~]# nmap 192.168.100.1/24
 Starting Nmap 6.40 ( http://nmap.org ) at 2017-06-20 13:22 CSTNmap scan report for 192.168.100.1Host is up (0.00053s latency).
Not shown: 992 filtered ports
PORT     STATE SERVICE21/tcp   open  ftp135/tcp  open  msrpc139/tcp  open  netbios-ssn443/tcp  open  https445/tcp  open  microsoft-ds902/tcp  open  iss-realsecure912/tcp  open  apex-mesh5357/tcp open  wsdapi
MAC Address: 00:50:56:C0:00:08 (VMware)
 
Nmap scan report for 192.168.100.2Host is up (0.000018s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE53/tcp open  domain
MAC Address: 00:50:56:E2:16:04 (VMware)

Nmap scan report for 192.168.100.70Host is up (0.00014s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE22/tcp open  sshMAC Address: 00:0C:29:71:81:64 (VMware)

Nmap scan report for 192.168.100.254Host is up (0.000095s latency).
All 1000 scanned ports on 192.168.100.254 are filtered
MAC Address: 00:50:56:ED:A1:04 (VMware)

Nmap scan report for 192.168.100.62Host is up (0.0000030s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE22/tcp open  sshNmap done: 256 IP addresses (5 hosts up) scanned in 7.96 seconds

一般來說,連接埠全部關閉的很可能不是計算機,而可能是路由器、虛擬網路卡等設備。


1.4 連接埠狀態說明

Nmap功能越來越多,但它賴以成名的是它的核心功能-連接埠掃描。

Nmap把連接埠分成六個狀態:open(開放的),closed(關閉的),filtered(被過濾的),unfiltered(未被過濾的),open|filtered(開放或被過濾的),或closed|filtered(關閉或被過濾的)。

這些狀態並非連接埠本身的性質,而是描述Nmap怎麼看待它們。例如,對於相同的目標機器的135/tcp端口,從同網絡掃描顯示它是開放的,而跨網絡做完全相同的掃描則可能顯示它是filtered(被過濾的)。

  • 1.open:(開放的)用程式正在該連接埠接收TCP或UDP封包。它常常是連接埠掃描的主要目標。

  • 2.closed:(關閉的)關閉的連接埠對於Nmap也是可存取的(它接受Nmap的探測封包並作出回應),但沒有應用程式在其上監聽。

  • 3.filtered:(被過濾的)由於目標上設定了包過濾(如防火牆設備),使得探測報文被阻止到達端口,Nmap無法確定該端口是否開放。過濾可能來自專業的防火牆設備,路由器規則或主機上的軟體防火牆。

  • 4.unfiltered:(未被過濾的)未被過濾狀態意味著連接埠可訪問,但Nmap不能確定它是開放還是關閉。用其它類型的掃描如視窗掃描、SYN掃描、FIN掃描來掃描這些未被過濾的連接埠可以幫助確定連接埠是否開放。

  • 5.open|filtered:(開放或被過濾的):當無法確定連接埠是開放還是被過濾的,Nmap就把該連接埠分割成這種狀態。開放的連接埠不響應就是一個例子。沒有回應也可能意味著目標主機上報文過濾器丟棄了偵測封包或它引發的任何回應。因此Nmap無法確定該連接埠是開放的還是被過濾的。

  • 6.closed|filtered:(關閉或被過濾的)該狀態用於Nmap無法確定連接埠是關閉的還是被過濾的。它只可能出現在IPID Idle掃描中。


1.5 時間參數最佳化

改善掃描時間的技術有:忽略非關鍵的偵測、升級最新版本的Nmap(文檔中說nmap版本越高效能越好)等。此外,最佳化時間參數也會帶來實質的最佳化,這些參數如下:

TIMING AND PERFORMANCE:

  -T: Set timing template (higher is faster)

  --min-hostgroup/max-hostgroup : Parallel host scan group sizes

  --min-parallelism/max-parallelism : Probe parallelization

  --min-rtt-timeout/max-rtt -timeout/initial-rtt-timeout

  --max-retries : Caps number of port scan probe retransmissions.

##  - -host-timeout

以上是網路掃描工具nmap的使用說明的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
了解Linux:定義的核心組件了解Linux:定義的核心組件May 01, 2025 am 12:19 AM

Linux的核心組件包括內核、shell、文件系統、進程管理和內存管理。 1)內核管理系統資源,2)shell提供用戶交互界面,3)文件系統支持多種格式,4)進程管理通過fork等系統調用實現,5)內存管理使用虛擬內存技術。

Linux的構建塊:關鍵組件解釋了Linux的構建塊:關鍵組件解釋了Apr 30, 2025 am 12:26 AM

Linux系統的核心組成部分包括內核、文件系統和用戶空間。 1.內核管理硬件資源並提供基本服務。 2.文件系統負責數據存儲和組織。 3.用戶空間運行用戶程序和服務。

使用維護模式:故障排除和修復Linux使用維護模式:故障排除和修復LinuxApr 29, 2025 am 12:28 AM

維護模式是Linux系統中通過單用戶模式或救援模式進入的特殊運行級別,用於系統維護和修復。 1.進入維護模式使用命令“sudosystemctlisolaterescue.target”。 2.在維護模式中,可以檢查並修復文件系統,使用命令“fsck/dev/sda1”。 3.高級用法包括重置root用戶密碼,需掛載文件系統為讀寫模式並編輯密碼文件。

Linux維護模式:了解目的Linux維護模式:了解目的Apr 28, 2025 am 12:01 AM

維護模式用於系統維護和修復,允許管理員在簡化環境中工作。 1.系統修復:修復損壞的文件系統和啟動加載器。 2.密碼重置:重置root用戶密碼。 3.軟件包管理:安裝、更新或刪除軟件包。通過修改GRUB配置或使用特定鍵進入維護模式,執行維護任務後可安全退出。

Linux操作:網絡和網絡配置Linux操作:網絡和網絡配置Apr 27, 2025 am 12:09 AM

Linux網絡配置可以通過以下步驟完成:1.配置網絡接口,使用ip命令臨時設置或編輯配置文件持久化設置。 2.設置靜態IP,適合需要固定IP的設備。 3.管理防火牆,使用iptables或firewalld工具來控製網絡流量。

Linux中的維護模式:系統管理員指南Linux中的維護模式:系統管理員指南Apr 26, 2025 am 12:20 AM

維護模式在Linux系統管理中扮演關鍵角色,幫助進行系統修復、升級和配置變更。 1.進入維護模式可以通過GRUB菜單選擇或使用命令“sudosystemctlisolaterescue.target”。 2.在維護模式下,可以執行文件系統修復和系統更新等操作。 3.高級用法包括重置root密碼等任務。 4.常見錯誤如無法進入維護模式或掛載文件系統,可通過檢查GRUB配置和使用fsck命令修復。

Linux中的維護模式:何時以及為什麼使用它Linux中的維護模式:何時以及為什麼使用它Apr 25, 2025 am 12:15 AM

使用Linux維護模式的時機和原因:1)系統啟動問題時,2)進行重大系統更新或升級時,3)執行文件系統維護時。維護模式提供安全、控制的環境,確保操作的安全性和效率,減少對用戶的影響,並增強系統的安全性。

Linux:基本命令和操作Linux:基本命令和操作Apr 24, 2025 am 12:20 AM

Linux中不可或缺的命令包括:1.ls:列出目錄內容;2.cd:改變工作目錄;3.mkdir:創建新目錄;4.rm:刪除文件或目錄;5.cp:複製文件或目錄;6.mv:移動或重命名文件或目錄。這些命令通過與內核交互執行操作,幫助用戶高效管理文件和系統。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。