百分百的乐趣

admin 2022年1月5日22:51:37评论32 views字数 1346阅读4分29秒阅读模式

>

>

百分百的乐趣

yuchoxuuan

哈哈哈哈! 终于预期了一会

1。打开界面是个登录窗,按照一般套路猜测是否是弱口令
百分百的乐趣
admin/admin
成功
如果没猜到的话,用这个方式是可以绕过的
百分百的乐趣
其中 '014575a2449a69045184f5def6342df1' 是 36d的 MD5
2,典型的 sql注入
百分百的乐趣
测了一下 发现 union 和 ( 被禁了
双写绕一下 发现双写可以绕过

3 尝试直接写一句话

小技巧是 一句话要转一下16进制,否则小括号会被滤掉。。

蚁剑连上去,本来看到flag.php很开心,然后

于是翻了一下
根目录有一个

然后找db.php 里面有sql的连接参数

连一下数据库

这里有一个

然后就找不到了,后来经出题人提醒在环境变量里,可是因为某些原因,system,exec等函数被禁了,所以。。。。
我们在php里面有一个$_SERVER全局变量可以用鸭

还有一个比较高端的解法就是Bypass
需要找到bypass工具,找了几个都不好用,后来用的是大佬特别提供的版本

传上去

然后连接一下
百分百的乐趣
就可以找到最后三位了。
这三个参数要按照实际情况配置一下哦
其中第二个指向当前目录下一个没用过的文件名即可,一定要是没用过的哦,他要用它存临时文件


hdxw

原题把flag分成了3部分,分别放在了数据库、根目录文件中、环境变量,所以题目叫获得百分之百的快乐(flag)
预期解是:

  1. 从index.php注入,而且为了降低难度给了index.php的源码,可以通过盲注或其他技巧(sql语句没有任何限制)得到数据库中的一部分flag
  2. 然后根据数据库中提示信息写shell文件,读flag.php文件(需绕过命令执行函数)得到另一部分flag和提示信息
  3. 根据上一步提示信息,提权root身份并获取环境变量中最后一部分flag
  4. 把3部分flag拼在一起就是完整的fflag

分三部分的原因是,这三部分对应了渗透的三个阶段:sql注入、getshell(有时需绕过一些函数)、提权
随着阶段的提升获得的服务器权限也就越大,所以第三阶段一般可以打通全局。

============================================================
上面是出题的思路和一些设计,下面是一些非预期和题目改动

============================================================

非预期:

  1. page.php的黑名单替换字符串,把关键词替换为空字符串,但是可以通过双写和hex等方式绕过
  2. 通过phpinfo、getenv或超全局变量直接获得环境变量中的一部分flag

改动:

  1. page.php关键词替换为空字符串改为替换为空格,封死(目前没发现其他非预期)了从这里注入可能。
  2. 禁用上述环境变量相关的函数
  3. 既然第三个阶段可以全部打通,完整的flag放到了环境变量中,另外两处换成了下一步的提示信息

当时出题时没什么经验,题目有点渣,各位大佬多多包涵


yuchoxuuan

hdxw 针对性欺负萌新狸的坏银


hdxw

yuchoxuuan 每次出题都被阿狸师傅暴打


Lu-sakura

yuchoxuuan 今天请教了一老哥,page.php仍然可以注入,payload让我知识大增。有空阿狸你写个从index注入写shell的wp呗,菜鸡泪奔.jpg


  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年1月5日22:51:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   百分百的乐趣http://cn-sec.com/archives/719384.html

发表评论

匿名网友 填写信息