做题笔记。
= = 无语。
下载 查壳。
64ida打开。
先运行一下程序:
用它这个程序 加密romantic >>> cm9tYW50aWH=
我们去正常加密看看:
仔细对比你会发现点毛病。
看看ida:
这表看起来,很正常,默认的为什么会加密不出来?
认知:关于这base64具体的加密算法,懂得不是很多,如果不知道有没有进行魔改,可以提出来去C中跑一下就知道了。(其实更推荐动态,当然在能动态的情况。)
如下:
那可真奇怪:
为什么它运行出来最后是一个H?而网页和程序都表明是 M?
>>>这里能够证明,此时,还是属于常规的base64加密。
猜测: 可能是哪里进行了魔改。
我们进行追踪:
思路:常规做题,肯定首先需要想到 “表”的问题 其实是”算法“的问题。
追踪表:
跟进:
得,表做了变换处理。
那么,有两种思路:
一 能动态的情况下去动态获取修改后的表;
二 根据这段代码进行脚本编写;
一:动态。
在线自定义表解密。
二:脚本。
置换表出来,在线工具或者用python库函数都可以。
flag{Base64_is_the_start_of_reverse}