1. 程式人生 > >LINUX下-nmap數據結果的可視化

LINUX下-nmap數據結果的可視化

col subject 批量 test mapper stat 容器 自動安裝 ...

nmap全稱為Network Mapper。是一款網絡掃描和主機檢測的非常有用的工具。 Nmap是不局限於僅僅收集信息和枚舉,同時可以用來作為一個漏洞探測器或安全掃描器。關於工具的使用,網上有很多教程,這裏不做具體說明。

以下我用UBUNTU演示

在LINUX環境下,掃描的結果通常是字符形式的如下:

 #sudo nmap -O 192.168.11.114                                   

Starting Nmap 6.40 ( http://nmap.org ) at 2018-10-24 09:27 CST
Nmap scan report for ubuntu-14.04 (192.168.11.114)
Host is up (0.000038s latency).
Not shown: 996 closed ports
PORT     STATE    SERVICE
22/tcp   open     ssh
80/tcp   filtered http
443/tcp  filtered https
8000/tcp filtered http-alt
No exact OS matches for host (If you know what OS is running on it, see http://nmap.org/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=6.40%E=4%D=10/24%OT=22%CT=1%CU=31262%PV=Y%DS=0%DC=L%G=Y%TM=5BCFCB
OS:0C%P=x86_64-pc-linux-gnu)SEQ(SP=100%GCD=1%ISR=10B%TI=Z%CI=I%TS=8)SEQ(SP=
OS:100%GCD=1%ISR=10B%TI=Z%CI=I%II=I%TS=8)OPS(O1=MFFD7ST11NW7%O2=MFFD7ST11NW
OS:7%O3=MFFD7NNT11NW7%O4=MFFD7ST11NW7%O5=MFFD7ST11NW7%O6=MFFD7ST11)WIN(W1=A
OS:AAA%W2=AAAA%W3=AAAA%W4=AAAA%W5=AAAA%W6=AAAA)ECN(R=Y%DF=Y%T=40%W=AAAA%O=M
OS:FFD7NNSNW7%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)
OS:T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=Y%T=40%W=0%S=Z%A=S
OS:+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(R=Y%DF=
OS:Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1(R=Y%DF=N%T=40%IPL=164%UN=0%RIPL=G
OS:%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N%T=40%CD=S)

Network Distance: 0 hops

OS detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 112.44 seconds

結果怎麽說呢?應該是可以看懂的,但是不夠直觀。對於新人來說看起來比較費勁。特別是如果你給別人展示的時候。那麽有沒有現成的工具可以將數據結果可視化呢?還真有。
在GITHUB上發現了Rev3rseSecurity的WebMap項目就可以實現這樣的功能

演示如下:

首先安裝nmap

安裝方式多種多樣,如果不需要精確版本利用apt-get 包管理安裝即可(CENTOS下YUM)

#sudo apt-get install nmap
正在讀取軟件包列表... 完成
正在分析軟件包的依賴關系樹       
正在讀取狀態信息... 完成       
下列軟件包是自動安裝的並且現在不需要了:
  libtcl8.5 libtk8.5 libxft2 libxrender1 libxss1 ruby1.9.1-examples
Use ‘apt-get autoremove‘ to remove them.
將會安裝下列額外的軟件包:
  libblas3 liblinear-tools liblinear1 liblua5.2-0
建議安裝的軟件包:
  libsvm-tools liblinear-dev
下列【新】軟件包將被安裝:
  libblas3 liblinear-tools liblinear1 liblua5.2-0 nmap
升級了 0 個軟件包,新安裝了 5 個軟件包,要卸載 0 個軟件包,有 216 個軟件包未被升級。
需要下載 4,238 kB 的軟件包。
解壓縮後會消耗掉 18.6 MB 的額外空間。
您希望繼續執行嗎? [Y/n] y

安裝WEBMAP

由於作者使用DOCKER實現,所以前置需要安裝DOCKER(本文不演示DOCKER安裝,請自行百度)

#mkdir /tmp/webmap #創建一個目錄,啟動容器會利用Docker Volume映射宿主機與容器目錄
#sudo docker run -d          --name webmap          -h webmap          -p 8000:8000          -v /tmp/webmap:/opt/xml          rev3rse/webmap /run.sh
Unable to find image ‘rev3rse/webmap:latest‘ locally
latest: Pulling from rev3rse/webmap
b3aad5be9387: Pull complete 
3e981027b9c7: Pull complete 
Digest: sha256:c09be37b736d0b3b26f9dc98d33baa58a9c8ff55d60123413f21340bcb2773b5
Status: Downloaded newer image for rev3rse/webmap:latest
03c98689abaa664f3519994040006b252aa498476f95f95a6f5bee2a72330e0b

查看容器進程

sudo docker ps |grep webmap
03c98689abaa        rev3rse/webmap                 "/run.sh"              0.0.0.0:8000->8000/tcp    
#容器ID                     容器名                                 執行命令             端口映射

執行nmap結果輸出XML文件到/tmp/webmap

sudo nmap -sT -A -T4 -oX /tmp/webmap/myscan.xml 192.168.11.114

Starting Nmap 6.40 ( http://nmap.org ) at 2018-10-24 09:49 CST
Nmap scan report for ubuntu-14.04 (192.168.11.114)
Host is up (0.00025s latency).
Not shown: 996 closed ports
PORT     STATE SERVICE    VERSION
22/tcp   open  ssh        (protocol 2.0)
| ssh-hostkey: 1024 d8:7b:0f:56:71:82:13:a6:6d:8b:27:3a:ce:14:1f:33 (DSA)
| 2048 21:b9:86:cc:a1:38:cc:52:44:37:c8:32:d7:ae:32:dd (RSA)
|_256 c3:72:42:21:46:cd:4c:cd:9d:07:8d:0a:aa:0a:df:d6 (ECDSA)
80/tcp   open  http?
|_http-methods: No Allow or Public header in OPTIONS response (status code 400)
|_http-title: Did not follow redirect to https://ubuntu-14.04/
443/tcp  open  ssl/https?
|_http-methods: No Allow or Public header in OPTIONS response (status code 200)
| http-robots.txt: 1 disallowed entry 
|_/
|_http-title: Loading…
| ssl-cert: Subject: commonName=cattle/organizationName=the-ranch
| Not valid before: 2018-09-25T07:42:22+00:00
|_Not valid after:  2019-09-25T07:42:32+00:00
8000/tcp open  http-alt?
|_http-methods: No Allow or Public header in OPTIONS response (status code 500)
|_http-title: ExpatError          at /
4 services unrecognized despite returning data.
...

僅僅是為了演示,我這裏只掃描了這臺測試機,批量掃描可以按網段進行,當然時間很更久一些

觀看結果

因為暴漏了8000端口,打開瀏覽器輸入IP:8000查看即可,比如我這裏是http://192.168.11.114:8000/

技術分享圖片
我臺測試機只開放了4個端口,可以參考上述字符輸出的內容

下面有一個詳細說明
技術分享圖片

在頁面下方可以列出掃描過的所有主機的列表,當然我這裏只掃了1臺,就只有一個
技術分享圖片

註意看右下的三角很貼心可以對主機進行標註,比如我當前標註checked
技術分享圖片

下面還有一個插入標註(Insert note),會在輸出PDF的時候進行顯示,如下:
技術分享圖片

當然,如果讓所有都通過WEB方式查看也不友好,畢竟給BOSS匯報的時候還是希望附件的方式。別著急,WEBMAP自帶的導出PDF的格式
技術分享圖片

導出結果如下:
技術分享圖片
技術分享圖片

當然作者還在不斷開發中。最後提供軟件的GITHUB地址
webmap

LINUX下-nmap數據結果的可視化