zoukankan      html  css  js  c++  java
  • 北邮 -3.29

     菜鸡只打了100分

    ez_bypass

    对于我一点都不ez

     用数组可以让md5加密都都为NULL,然后是原本数据不相等,so,id[]=1&gg[]=2

    然后下面那个is_numeric()是用来判断是否为数字,so,用post传值1234567%00,或者1234567a或1234567!都可以,然后就出现了让我激动的flag

    套娃

    看不懂这两个字,做起来才发现,一重又一重,唉,搞了我n小时

     看源码,发现这个

     然后上网找找,发现substr_count(a,b),是找在a中有多少个b,

    然后又找到可以用 .  代替  _  

    又发现正则表达式不能等于23333,网上又找到了可以用%0a过滤

    正当以为出flag时

     好吧,是我想得太简单了

     看源码发现一堆这个东西,然后拿去解

    叫我post me Merak

    但我发现它又叫我要本地登录,所以我即用本地有传值,发现原来根本就不是一起的

    我单传值得到

     然后又找看不懂的代码

    <?php 
    error_reporting(0); 
    include 'takeip.php';
    ini_set('open_basedir','.'); 
    include 'flag.php';

    if(isset($_POST['Merak'])){ 
        highlight_file(__FILE__); 
        die(); 



    function change($v){ 
        $v = base64_decode($v); 
        $re = ''; 
        for($i=0;$i<strlen($v);$i++){ 
            $re .= chr ( ord ($v[$i]) + $i*2 );  //chr是把ASCII转成字符 ord时把字符转成ASCII数字,大概是这个意思吧
        } 
        return $re; 
    }
    echo 'Local access only!'."<br/>";
    $ip = getIp();
    if($ip!='127.0.0.1')
    echo "Sorry,you don't have permission!  Your ip is :".$ip;
    if($ip === '127.0.0.1' && file_get_contents($_GET['2333']) === 'todat is a happy day' ){ //file_get_contents() 函数把整个文件读入一个字符串中。
    echo "Your REQUEST is:".change($_GET['file']);
    echo file_get_contents(change($_GET['file'])); }

    ?>  

    然后就不懂了

    后来经高人指点,用了一下php://input发现不行

    再经高高人指点高人再指点我,用了data://

     终于成功了

     虽然做的题目很少,但也学到了一些东西,继续努力吧,希望下次能更好。

    50+50=100,按小学成绩来算就是满分啦,哈哈哈

  • 相关阅读:
    程序员开发过程常见问题的解决方法(持续更新中....)
    android 单元测试
    浅谈android binder机制
    Android 写模块化代码注意事项
    Android View 简析
    PackageManager源码分析
    Android N做了啥
    JAVA HTTP POST参数为一个对象或数组
    Spring+Jetty+Jersey+Mybatis整合教程 无web.xml 、webapp版
    IKAnalyzer 添加扩展词库和自定义词
  • 原文地址:https://www.cnblogs.com/ojkojk/p/12593561.html
Copyright © 2011-2022 走看看