2021.12掌控安全擂台赛 部分WriteUp
签到题:一张简单图片
在线网址查看源代码 https://tools.yum6.cn/Tools/view_source/index.php
或者将图片下载到本地,查看十六进制发现最后面有一串HTML代码
解密一下
仙剑奇侠传-翻牌游戏
查看源码看到有三个可跳转文件
在 css/style.css 和 js/main.js 里面各有一段 Jsfuck (jsfuck源于一门编程语言brainfuck,其主要的思想就是只使用8种特定的符号来编写代码。而jsfuck也是沿用了这个思想,它仅仅使用6种符号来编写代码。它们分别是(、)、+、[、]、!。)
两段代码拼接在一起,控制台直接回车解一下码得到testaaaa.php
访问testaaaa.php
Payload:CTF_SHOW=1&CTF[SHOW.COM=1&abc=extract($_POST)&fl0g=flag_give_me
代码审计
PHP变量名应该只有数字字母下划线,同时GET或POST方式传进去的变量名,会自动将空格 + . [转换为_
但是有一个特性可以绕过,使变量名出现.之类的
特殊字符[, GET或POST方式传参时,变量名中的[也会被替换为_,但其后的字符就不会被替换了
如 CTF[SHOW.COM=>CTF_SHOW.COM
再看最后的判断语句只要$fl0g === "flag_give_me" 成立即可输出flag,直接考虑用 extract 进行变量覆盖,用POST覆盖fl0g
绿色方块:点到就给flag
下载exe文件,通过即给flag
胡话不说,手点就完了
送分题:一个登录框
默认用户:admin 密码:6位纯数字
使用bp抓包爆破70w-80w,过滤flag关键字
本文来自博客园,作者:NoCirc1e,转载请注明原文链接:https://www.cnblogs.com/NoCirc1e/p/16287424.html