【攻防世界逆向】《Shuffle》《666》《dmd-50》《easyRE1》《IgniteMe》

Crackme

Posted by Corax on September 30, 2023

#题目Shuffle ##解法 先exeinfo 32位无壳elf直接放到ida 可以看到红圈内就是随机处理,那上面的是原始字符串,通过py写个脚本 得到flag #题目666 毛都没 ##解法 先exeinfo 32位无壳elf 放进ida (天真的我直接把下面那个字符串当flag) 可以看到上面那个判断函数是把什么东西跟一个字符串比较了 所以可以想到,是把我们输入的字符串作加密处理变成这个样子了。看上面的函数,锁定这个 一个加密过程,逆着写 unctf{b66_6b6_66b} #题目Reversing-x64Elf-100 ##解法 这道题蛮简单的 64位无壳elf 扔进ida 就这里很关键 依葫芦画瓢 #题目dmd-50 ##解法 无语。。 ida打开 判断过程老长一段,把这些数字换成asc2码 780438d5b6e29db0898bc4f0225935c0 看到上面这里 md5加解密找个网站 得到flag #题目easyRE1 ##解法 不说了看图吧 记得加上{} #题目IgniteMe ##解法 终于来了一个exe。先用exeinfo ok直接扔ida 刚开始看的时候其实蛮懵逼的,细看之后其实很多都是类似输出函数这种很基本简单的函数,主要在于这里 点进去 看最后一段,大概是用输入的flag进行一些运算然后和最后面地字符串进行对比,所以分析一下算法把 这两段是大小写的转换,运算后的flag还要进行大小写的转换。 主要在这个。 是最后的字符串是byte_4420B0[i]和处理过的输入字符串进行异或得到。所以逆向算法。 转换大小写。最后加上这里的外壳

就可以了。