bugku渗透测试1
|
场景1
进来之后发现是这这也一个知识学习网站。我们打开源代码可以获得第一个flag。
场景2
姿势1
其实这种运行环境都确实可以执行我们运行的命令或者脚本,我们可以在这里尝试运行写入。
|
姿势2
这里后台拿shell才是预期解。因为提示了需要admin,这里弱口令。
admin:admin |
后台配置这里可以拿到第二个flag。预期解就是通过后台这里文件上传shell。
首先尝试上传php但是返回说后缀为空,说明这里过滤有可能就是替换为空,那我们尝试双写发现这里说不支持该后缀,然后在上面发现可以修改文件上传的后缀。
在这里添加上php文件。
提交保存后再上传发现上传成功。这里就获得shell了。
场景3
连接上shell之后进入用户目录内可以拿到第三个flag
场景4
姿势1
第四个flag提示在数据库,我们可以取翻一下这里数据库配置文件
/var/www/html/app/database.php
这里蚁剑是有数据库管理工具的,但是!很垃圾。用不了。
所以这里可以采取另一种方式,直接导出数据库内容。
mysqldump -uroot -proot flag > flag.sql |
姿势2
我们这里下载一个冰蝎。
Release Behinder_v4.0.5 · rebeyond/Behinder (github.com)
这里需要使用java8环境运行。
点击这个传输协议
保存之后,我们进入生成木马的目录。
之前因为我们已经连接了蚁剑,那么我们这里就可以直接将这个文件上传上去。
这里传输协议就选我们生成的木马类型,这里不需要填密码,因为密码默认在马中存在。
连接成功默认弹出phpinfo页面。
这里我们就可以进入数据库管理,这里修改一下这里的连接字符串。
场景5
这个提示nc和root
这里考的是pwn
先跳过。
场景6
这里我们可以先看一下本机的ip配置
发现这里其实还存在一个内网的ip网卡。
/etc/hosts |
这里我们可以把我们的fscan传入进去扫描一下。
这里需要上传fscan的linux版本。
Release fscan 1.8.1 · shadow1ng/fscan (github.com)
我这里改了一下名字。
首先给fscan加个权限
chmod 777 fscan_linux |
这里可以发现在192.168.0.01和192.168.3这两台都开放了8080端口,在最初的扫描中我们发现其实本机也是开启了8080端口。
在这个扫描结果中我们发现了漏洞的情况。
[+] http://192.168.0.3:8080/ poc-yaml-shiro-key [{key kPH+bIxk5D2deZiIxcaaaA==} {mode cbc}] |
这里192.168.0.3和192.168.0.1两台主机都是存在shiro漏洞。并且key也爆出了。
192.168.0.4这台主机则存在thinkphp的漏洞。
那么这里的主要情况就是我们该如何去访问它,因为这个属于内网,我们是无法直接访问的。那么这里我们使用Neo-reGeorg工具进行内网穿透。
https://github.com/L-codes/Neo-reGeorg |
下载代码解压后。打开终端。
python neoreg.py generate -k password |
在目录里会生成加密的脚本文件。
根据我们渗透的服务不同选择不同类型的脚本。
这里是php我们就上传php脚本。
是可以访问到的。
然后我们在本地进行连接。
python neoreg.py -k <已经设定的密钥> -u <http://xxx.xxx.xxx/tunnel.xxx> -p <prot> |
Proxifier下载 Proxifier中文版(代理客户端) v4.0.1 中文汉化版 下载-脚本之家 (jb51.net)
这里再配合proxifier进行流量代理。
然后就可以直接进行访问了。这里在robots.txt拿到flag 后面提示为shiro
场景7
通过上面的特征我们确定了存在shiro,这里直接上工具测试。
flag{5235c752c27ceffef289e8cc3d78592b}
梭哈了。
场景8
这里再进行提权测试,查询suid命令。
find / -perm -4000 -type f 2>/dev/null |
使用find提权
大致操作就是去一个有权限的文件夹(如/tmp)创建一个file,然后find file -exec whoami ;即可拿到root权限
touch 1; |
find 1 -exec ls /root/ \; |
find 1 -exec cat /root/flag \; |
flag{32868694aad674703235ef0db318b7bb}
场景9
然后进入最后一个靶机。这里前面通过fscan我们扫描出了tp5的漏洞。直接梭哈测试。
上传shell
在web目录拿到flag,这里提示又是数据库。
flag{c3b343bcca04783e981e6a4c67b4886e} Ps:database |
场景10
这里不是root用户(root用户默认不允许外联),这里配置了代理之后我们可以直接使用navicat进行连接。
flag{128bdebe834ebcde06733775ccf8e7f9}
拿到flag
场景11
berdav/CVE-2021-4034: CVE-2021-4034 1day (github.com)
不想丸啦。我提权失败,真无语 花了我好几块。
算了。两个方式都失败了。假装成功了把。