tryhackme-Expose(暴露)
信息收集
使用nmap
对靶机进行端口扫描
这里我在枚举21
端口和1883
端口并没有获得任何信息,接着访问1337
端口进行信息收集
什么都没有,接着进行目录扫描
这里由于我的wordlists
的问题,并没有扫描到想要的目录
,不过也扫描到了一些常规的目录
通过参考wp
,得到目录名为admin_101
,其实在/admin
目录有提示,但是由于我的wordlists
问题,导致扫描不出结果
接着我们访问admin_101
目录,和admin
目录一样的登录页面,不过这次我们可以真正的登录了
根据题目的描述,这里很可能是sql
注入漏洞,使用sqlmap
爆破即可
这里有一个工具使用的细节,如果指定http://10.10.141.65:1337/admin_101/
网址让sqlmap
寻找注入点,可能寻找不到,可能需要添加--level
参数和--risk
参数,以及--forms
参数可能查找到注入点,但是幸运的是,sqlmap
工具支持识别http 请求头
信息进行注入,所以这里我们使用burpsuite
抓取数据包头,使用sqlmap
进行sql
注入爆破
接着使用sqlmap
进行注入
sqlmap -r target.txt --batch --dbs --current-db
--dbs
:获取所有数据库--current-db
: 获取数据库的版本--batch
: 让sqlmap
自动化执行
一个重要的数据库expose
,使用--dump
获取该数据库的所有信息
sqlmap -r target.txt --batch -D expose --dump
得到网站的密码为VeryDifficultPassword!!#@#@!#!@#1231
,登录查看
没什么有用的信息,但是上述expose
数据库中还有另外一个表config
,其中透漏了两个文件名/file1010111/index.php
和/upload-cv00101011/index.php
先访问/file1010111/index.php
查看一下什么情况
需要密码输入破解出的密码easytohack
登录成功后提示让我们检查DOM
树结构,右键检查查看
得到提示,使用Get
方式进行file
参数的传参,通过尝试为文件包含,可以包含/etc/passwd
/file1010111/index.php?file=/etc/passwd
文件包含可以读取一些文件,但是并不能反弹shell,这里我并没有尝试php://input
或者data://
一些伪协议,接着访问/upload-cv00101011/index.php
,通过提示我们访问密码为Z
开头的用户,也就是zeamkish
登录后是一个文件上传页面,但是不能点击upload
按钮
初始访问权限
查看源代码是js
前段验证,禁用js
后将php-reverse-shell.php
上传
上传成功后提示我们上传路径在源代码
中
接着访问/upload_thm_1001
目录
此时我们已经找到了php
文件位置,在本地监听nc -lvp 4444
,然后访问php
文件获得shell
上述中我们查看flag.txt
文件失败,但是读取ssh_creds.txt
文件获取zeamkish
用户的密码为easytohack@123
使用ssh
连接,获得flag.txt
权限提升
接着查找suid
文件,发现很多可以提权的程序
使用find
提权获得root shell
,读取flag.txt