netcat又叫做瑞士軍刀,是黑客和系統(tǒng)管理員常用的網(wǎng)絡(luò)工具,最初開發(fā)的目的是文件傳輸,后來發(fā)展出很多強(qiáng)大的功能,比如也可以完成批量主機(jī)服務(wù)掃描。
之前介紹了另一個(gè)更常用的批量主機(jī)服務(wù)掃描工具:nmap。
netcat的安裝也非常簡單,直接yum安裝:
yum install nc
一般不建議在生產(chǎn)環(huán)境安裝nc,因?yàn)閚c除了可以批量主機(jī)服務(wù)掃描外,還支持端口代理、文件傳輸,容易造成安全隱患。
netcat之批量主機(jī)服務(wù)掃描
netcat在掃描時(shí)常用的參數(shù):
-w 設(shè)置超時(shí)時(shí)間
-z 輸入輸出模式
-v 顯示命令執(zhí)行過程
常用命令:
TCP協(xié)議
nc -v -z -w2 192.168.2.224 1-50
UDP協(xié)議
nc -v -z -w2 -u 192.168.2.224 1-50
netcat之文件傳輸
netcat可以指定一個(gè)本地端口號(hào)開啟監(jiān)聽模式,客戶端可以使用相同的netcat連接開啟的端口發(fā)送信息,信息將在服務(wù)端顯示出來。
開啟監(jiān)聽
nc -l 2389
建立連接
nc localhost 2389
如果將服務(wù)端的輸出重定向到文件,就可以用于文件傳輸:
nc -l 2389 > test
傳輸文件
cat testfile | nc localhost 2389
如果在一臺(tái)服務(wù)器上測試,可以使用把nc切換到后臺(tái)任務(wù),在運(yùn)行客戶端的命令。