`
stephen830
  • 浏览: 3010650 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Netcat( 或者 nc )

 
阅读更多

 

netcat 或者 nc 是 Linux 下的一个用于调试和检查网络工具包的工具。可用于创建 TCP/IP 连接。netcat被称为网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据。通过与其他工具结合和重定向,可以在脚本中以多种方式使用它。 你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端。

 

端口扫描 :

扫描20-25端口号,-w2表示延时2秒 ,127.0.0.1表示待扫描机器的ip地址

nc -v -z -w2 127.0.0.1 20-25

nc: connect to 127.0.0.1 port 20 (tcp) failed: Connection refused

nc: connect to 127.0.0.1 port 21 (tcp) failed: Connection refused

Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!

nc: connect to 127.0.0.1 port 23 (tcp) failed: Connection refused

nc: connect to 127.0.0.1 port 24 (tcp) failed: Connection refused

nc: connect to 127.0.0.1 port 25 (tcp) failed: Connection refused

 

192.168.2.33拷贝文件到192.168.2.34

1234为端口号

192.168.2.34上: nc -l 1234 > test.txt

192.168.2.33上: nc 192.168.2.34  1234 < test.txt 

 

简单聊天工具

1234为端口号

192.168.2.34上: nc -l 1234

192.168.2.33上: nc 192.168.2.34 1234

这样,双方就可以相互交流了。使用ctrl+C(D)退出。 

 

 

应用举例:

1. 侦听指定端口

server:

$ nc -l 99991
 然后你可以使用客户端模式来连接到 9999 端口:
 
client: 1$ nc localhost 999

现在如果你输入一些文本,它将被发送到服务器端

2. 使用 netcat 来传输文件

假设我们本地有一个 local文件,内容为:hello ranger

而在服务器端有一个空文件名为 server

然后我们使用如下命令来启用服务器端:

server:

$ nc -l 9999 > server

client:

cat local | nc localhost 9999

然后你停止服务器端,你可以查看 server 的内容就是刚才客户端传过来的 local 文件的内容:

hello ranger
3. netcat 支持超时控制

多数情况我们不希望连接一直保持,那么我们可以使用 -w 参数来指定连接的空闲超时时间,该参数紧接一个数值,代表秒数,如果连接超过指定时间则连接会被终止。

server:

nc -l 9999

client:

$ nc -w 10 localhost 9999

该连接将在 10 秒后中断。

注意: 不要在服务器端同时使用 -w 和 -l 参数,因为 -w 参数将在服务器端无效果。

 

 

Netcat

Netcat或者叫nc,这是一个自称是网络中的瑞士军刀般的工具。它很简单但也非常强大和灵活,允许你创建任意的网络连接。这里我们来看看如何把它作为一个端口扫描器:

1
2
3
$ nc –z example.com 20-100
Connection to example.com 22 port [tcp/ssh] succeeded!
Connection to example.com 80 port [tcp/ssh] succeeded!

除了能够创建任意的连接,Netcat还能够监听传入的连接。这里我们利用nc的这个功能再配合tar来快速有效的在服务器之间拷贝文件。在服务器端,运行:

1
$nc –l 9090 | tar –xzf –

在客户端运行:

1
$tar –czf dir/ | nc server 9090

我们可以使用Netcat把任何应用通过网络暴露出来,这里我们通过8080端口将shell暴露出来:

1
2
$ mkfifo backpipe
$ nc –l 8080 0<backpipe | /bin/bash > backpipe

现在我们可以通过任意一台客户机来访问服务器了:Linode

1
2
3
$ nc example.com 8080
uname –a
Linux li228-162 2.6.39.1-linode34 ##1 SMP Tue Jun 21 10:29:24 EDT 2011 i686 GNU/Linux

尽管后面这两个例子有些投机取巧的成分(现实中你应该使用类似rsync这样的工具来拷贝文件,用SSH来远程登录服务器),它们还是展示出了Netcat的强大和灵活,通过结合netcat和其它的应用你可以实现很多不同的事情。

 

 

分享到:
评论

相关推荐

    netcat下载 nc下载 netcat命令 nc命令

    【标题】"netcat下载 nc下载 netcat命令 nc命令"涉及的是网络工具Netcat的基本信息,包括下载和使用。Netcat,简称nc,是一个开源、跨平台的网络工具,常被网络安全专家和系统管理员用于创建各种网络连接,进行端口...

    nc.rar_nc python

    但从标签“nc_python”我们可以推断,讨论的主题可能涉及如何使用Python来操作Netcat或者与Netcat相关的网络通信任务。 在压缩文件列表中,我们有两个文件: 1. "nc.exe" - 这可能是一个Windows可执行文件,通常...

    瑞士军刀 netcat nc

    v可得到更详细的内容 -w secs timeout的时间 -z 将输入输出关掉——用于扫描时 其中端口号可以指定一个或者用lo-hi式的指定范围。 例如:扫描端口 tcp扫描 C:\nc&gt;nc -v -z -w2 192.168.0.80 1-140 net [192.168.0.80...

    netcat得到root权限

    Netcat(通常缩写为nc)是一个开源工具,被广泛用于网络实用程序和协议调试。在IT领域,尤其是系统管理员和网络安全专家中,Netcat因其多功能性和灵活性而备受青睐。标题“netcat得到root权限”暗示了我们将在讨论...

    nc+net-tools.zip

    在Linux系统中,`nc`(也称为`netcat`)和`net-tools`是两个非常重要的网络工具,尤其在CentOS系统上广泛使用。`nc`是一个灵活的网络工具,用于读写TCP或UDP套接字,可以用于各种网络诊断和测试。`net-tools`则是一...

    netcat 瑞士军刀 linux windows netcat 瑞士军刀 linux windows

    1、 了解NC的用法 命令:  nc –h 技巧:  win98用户可以在autoexec.bat加入path=nc的路径,win2000用户在环境变量中加入path中,linux含有这个命令(redhat) 1、基本使用  想要连接到某处: nc [-options] ...

    Windows下nc命令工具下载

    1. **下载与安装**:下载名为“nc.exe”的文件,将其放在系统环境变量PATH所包含的目录下,或者在需要使用的地方直接调用。 2. **基本命令格式**:在命令行中输入`nc [选项] 目标地址 端口号`,例如,作为服务器...

    8个实用的Linux netcat命令示例

    Netcat 或者叫 nc 是 Linux 下的一个用于调试和检查网络工具包。可用于创建 TCP/IP 连接,大的用途是用来处理 TCP/UDP 套接字。  这里我们将通过一些实例来学习 netcat 命令。  1、在服务器-客户端架构上使用 ...

    网络NC的使用教程与命令详解

    例如,黑客可能会使用Netcat监听特定端口等待来自肉鸡的连接请求,或者主动发起连接到肉鸡上的开放端口。 #### 5. 下载连接 Netcat 1.10 for NT的下载链接可以通过官方渠道或其他可信赖的安全网站获取。确保从可靠...

    nc 带CMD绑定功能

    标题中的“nc 带CMD绑定功能”指的是网络工具netcat(通常简称为nc)的一种高级用法,它允许用户通过命令行接口(CMD)与远程服务器进行交互,执行特定的操作或传递命令。Netcat是一个非常强大的网络工具,被广泛...

    通过 端口 设置,客户端 执行 服务端 运行程序 cmd netcat-1.11使用一例

    在这个例子中,netcat-1.11(通常简称为nc)被用作一个简单的TCP/IP工具,允许客户端通过指定的端口向服务器端发送命令,并接收执行结果。 Netcat是一款功能强大的网络安全工具,常用于端口扫描、数据传输、反向...

    nc.zip_DOS_NC

    7. **网络调试**:Netcat可以作为诊断工具,帮助排查网络连接问题,例如检查是否能正确打开和关闭连接,或者验证数据包是否正确传输。 请注意,虽然Netcat是一个强大且灵活的工具,但在未经授权的情况下进行网络...

    NC上传拿WEBSHELL教程

    NC(Netcat)是一种功能强大的网络工具,常被安全研究人员用于搭建网络连接,进行数据传输,而WEBSHELL则是一种在网络服务器上留下的后门程序,允许攻击者远程控制被入侵的网站。 【描述】"学习有关网络攻击技术"这...

    nc115.rar by chenghao0511#gmail.com

    压缩包内的文件名"nc115"可能是指Netcat的源代码、编译好的二进制文件、或者是关于该版本的文档或说明。 现在,我们来深入探讨Netcat的一些核心知识点: 1. **基础用法**:Netcat可以作为网络工具箱,执行多种任务...

    NC源码和程序附上目前最详细的使用手册和使用技巧

    工具名:Netcat 作者:Hobbit && Chris Wysopal 类别:开放源码 平台:Linux/BSD/Unix/Windows WINDOWS下版本号:[v1.10 NT] 参数介绍: *nc.exe -h*即可看到各参数的使用方法。 基本格式:nc [-options] ...

    NC.rar_NC_nc产品源码_vc6.0

    "NC"通常指的是网络控制(Network Control)或Netcat,它是一个功能强大的开源工具,常用于TCP/IP协议的各种操作,如监听网络端口、发送和接收数据、进行端口扫描等。"NC_nc产品源码"表明这是一套与Netcat相关的软件...

    NC反彈SHELL教學

    - 工具:这个文件可能包含一些实用的提权工具或者与nc相关的脚本,供学习者实践和研究。 在这个教学中,你将学习到以下内容: 1. Netcat的基本用法:如何启动监听、建立连接、传输数据。 2. 反弹shell的概念及其...

    UDP测试工具NC

    通过Netcat,你可以发送大量UDP包来评估网络的承载能力和稳定性,或者模拟真实环境下的数据传输,从而找出可能存在的问题。 总结一下,"UDP测试工具NC"是指Netcat,一个在Windows和Linux平台上都可用的命令行工具,...

    netcat-1.11-windows.zip

    测试udp端口连通性,可以支持windows32或者64,里面有txt,有使用方法,需要的小伙伴可以来下载

    使用 nc 传输文件

    在Linux系统中,`nc`(netcat)是一款极其强大且多功能的网络工具,它能够创建TCP或UDP连接,用于发送、接收数据包,甚至在紧急情况下作为简易的远程访问工具。`nc`的一个广为人知的应用就是进行文件传输,这在没有...

Global site tag (gtag.js) - Google Analytics