ctf之抄错的字符
题目信息如图所示

得知该题为密码学问题
像英文的字母有 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之抄错的字符的更多相关文章
- maven报错非法字符:\65279 错误
开发中一个项目很早就报这个错,maven报错非法字符:\65279 错误,今天终于忍无可忍要解决它 :编译java文件的时候,有些java文件报非法字符 \65279错误,在网上找和很多 方法,也试了 ...
- 转:maven报错非法字符:\65279 错误
开发中一个项目很早就报这个错,maven报错非法字符:\65279 错误,今天终于忍无可忍要解决它 :编译java文件的时候,有些java文件报非法字符 \65279错误,在网上找和很多 方法,也试了 ...
- 使用JSON JavaScriptSerializer进行反序列化和序列化时报错,字符的长度超出了MaxJsonLength的长度
文章参考:https://www.cnblogs.com/wangfuyou/p/6046307.html 1.解决办法是在web.config增加如下节点到<configuration> ...
- java 编辑报错 非法字符: \ufeff 解决方案
用Notepad ++ 调成utf-8 格式 bom 或无bom根据情况 新建类 把代码一句句粘进去 ok
- C中单引号中放多个字符
在C中时常有类似这样的写法: #define EVENT_MAGIC 'evnt' int magic = EVENT_MAGIC; 乍一看来,这样的方式有点不理解.听网友说: C中单引号内最多存4个 ...
- 课堂笔记&总结与遇错纠错篇
一.课堂笔记 二.个人总结 在学习和工作JDK是必不可少的程序员必备工具,遇到问题可以在帮助文档寻找答案! 接受能力不足,老师讲的知识点过去了,我经常还在想上一个知识点.希望老师有时候重点可以讲慢点哈 ...
- android studio 非法字符: '\ufeff' 解决方式
今天发现一个问题,就是从其它地方拷贝的代码到AS项目里面,木有语法 错误,可是就是执行不起来,老是报错"非法字符: '\ufeff' ",郁闷非常久.木有看到这个字符.最后查询了这 ...
- mybatis 无效字符
只想说 是真的坑啊!!!!!sql就是对 但就是报错无效字符..... 一.sql后有 “:”,我觉得这个应该坑了很多人了 二.标签后有类似于空格的东西(我也不知道是tab还是空格,反正删完就对了) ...
- <NET CLR via c# 第4版> 读书笔记--目录
<NET CLR via c# 第4版>个别章节虽读过多次,但始终没有完整读过这本书.即使看过的那些,时间一长,也忘记了大部分.趁着最近不忙,想把这本书好好读一遍,顺便记下笔记,方便随时查 ...
随机推荐
- 西门子S7200/300/400以太网通讯处理器选型分类
北京华科远创科技有限研发的远创智控转以太网模块适用于西门子S7-200/S7-300/S7-400.SMART S7-200.西门子数控840D.840DSL.合信.亿维PLC的PPI/MPI/PRO ...
- Archlinux+win10双系统扩容Boot/ESP分区
环境 系统:Archlinux + Windowns10 双系统 软件:MiniTool Partition Wizard 免费版 + Diskgenius 免费版 分区:原ESP分区100M 原恢复 ...
- JS 反射机制及 Reflect 详解
一.什么是反射机制 反射机制是在编译阶段不知道是哪个类被加载,而是在运行的时候才加载.执行. 也就是说,反射机制指的是程序在运行时能够获取自身的信息. js 中的 apply 就是反射机制. 二.Re ...
- Linux-SSH介绍与认证方式
Linux SSH 前言: 在实际的生产环境中,运维人员经常要使用本地的计算机对远程主机进行控制工作,TCP/IP协议提供了两种协议来完成这样的操作,分别为Telnet协议和SSH协议. 由于Teln ...
- 实用程序包utils - 基于Rollup打包输出各模块文件(二)
上一次,我们讲到了如何去搭建一个前端工具库的工程,那么今天我们来聊一聊如何去将其打包输出. 需求 事情是这个样子的.我有一个这样的需求,或者是我发现有这么一个需求.就是有时候吧,我也不想搞的那么复杂, ...
- 如何在小型pcb的移动设备上获得更好的无线性能
如何在小型pcb的移动设备上获得更好的无线性能 How to get better wireless performance for mobile devices with small PCBs 小型 ...
- JUC 并发编程--06, 阻塞队列(7种), 阻塞等待 api的 代码验证
这些队列的 api ,就是添加队列,出队列,检测对首元素, 由于 add()--remove(), offer()--poll(),太简单这里不做验证, 只验证后二组api: 阻塞等待( put()- ...
- 强化学习之CartPole
0x00 任务 通过强化学习算法完成倒立摆任务,控制倒立摆在一定范围内摆动. 0x01 设置jupyter登录密码 jupyter notebook --generate-config jupyt ...
- Windows的静态库与动态库
Windows的静态库与动态库 1.静态库 1.1 静态库特点 运行不存在 静态库源码被链接到调用程序中 目标程序的归档 1.2 C语言静态库 C静态库的创建 创建一个静态库项目. 添加库程序,源文件 ...
- 复习Spring第二课--AOP原理及其实现方式
AOP原理: AOP,面向方面的编程,使用AOP,你可以将处理方面(Aspect)的代码注入主程序,通常主程序的主要目的并不在于处理这些aspect.AOP可以防止代码混乱.AOP的应用范围包括:持久 ...