資訊收集11——nmap
目錄
2.基於ARP協議的活躍主機發現技術(與目標在同一網段使用)
1.走進nmap
1.對單個主機掃描
nmap 192.168.0.105
2.對連續範圍內的ip進行掃描
nmap -sn 192.168.0.100-255
3.對整個子網進行掃描
nmap -sn 192.168.0.0/24
4.對多個不連續的主機進行掃描
nmap -sn 192.168.0.1 192.168.0.110
5.在掃描的時候排除指定的目標
nmap -sn 192.168.0.0/24 --exclude 192.168.0.1
6.對一個文字檔案中的地址列表進行掃描
nmap -sn -iL test.txt
7.隨機確定掃描目標
nmap -sn -iR 3
#隨機地在網際網路上對3個ip地址掃描
8.速度控制
速度控制
-T0-5
--scan-delay
--min-rate/ --max-rate
被卡住的主機(大範圍地址空間)
--host-timeout 10m ( 10s、10h )#卡住超過10分鐘跳過
2.活躍主機發現
- 網路協議與活躍主機發現技術
- 基於ARP協議的活躍主機發現技術
- 基於ICMP協議的活躍主機發現技術
- 基於TCP協議的活躍主機發現技術
- 基於UDP協議的活躍主機發現技術
- 基於SCTP協議的活躍主機發現技術
- Nmap活躍主機發現中與DNS協議相關的選項
1.活躍主機發現技術
2.基於ARP協議的活躍主機發現技術(與目標在同一網段使用)
nmap -sn -PR 192.168.0.100
3.基於ICMP協議的活躍主機發現技術
nmap -sn -PE 140.205.220.96 #通過響應請求和應答發現主機
nmap -sn -PP 140.205.220.96 #時間戳請求和應答發現主機
nmap -sn -PM 140.205.220.96 #地址掩碼請求和應答發現主機
4.基於TCP協議的活躍主機發現技術
nmap -sn -PS 192.168.0.100 #SYN掃描
nmap -sn -PA 192.168.0.100 #ACK掃描,很容易被安全檢測裝置過濾掉
5.基於UDP協議的活躍主機發現技術
nmap -sn -PU 192.168.0.110
6.基於SCTP協議的活躍主機發現技術
nmap -sn -PY 192.168.0.1
7.使用IP協議進行主機發現
nmap -sn -PO 192.168.0.1 #PO預設為使用ICMP使用ICMP,IGMP,IP-in-IP三個協議
nmap -sn -PO 1,2,4 192.168.0.1 #和上邊的相同
ip協議: 1->ICMP;2->IGMP;6->TCP;17->UDP
nmap -sn -PO 6,17 target-ip #使用tcp,udp掃描,很容易被檢測
nmap --data-length 25 target-ip #新增隨機資料的資料包
8.活躍主機發現中與DNS協議相關的選項
nmap -R 192.168.0.1 #列出ip的對應域名
nmap -n 192.168.0.1 #掃描時取消對域名的轉換
nmap --packet-trace -R 192.168.0.1 --dns-servers 114.114.114.114 指定dns伺服器來掃描
3.埠掃描技術
open | 如果目標埠的狀態為open,這表明在該埠有應用程式接收TCP連線或者UDP報文 |
closed | 如果目標埠的狀態為closed,這裡要注意closed並不意味著沒有任何反應,狀態為closed的埠是可訪問的,這種埠可以接收Nmap探測報文並做出響應。相比較而言,沒有應用程式在open上監聽 |
filtered | 如果目標埠的狀態為closed,這裡要注意closed並不意味著沒有任何反應,狀態為closed的埠是可訪問的,這種埠可以接收Nmap探測報文並做出響應。相比較而言,沒有應用程式在open上監聽 |
unfiltered | 這種結果很少見,它表明目標埠是可以訪問的,但是Nmap卻無法判斷它到底是open還是closed的。通常只有在進行ACK掃描時才會出現這種狀態 |
open | fltered | 無法確定埠是開放的還是被過濾了,開放的埠不響應就是一個例子 |
closed|filtered | 無法確定埠是關閉的還是被過濾了。只有在使用idle掃描時才會發生這種情況 |
1.SYM掃描
目標主機的應答 | 對應埠的狀態 |
如果目標主機給出了一個SYNACK應答 | open |
如果目標主機給出了一個RST應答 | closed |
如果目標主機沒有給出應答 | filtered |
ICMP無法抵達錯誤(型別3,程式碼1,2,3,4, 10, 13) | filtered |
nmap -sS 192.168.0.100
1.2 Connect掃描(建立TCP三次握手)
nmap -sT 192.168.0.100 -p80
2.UDP掃描
在使用UDP掃描(使用-sU選項)對一個埠進行UDP掃描時,結果是open、closed 和filtered三者之一。
目標主機的應答 | 目標埠的狀態 |
從目標埠得到任意的UDP應答 | open |
如果目標主機沒有給出應答 | open|filtered |
ICMP埠無法抵達錯誤(型別3,程式碼3) | closed |
ICMP無法抵達錯誤(型別3,程式碼1, 2, 9,10,13) | filtered |
nmap -sU 192.168.0.100
3.TCP FIN掃描
向目標傳送一個FIN資料包,對於所有關閉的埠,根據RFC 793的規定,目標系統應該返回RST標誌。
nmap -sF 192.168.0.100
4.NULL掃描
向目標埠傳送一個不包含任何標誌的資料包,對於所有關閉的埠,目標系統應該返回RST標誌。
nmap -sN 192.168.0.100
5.Xmas Tree掃描
向目標埠傳送一個含有FIN,URG和PUSH標誌的資料包,按照RFC 793規定,對於所有關閉的埠,返回RST
nmap -sX 192.168.0.110
6.idle掃描
- 檢測第三方的IP ID值並記錄下來。
- 在本機上偽造-一個源地址 為第三方主機的資料包,並將資料包傳送給目標主機埠,根據目標埠狀態的不同,目標主機可能會導致第三方主機的IP ID值增加。
- 再回來檢查第三方主機的IP ID值。比較這兩次的值。
nmap -Pn -p- -sI 192.168.0.128 192.168.0.100
#-sI指定一個第三方主機192.168.0.128對目標主機192.168.0.100進行埠掃描,-p-是全埠掃描
3.2指定掃描的埠
1.掃描最常見的100個埠
nmap -F 192.168.0.100
2.指定埠進行掃描
nmap 192.168.0.100 -p 3306
3.使用名字來指定掃描埠
nmap -p http,mysql 192.168.0.100
4.使用協議來指定掃描埠
root@kali:/home/kali# nmap -sU -sT -p U:53,T:25 192.168.0.100
Starting Nmap 7.80 ( https://nmap.org ) at 2020-11-18 21:49 EST
Nmap scan report for 192.168.0.100 (192.168.0.100)
Host is up (0.00032s latency).
PORT STATE SERVICE
25/tcp open smtp
53/udp open domain
5.掃描所有埠
nmap -p* 192.168.0.100
nmap -p- 192.168.0.100
6.常用埠掃描
root@kali:/home/kali# nmap --top-ports 10 192.168.0.100
Starting Nmap 7.80 ( https://nmap.org ) at 2020-11-18 21:51 EST
Nmap scan report for 192.168.0.100 (192.168.0.100)
Host is up (0.00024s latency).
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
23/tcp open telnet
25/tcp open smtp
80/tcp open http
110/tcp closed pop3
139/tcp open netbios-ssn
443/tcp closed https
445/tcp open microsoft-ds
3389/tcp closed ms-wbt-server
4.遠端作業系統與服務檢測
1.掃描系統指紋
nmap -O -F --fuzzy --osscan-guess 192.168.0.128
nmap -O -Fvvv --fuzzy --osscan-guess 192.168.0.128 #檢視詳細資訊
2.1版本探測
nmap -sV 192.168.0.100 #版本探測
--allports #不為版本探測排除任何埠
--version-intensity #0-9 預設是7
--version-light #輕量級模式,相當於--version-intensity 2
--version-all #嘗試每一個探測
--version-trace #跟蹤版本掃描活動
-sR #RPC掃描
5.安全檢測躲避技術
-f IP資料段分片( 8位元組一片)
-D 偽造多個源IP真實IP隱藏起中
-S 偽造源地址
-g 指定源埠
--proxies url1,url2 : HTTP/SOCKS4代理
--data 附加16進位制payload ( AABB02、\xAA\xBB\x02、 0x
--data-string 附加ASCII字元"asd asd asd'
--ip-options 指定IP 協議
--ttl 指定TTL
-spoof-mac 偽造mac地址
--badsum 指定錯誤checksum
6.使用NSE指令碼
分類 | 描述 |
auth | 這個分類中包含的都是負責處理鑑權證書(繞開鑑權)的指令碼這個分類中包含的都是負責處理鑑權證書(繞開鑑權)的指令碼 |
broadcast | 這個分類中包含的都是在區域網內探查更多服務開啟狀況,如CHCP、DNS、SQLServer |
brute | 這些都是針對常見的應用,如HTTP/FTP等使用暴力破解密碼的指令碼 |
default | 這是使用sC或-A引數掃描時預設的指令碼,提供基本指令碼掃描能力 |
discovery | 對網路進行更多的資訊收集,如SMB列舉、SNMP查詢等 |
dos | 用來發起拒絕服務攻擊的指令碼 |
exploit | 用來完成對目標系統安全漏洞滲透的指令碼 |
external | 針對第三方服務的指令碼 |
fuzzer | 進行模糊測試的指令碼,傳送異常的包到目標機,探測出潛在漏洞 |
intrusive | 可能會引起目標系統崩潰或者對目標網路造成極大負擔的指令碼。這類指令碼很容易被對方的防火牆或者IDS發現 |
malware | 用來檢測惡意軟體的指令碼 |
safe | 在任何情況下都是安全無害的指令碼 |
version | 負責增強服務與版本掃描(Version Detection)功能的指令碼 |
vuln | 負責檢查目標機是否有常見的漏洞,如是否有著名的MS08-067 |
1.列舉web伺服器上執行的服務
nmap -p80 --script http-methods 192.168.0.100
2.向NSE指令碼中傳遞引數
nmap -p80 --script http-methods --script-args http.useragent="Mozilla/5.0" 192.168.0.100
3.1targets-sniffer.NSE指令碼
nmap --script targets-sniffer 192.168.0.0/24
3.2密碼審計類指令碼
1.mysql-brute.NSE
nmap -p 3306 --packet-trace --script mysql-brute 192.168.0.128
2.smtp爆破
nmap -p 25 --script smtp-brute 192.168.0.128
nmap -p 25 --script smtp-brute --script-args userdb=/username.txt passdb=/password.txt 192.168.0.128
nmap -p 25 --script smtp-brute --script-args brute.firstOnly 192.168.0.128 #獲取一個正確賬號就停止
brute.mode指定破解順序
brute.mode=user 選取一個使用者名稱,所有密碼匹配,依次往下
brute.mode=pass 選取一個密碼,所有使用者名稱
3.3漏洞掃描指令碼
nmap --script /usr/share/nmap/scripts/smb-vuln-ms08-067.nse 192.168.0.1
nmap --script "smb-vuln-ms08-067" 192.168.0.128
nmap --script "smb*" 192.168.0.128
7.nmap格式化輸出
nmap 192.168.0.100 -oN "/A.txt"
nmap 192.168.0.100 -oX a.xml
nmap 192.168.0.100 -oG AAAA.grep
相關文章
- test資訊收集11(mimikatz使用)
- 滲透測試需要需要學什麼?資訊收集工具之Nmap
- Nmap資訊命令詳解
- 資訊收集
- [統計資訊系列7] Oracle 11g的自動統計資訊收集Oracle
- 手動收集——收集統計資訊
- 內網資訊收集內網
- 資訊收集流程
- Linux本地資訊收集Linux
- Linux常用資訊收集命令Linux
- kali常用的資訊收集
- 收集統計資訊方案
- Oracle收集統計資訊Oracle
- 網路安全中資訊收集是什麼?資訊收集分為哪幾類?
- 滲透測試-資訊收集
- 滲透測試——資訊收集
- 滲透測試------資訊收集
- 收集全庫統計資訊
- powershell滲透-資訊收集命令
- 微課sql最佳化(3)、統計資訊收集(2)-如何收集統計資訊SQL
- 6 收集資料庫統計資訊資料庫
- web安全前期的資訊收集工作Web
- 紅藍對抗之資訊收集
- stored procedure 收集session wait 資訊(轉)SessionAI
- 【TABLE】Oracle表資訊收集指令碼Oracle指令碼
- 滲透測試之資訊收集
- Windows環境下的資訊收集Windows
- 讀書筆記-資訊收集1筆記
- 【統計資訊】Oracle常用的收集統計資訊方式Oracle
- nmap
- Oracle 11g系統自動收集統計資訊的一些知識Oracle
- 資訊收集利器|一款功能強大的子域收集工具
- 內網滲透-內網資訊收集內網
- 一文教你Kali資訊收集
- oracle 統計資訊檢視與收集Oracle
- 保護自己之手機定位資訊收集
- Docker應用容器日誌資訊收集Docker
- [20190622]收集SQLNet Message From Client資訊.txtSQLclient