zoukankan      html  css  js  c++  java
  • 爆破-1

    点开题他告诉我们flag就藏在某六位变量中

    点进链接

    看到一段php代码

    大概意思是

    这里引用了flag.php文件(也就是隐藏的文件,我们看不见)

    a@$_REQUEST['hello'],意思是a的变量和hello同步

    然后依次比较a,如果不对就输出error,意思是我们的ahello要符合字符串的定义

    然后一个eval函数:把字符串当成 PHP 代码来计算

    意思是做转换,将a转换成字符串然后再定义为变量

    然后是var_dump函数

    这是将$$a的值依次陈列出来

    $$a就是将a的值拿来做变量名,比如$a=123$$a=$123

    这里的信息就是打印出a赋值的信息比如$a=123456则这里就会打印出var_dump123456)的字符串

    最后一行show_source(__FILE__)没什么用,只是将php代码进行高亮,方便阅读

    所有这里的题就是让我们猜出$a的值,其值为六位,如果对了就会通过var_dump打印出来

    所有这里可以进行爆破而$a的值是通过hello来赋值的,意思是我们对hello进行赋值就行了

    开始解题

    随意再url处进行post传值,对hello进行赋值,赋值需为字符串,如果$hello存在就会有显示,否则返回NULL,这里就可以对hello的值进行六位字符串的爆破,不过太麻烦了,这里使用全局变量GLOBALS,将GLOBALS赋值给hellohello就会等于全局变量的任意一个,而var_dump则会打印出所有的$hello赋值情况

    得到flag

    这里的hello值为d3f0f8,果然是一个六位的字符串

    如果爆破,我觉得也可以得出来,不过会麻烦一点

    提交的时候是复制整个flag进行提交比如复制flag{123141}进行提交

  • 相关阅读:
    Linux内核初探 之 进程(三) —— 进程调度算法
    Android中的路径记录 | RobinBlog
    子域名劫持
    zookeeper 实战
    [iOS 开发] WebViewJavascriptBridge 从原理到实战 · Shannon's Blog
    Swift Property
    工厂方法模式
    jquery插件封装
    其他事件
    吴裕雄--天生自然诗经学习笔记 :夸父逐日
  • 原文地址:https://www.cnblogs.com/wosun/p/11240942.html
Copyright © 2011-2022 走看看