只需一步,快速开始
0
新手上路
查壳得知是UPX壳,那直接使用UPX脱壳工具一键脱壳,得到原程序信息,32位控制台程序
运行一下exe,查看运行逻辑 需要先输入名字
发现就是一个贪吃蛇游戏,死亡以后便得到了关于flag得信息,要求我们分数高才能得到flag,
按照以往经验猜测这种基本上要么要求的分数很高,要么就是一个骗局,那么我们直接采用IDA Pro来进行分析
老规矩,先查看是否存在可以字符串
发现三个可疑的字符串,第一个:通过以往经验可以猜测可能是某一轮Flag加密的结果,第二个:64位长度,每个字符都是Base64编码表中的字符,所以99%就是Base64编码表,那可以先预料到可能是使用了Base64加密,第三个:通常这种提示厉害正确类似的话便可以很大程度确定这串字符所在的位置就是Flag判断位正确的位置 老规矩,顺藤摸瓜,我们直接定位到提示正确的函数取查看验证,因为通常在最后一次验证出结果的地方也能找到最后一次的Flag加密字符,那双击字符便来到了sub_40186F函数,我们先按下N把sub_40186F函数名全局改为Check,接下来我们就称sub_40186F函数为Check
int Check() { char v1[256]; // [sp+18h] [bp-910h]@1 char Dst[2048]; // [sp+118h] [bp-810h]@4 int j; // [sp+918h] [bp-10h]@4 int i; // [sp+91Ch] [bp-Ch]@1 sub_4021AD(22, 18);
使用道具 举报
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
小黑屋|Archiver|站点地图|UltraDebug ( 滇ICP备2022002049号-2 滇公网安备 53032102000034号)
GMT+8, 2025-6-21 00:43 , Processed in 0.034550 second(s), 9 queries , Redis On.
Powered by Discuz X3.4
© 2001-2023 Discuz! Team.