首页 > 其他 > 详细

ctf之抄错的字符

时间:2021-07-16 00:00:30      阅读:43      评论:0      收藏:0      [点我收藏+]

题目信息如图所示

技术分享图片

 

 

 得知该题为密码学问题

像英文的字母有 i=1,g=9,s=5,z=2

还有部分小写抄成了大写,搜索一段php代码测试

<?php
$list=[];
function fun($str,$index=0){

    if($index==strlen($str)){
        global $list;
        $ret=base64_decode($str);
        $list[]=$ret;
        return false;
    }
    $head=substr($str,0,$index);
    $mid=substr($str,$index,1);
    $end=substr($str,$index+1,strlen($str)-$index);
    $words=getWord($mid);
    foreach ($words as $key=>$v){
        $newStr=$head.$v;
        $ret=base64_decode($newStr);
        if(!preg_match(/[^a-zA-Z\d\_\-]/is,$ret)){
            fun($newStr.$end,$index+1);
        }
    }
}
function getWord($c){
    $word=["I"=>1, L=>1, G=>9, Z=>2, S=>5];
    $arr=[$c,strtolower($c)];
    if(isset($word[$c])){
        $arr[]=$word[$c];
    }
    return $arr;
}
$str="QWIHBLGZZXJSXZNVBZW";
fun($str);
var_dump($list);
?>

从运行结果上看Aman_very_cool 比较符合题意

技术分享图片

 

 提交测试正确

技术分享图片

 

 

 

ctf之抄错的字符

原文:https://www.cnblogs.com/zhaohzaomumu/p/15017879.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!