netcat被誉为网络安全界的‘瑞士军刀’,相信没有什么人不认识它吧……
一个简单而有用的工具,透过使用TCP或UDP协议的网络连接去读写数据。它被设计成一个稳定的后门工具,
能够直接由其它程序和脚本轻松驱动。同时,它也是一个功能强大的网络调试和探测工具,能够建立你需要的几
乎所有类型的网络连接,还有几个很有意思的内置功能(详情请看下面的使用方法)。
nc命令详解
Filed under: security — ranbo @ 9:08 pm
netcat被誉为网络安全界的‘瑞士军刀’,相信没有什么人不认识它吧……
一个简单而有用的工具,透过使用TCP或UDP协议的网络连接去读写数据。它被设计成一个稳定的后门工具,
能够直接由其它程序和脚本轻松驱动。同时,它也是一个功能强大的网络调试和探测工具,能够建立你需要的几
乎所有类型的网络连接,还有几个很有意思的内置功能(详情请看下面的使用方法)。
在中国,它的WINDOWS版有两个版本,一个是原创者Chris Wysopal写的原版本,另一个是由‘红与黑’编译
后的新‘浓缩’版。‘浓缩’版的主程序只有10多KB(10多KB的NC是不能完成下面所说的第4、第5种使用方法,
有此功能的原版NC好象要60KB:P),虽然”体积”小,但很完成很多工作。
这里以1.84版本为例
一、基本使用
usage: nc [-46DdhklnrStUuvzC] [-i interval] [-p source_port]
[-s source_ip_address] [-T ToS] [-w timeout] [-X proxy_version]
[-x proxy_address[:port]] [hostname] [port[s]]
参数:
1. -4 强制使用ipv4
2. -6 强制使用ipv6
3. -D 允许socket通信返回debug信息
4. -d 不允许从标准输入中读取
5. -h 显示nc帮助文档
6. -i interval
7. 指定每行之间内容延时发送和接受,也可以使多个端口之间的连接延时
8. -k 当一个连接结束时,强制nc监听另一个连接。必须和-l一起使用
9. -l 用于监听传入的数据链接,不能与-p -z -s一起使用。-w 参数的超时也会被忽略
10. -n 不执行任何地址,主机名,端口或DNS查询
11. -p 指定nc使用的源端口,受权限限制且不能余-l一起使用
12. -r 指定nc使用的源端口和目的端口,不能使用系统原来就指定的那些端口
13. -S 允许在RFC 2385的TCP MD5签名选项
14. -s source_ip_address
15. 指定用于发包的接口的IP地址,不能和-l一起使用
16. -T ToS
17. 指定链接的IP服务类型(TOS)
18. -C 自动换行
19. -t 使nc能够与telnet交互
20. -U 使用UNIX域socket
21. -u 使用udp代替默认的tcp选项
22. -v 输出详细报告
23. -w timeout
24. 一个链接一段时间无操作,则自动断开,默认无超时
25. -X proxy_version
26. 指定nc使用代理时所采用的协议,可选的有socksv4,socks5以及https。默认socks5
27. -x proxy_address[:port]
28. 指定nc使用的代理地址和端口。默认设置:1080(SOCKS),3128(HTTPS)
29. -z 只监听不发送任何包
例如:1.扫描端口
tcp扫描
[root@b28-1286 servers]# nc -vzw2 192.168.12.86 20-30
nc: connect to 192.168.12.86 port 20 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 21 (tcp) failed: Connection refused
Connection to 192.168.12.86 22 port [tcp/ssh] succeeded!
nc: connect to 192.168.12.86 port 23 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 24 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 25 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 26 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 27 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 28 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 29 (tcp) failed: Connection refused
nc: connect to 192.168.12.86 port 30 (tcp) failed: Connection refused
udp扫描
[root@b28-1286 servers]# nc -uvzw2 192.168.12.86 1-140
Connection to 192.168.12.86 111 port [udp/sunrpc] succeeded!
2.文本传递
在86、90上建立文件install.log
[root@b28-1286 servers]# nc -l 1234 >install.log
在86上启动监听,在90上执行:nc -w 1 192.168.12.86 1234 <install.log
现在86上install.log的内容就被90上install.log的内容所覆盖了。
3.聊天
[root@b28-1286 servers]# nc -l 1234
12
sdsf
我擦
[root@b28-1290 etc]# nc 192.168.12.86 1234
12
sdsf
我擦
3.目录传输
将86上的auto-add-tomcat文件夹及内容复制到90上
在90上启动监听:
nc -l 1234|tar -xzvf -
在86上执行:
tar -cvzf - auto-add-tomcat|nc 192.168.12.90 1234
4.在脚本中
nc每次启动监听后,都会在客户端连接完成并退出的同时,服务端一同退出。所以,如果需要不断的使用nc进行数据传输,需要在脚本中使用循环。利用nc实现更多的功能,可参考其rpm提供的参考脚本:
[root@b28-1286 servers]# rpm -qd nc
/usr/share/doc/nc-1.84/README
/usr/share/doc/nc-1.84/scripts/README
/usr/share/doc/nc-1.84/scripts/alta
/usr/share/doc/nc-1.84/scripts/bsh
/usr/share/doc/nc-1.84/scripts/dist.sh
/usr/share/doc/nc-1.84/scripts/irc
/usr/share/doc/nc-1.84/scripts/iscan
/usr/share/doc/nc-1.84/scripts/ncp
/usr/share/doc/nc-1.84/scripts/probe
/usr/share/doc/nc-1.84/scripts/web
/usr/share/doc/nc-1.84/scripts/webproxy
/usr/share/doc/nc-1.84/scripts/webrelay
/usr/share/doc/nc-1.84/scripts/websearch
/usr/share/man/man1/nc.1.gz
相关推荐
主要介绍了linux中的nc命令知识,非常不错,值得收藏,需要的朋友参考下吧
### 网络NC的使用教程与命令详解 #### 0. 写在前面的话 在探讨Netcat之前,我们先来了解下Netcat的基本概念及其重要性。Netcat(通常简称为“nc”)是一款功能强大的网络工具,它能够通过TCP或UDP协议创建连接并...
《Linux命令详解词典》是一本详尽解析Linux操作系统中常用命令的参考书籍。Linux作为开源、免费的操作系统,其强大的命令行工具是其高效工作的重要组成部分。这本书旨在帮助用户理解和掌握这些命令,从而更好地在...
《Linux命令详解词典》是由施威铭研究室编著的一本详尽解析Linux命令的参考书籍,旨在帮助用户深入理解和掌握Linux操作系统中的各种命令。这本书以扫描版的形式提供,包含PDF格式,方便读者在线阅读或下载。标签...
### Linux 下常用命令详解:Netcat (nc) 在 Linux 系统中,`nc`(Netcat)是一款功能强大的网络工具,它可以帮助用户通过 TCP 或 UDP 协议发送和接收数据包。`nc` 命令具有多种用途,包括端口扫描、传输文件、创建...
#### nc命令详解 - **nc命令**:nc是网络通信工具netcat的简称,可用于读写数据包。 - **选项**: - `-h`:显示帮助信息。 - `-l`:监听模式。 - `-p port`:指定监听端口。 - `-v`:显示详细信息。 - `-z`:...
《NC-Verilog仿真详解》 NC-Verilog是一款由Cadence公司提供的Verilog硬件描述语言模拟器,专为IC设计者验证和模拟Verilog设计的IC功能而设计。它支持用户通过Verilog语言语法来描述电路设计。本文将深入探讨NC-...
本资料包"Linux编程命令详解"旨在帮助那些希望深入学习Linux编程的朋友们提供详实的指导。 首先,我们关注的是"Linux编程命令详解.pdf",这可能是本书的核心内容,它可能涵盖了从基础到高级的Linux命令使用。这份...
三、解决方案详解 1. 字库路径问题 在 Linux 环境下,字库的存放路径和名字各不相同。因此,JVM 无法找到 Linux 操作系统内带的字库。解决该问题需要将字库拷贝到正确的路径下,以便 JVM 能找到。 2. JVM 字库...
ncverilog 仿真详解 ncverilog 是 Cadence 公司开发的一款 Verilog 硬体描述语言模拟器(simulator),主要用于验证和模拟数字 IC 的功能。ncverilog 可以帮助 IC 设计者验证和模拟所设计的 IC 功能,并且支持 ...
"Linux命令详解手册"提供了全面的命令指南,帮助用户理解和运用各种命令来高效地操作Linux系统。下面将详细阐述Linux命令的主要类别及其重要用途。 1. 文件和目录管理: - `ls`:列出目录内容,常用于查看当前目录...
CATIA大量用于航空航天、汽车及摩托车行业、机械、电子、家电与3C产业、NC加工等各方面 由于其功能强大而完美,CATIA已经几乎成为三维CAD/CAM领域的一面旗帜和争相遵从的标准,特别是在航空航天、汽车及摩托车领域...
【标题】:NC文件转TXT详解 在处理气象、海洋、气候等科学数据时,我们经常遇到NC(NetCDF)文件格式。这种文件格式是一种自我描述的、机器无关的、可扩展的数据存储格式,用于存储多维数组。然而,有时我们需要将...
在Linux操作系统中,编程是一项基础且...阅读《Linux编程命令详解》这样的资料,将有助于深入理解这些命令的用法和应用场景。同时,实践是检验知识的最好方式,多在终端中尝试这些命令,将有助于巩固记忆并提升技能。
这个"Unxi命令详解"文档显然是针对Unix命令的详细指南,尽管标题中存在拼写错误(应为"Unix"而非"Unxi"),但我们可以从中学习到许多关键的Unix命令和使用技巧。 1. **目录结构与导航**:Unix系统采用层次化的目录...
NC-Verilog仿真详解 NC-Verilog是一种基于Verilog的硬体描述语言模拟器,主要用于验证和模拟IC设计的功能。下面是NC-Verilog仿真详解的知识点: 1. NC-Verilog的基本概念 NC-Verilog是一种基于Verilog的硬体描述...
### NC-WAS 集群部署详解 #### 一、NC-WAS 集群部署概述 NC-WAS集群部署是指用友NC系统与IBM WebSphere Application Server (简称WAS)集群结合的一种部署方式。这种部署模式充分利用了WAS集群的优势,能够实现负载...
NC命令`nc -l -p999 -vv -e cmd.exe`将使NC在本地的999端口进入监听模式,等待远程主机的连接。这里的`-l`表示监听,`-p999`指定端口号,`-vv`表示详细输出,`-e cmd.exe`则指定了在连接成功后执行的命令,即打开...