nmap全稱爲Network Mapper。是一款網絡掃描和主機檢測的很是有用的工具。 Nmap是不侷限於僅僅收集信息和枚舉,同時能夠用來做爲一個漏洞探測器或安全掃描器。關於工具的使用,網上有不少教程,這裏不作具體說明。linux
如下我用UBUNTU演示git
在LINUX環境下,掃描的結果一般是字符形式的以下:github
#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項目就能夠實現這樣的功能web
安裝方式多種多樣,若是不須要精確版本利用apt-get 包管理安裝便可(CENTOS下YUM)docker
#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
因爲做者使用DOCKER實現,因此前置須要安裝DOCKER(本文不演示DOCKER安裝,請自行百度)ubuntu
#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 容器名 執行命令 端口映射
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/ruby
我臺測試機只開放了4個端口,能夠參考上述字符輸出的內容網絡
下面有一個詳細說明
在頁面下方能夠列出掃描過的全部主機的列表,固然我這裏只掃了1臺,就只有一個
注意看右下的三角很貼心能夠對主機進行標註,好比我當前標註checked
下面還有一個插入標註(Insert note),會在輸出PDF的時候進行顯示,以下:
固然,若是讓全部都經過WEB方式查看也不友好,畢竟給BOSS彙報的時候仍是但願附件的方式。彆着急,WEBMAP自帶的導出PDF的格式
導出結果以下:
固然做者還在不斷開發中。最後提供軟件的GITHUB地址
webmap