[湖湘杯 2021 final]Penetratable suid提权
今天来道提权的题,接触的不多,但是这题的命令我看了好多博客都没找到...
进入页面是正常的登录注册,尝试注册admin发现已经被注册。那就随便注册进去看看。
发现可以改密码,那就要想到能不能更改admin的密码,抓包试试。
这里的MTIz是123的base64加密后的,尝试将其改为admin加密后的试试。
可以看到修改成功了,登录admin看看有什么东西。
界面上多了一个东西。
没发现什么有用的东西啊,这里卡了半天,看了wp发现还有一个用户,就是root用户,其实在上图中有线索,admin排到第二,那么第一没显示出来,试试就行。那就尝试在用admin用户更改root密码登录。但是保存按钮不能按,看源码。
触发了updatePass函数,这也是参数m的值,c的值是admin。
更改成功了,登录root用户。
多了一个界面,下载抓包试试。
存在目录穿越漏洞,环境变量看不了,看看phpinfo(这里的路径不在web网页目录下,所以要加/var/www/html)。
发现了命令执行,但是我们利用命令执行读不出flag,标签是suid提权,那就上传一句话木马蚁剑连接。利用find找找看。
发现了一些东西,但是没有我常用的,看了和很多博客都没有介绍sed的,这里列出wp中命令:/bin/sed '1p' /flag
成功。看看sed命令解释:
那么命令的含义就是读取/flag文件的一行,有个问题,为什么是第一行?
总结:
- 目录穿越利用
- suid提权 利用sed进行读取文件