瑞士军刀 netcat

瑞士军刀 netcat

Netcat 是一款非常出名的网络工具,简称“NC”,有渗透测试中的“瑞士军刀”之称。它可以用作端口监听、端口扫描、远程文件传输、还可以实现远程 shell 等功能。


nc 的作用

(1)实现任意 TCP/UDP 端口的侦听,nc 可以作为 server 以 TCP 或 UDP 方 式侦听指定端口
(2)端口的扫描,nc 可以作为 client 发起 TCP 或 UDP 连接
(3)机器之间传输文件
(4)机器之间网络测速 nc的控制参数:

在这里插入图片描述

-g<网关> 设置路由器跃程通信网关,最多可设置 8 个。
-G<指向器数目> 设置来源路由指向器,其数值为 4 的倍数。
-h 在线帮助。
-i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
-l 使用监听模式,管控传入的资料。
-n 直接使用 IP 地址,而不通过域名服务器。
-o<输出文件> 指定文件名称,把往来传输的数据以 16 进制字码倾倒成 该文件保存。
-p<通信端口> 设置本地主机使用的通信端口。
-r 乱数指定本地与远端主机的通信端口。
-s<来源位址> 设置本地主机送出数据包的 IP 地址。
-u 使用 UDP 传输协议。
-v 显示指令执行过程。
-w<超时秒数> 设置等待连线的时间。
-z 使用 0 输入/输出模式,只在扫描通信端口时使用。


Netcat 简易使用

①连接到远程主机命令

  • 命令:nc -nvv IP Port
  • nc -nvv 192.168.8.155 22
    在这里插入图片描述

②监听本地主机

  • 命令:nc -lp port
  • nc -lp 777
    在这里插入图片描述

③端口扫描

  • 扫描指定主机的单一端口是否开放

  • 格式:nc -v IP Port

  • nc -v 192.168.8.155 22
    在这里插入图片描述

  • 扫描指定主机的某个端口段的端口开放信息

  • 格式:nc -v -z IP Port Start_Port-End_port

  • nc -vz 192.168.8.155 22 1-1000
    在这里插入图片描述

  • 扫描指定主机的某个 UDP 端口段,并且返回端口信息

  • 格式:nc -v -z -u IP Port Start_Port-End_port

  • nc -vzu 192.168.8.155 22 1-2000
    在这里插入图片描述
    在这里插入图片描述

  • 扫描指定主机的端口段信息,并且设置超时时间为 5 秒

  • 格式:nc -vv -z -w time IP Port Start_Port-End_port

  • nc -vvzw 5 192.168.8.155 22 1-100
    在这里插入图片描述


④端口监听

  • 监听本地端口注:先设置监听(不能出现端口冲突),之后如果有外来访问则输出该详细信息到命令行

  • 格式:nc -l -p local_Port

  • nc -lp 7777
    在这里插入图片描述

  • 监听本地端口,并且将监听到的信息保存到指定的文件中

  • 格式:nc -l -p Port > target_File

  • nc -lvp 7000 > tyy.txt
    在这里插入图片描述
    在这里插入图片描述


⑤连接远程系统

  • 格式:nc IP Port
  • nc www.baidu.com 80
    在这里插入图片描述
    之后可以运行 HTTP 请求
    在这里插入图片描述

⑥文件传输

  • 发送端:192.168.8.144

  • 格式:nc IP Port < Targert_File

  • nc 192.168.8.155 8888 < tyy.txt
    在这里插入图片描述

  • 接收端:192.168.8.155

  • 格式:nc -l Local_Port > Targert_File

  • nc -lvp 8888 > test.txt
    在这里插入图片描述


⑦简易聊天

  • 本地主机:192.168.8.144
  • 命令:nc -lvp 9977
    在这里插入图片描述
  • 远程主机:192.168.8.155
  • 命令:nc IP Port 或者 telnet IP Port
  • nc 192.168.8.144 9977
    在这里插入图片描述

⑧蜜罐

  • 作为蜜罐使用 :

  • 命令:nc -lvp Port注:使用“-l”参数可以不停的监听某一个端口,知道 Ctrl+C 为止

  • nc -lvp 9977
    在这里插入图片描述

  • 命令:nc -lvp Port >yylog.txt

  • nc -lvp 9977 >> tyy.txt 注:使用“-l”参数可以不停的监听某一个端口,知道 Ctrl+C 为止,同时
    把结果输出到 log.txt 文件中,如果把“>”改为“>>”即追加到文件之后。

    在这里插入图片描述


nc 小实验

  • 客户端 centos7 Ip:192.168.8.154

  • 服务端 kali Ip:192.168.8.144 监听端口使用 9000 端口

  • 服务端配置:

  • 1.监听 9000 端口:nc -lvp 9000 (kali 中 nc 版本比较旧需要加-p)
    在这里插入图片描述在这里插入图片描述

  • 2.检 查 9000 端 口 是 否 打 开 netstat -tulnp | grep 9000 或 者 lsof -i:9000
    在这里插入图片描述

  • 3.对服务端进行抓包:tcpdump -i eth0 -nn port 9000(同tcpdump -i eth0 -nn host 192.168.8.144and port 9000)

  • 客户端发起连接:nc 192.168.8.144 -t 9000
    在这里插入图片描述在这里插入图片描述

  • tcpdump -i eth0 -nn port 9000

  • 服务端抓包信息:
    在这里插入图片描述


nc 小实验 2

  • 客户端 kali Ip:192.168.8.144
  • 服务端 centos7 Ip:192.168.8.154(监听端口使用 9001端口)
  • 服务端配置:
  • 关闭防火墙:systemctl stop firewalld.service
  • 监听 9001 端口:nc -lvp 9001
  • 检查 9001 端口是否打开 telnet -tulnp |grep 9001 或者 lsof -i:9001
    在这里插入图片描述在这里插入图片描述
  • 客户端发起连接:nc 192.168.8.154 -t 9001
    在这里插入图片描述

nc 小实验 3

  • 审计电脑 192.168.8.144

  • nc -lvp 7000 审计电脑监听端口。
    在这里插入图片描述

  • 被审计电脑 192.168.8.155

  • ls -l | nc -nv 192.168.8.144 7000 被审计电脑的命令所罗列出来的内容会被显示到审计电脑上。
    在这里插入图片描述

  • 变形:当信息比较多的时候,我们希望把收集到的信息按使用命令的名称,来将他保存到另一台的电脑上。

  • 审计电脑: nc -lvp 7000 > /var/yy.txt 被审计电脑输入数据会保存为 var 下面的 yy.txt 文件
    在这里插入图片描述

  • 注意:第一次监听需断开
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
    在这里插入图片描述

  • 被审计电脑:ls / -l | nc -nv 192.168.8.144 7000 -q 1 显示本目录下的文件,并发送到 192.168.8.144 的 7000 端口,-q 1 的意思是连接成功时候,连接会自动断掉。
    在这里插入图片描述

  • 查看进程 ps aux

  • 被审计电脑:ps aux | nc -nv 192.168.8.144 7000 -q 1

  • 审计电脑:nc -lvp 7000 > pyy.txt 将产生的文件导入 pyy.txt(默认桌面开的终端,保存的位置在桌面)
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jr 野良

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值