[湖湘杯 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进行读取文件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通