zoukankan      html  css  js  c++  java
  • bugku_web_PHP_encrypt_1(ISCCCTF) (涉及到md5加解密,尚需进一步学习)

    一道没有网址的web题、、很奇怪哎、、

    然后把文件下载并解压,得到一个给字符串加密的PHP

    解题思路是这样:

    我们要提交的flag作为一个字符串,赋值给$data传入这个脚本之后,得到了上面给出的字符串:fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA=

    我们要做的就是逆向找出这个flag

    密码学还没学、、md5的加密和解密还不会,只能照抄大佬的wp了、、、

    https://blog.csdn.net/qq_19861715/article/details/79385075

    <?php
    function decrypt($str) {
        $mkey = "729623334f0aa2784a1599fd374c120d";
        $klen = strlen($mkey);
        $tmp = $str;
        $tmp = base64_decode($tmp);  // 对 base64 后的字符串 decode
        $md_len = strlen($tmp); //获取字符串长度
        $x = 0;
        $char = "";
        for($i=0;$i < $md_len;$i++) {  //  取二次加密用 key;
            if ($x == $klen)  // 数据长度是否超过 key 长度检测
                $x = 0;
            $char .= $mkey[$x];  // 从 key 中取二次加密用 key
            $x+=1;
        }
        $md_data = array();
        for($i=0;$i<$md_len;$i++) { // 取偏移后密文数据
            array_push($md_data, ord($tmp[$i]));
        }
        $md_data_source = array();
        $data1 = "";
        $data2 = "";
        foreach ($md_data as $key => $value) { // 对偏移后的密文数据进行还原
            $i = $key;
            if($i >= strlen($mkey)) {$i = $i - strlen($mkey);}
            $dd = $value;
            $od = ord($mkey[$i]);
            array_push($md_data_source,$dd);
            $data1 .= chr(($dd+128)-$od);  // 第一种可能, 余数+128-key 为回归数
            $data2 .= chr($dd-$od);  // 第二种可能, 余数直接-key 为回归数
        }
        print "data1 => ".$data1."<br>
    ";
        print "data2 => ".$data2."<br>
    ";
    }
    $str = "fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA=";
    decrypt($str);
    ?>

    嗯,这个flag形式很坑爹:

    Flag:{asdqwdfasfdawfefqwdqwdadwqadawd}

  • 相关阅读:
    Groovy基本语法
    利用IntelliJ IDEA创建第一个Groovy工程
    创建maven或者Gradle项目的时候GroupId和ArtifactId以及Version是什么意思?
    使用IDEA2017创建java web +maven项目
    Eclipse集成Tomcat的步骤,我已测试N次都是成功的
    访问 Tomcat支配项目去除项目名和端口号通过IP地址(或域名)访问
    SSM框架原理,作用及使用方法
    SpringMVC整合Shiro权限框架
    svn过滤文件配置
    svn
  • 原文地址:https://www.cnblogs.com/huangming-zzz/p/9742523.html
Copyright © 2011-2022 走看看