吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2842|回复: 9
收起左侧

[CTF] [XMAN2018排位赛]Dragon Quest

[复制链接]
Y1rannn 发表于 2022-3-23 23:18

来一道ELF

打开一看这函数重命名名字就是C++题, 八成是要动调. 大概过了一遍匿名函数不多.

image-20220323222124892.png

主函数逻辑明确, 读入, 变成std::string丢quest里

quest里和读入有关的基本上就是长度要0x40, 然后丢到sanitize_input要返回true, 其他的我们暂时先忽略

image-20220323222620161.png

image-20220323222641282.png

这个函数真的很长, 但是八成还是关键函数, 我们发现了一个success

image-20220323222745963.png

而且这个表达式的数目让我觉得是一个z3题, 初值还要动调, 仔细看看吧.

感觉这里有混淆啊...插件上一上

image-20220323223002204.png

果然... 去混淆之后整个逻辑又比较明晰了, 但是又要往下走一个函数...., 这样感觉上一个函数的变量名也是混淆用的, 不过上个函数我们已经分析差不多了, 基本猜的是对的, 我们需要这个check函数返回4919

image-20220323223224251.png

这里整个一逻辑串, 应该是混淆没有去干净导致的:要4919那么v11就要是False, v35上就是0, v12 & v14 就要大于等于零, hero[*v3]&\v35 > 0

v35又等于v25>>40 & v27 | 0x1C

这里v27就是循环变量i, v25是v44的length...balabal一大长串我就不絮叨了, 本身就是一个一个扣一个的过程, 解释下面四个箭头, vector相关操作可能会有点看晕,

v44是读入, v31是i, 那么a_i就是input[i]

把a[i]压入v40这个vector

把v40给v34构造, 之后传进transform_input里, 结果要是hero[i].

那么只需要看看transforminput对这个vector干啥了就行, 目的就是有前i位flag就能结合hero[i+1]算出第i+1位

额, 我简单看了一眼就是一个前缀和应该是? 讲真我怎么没看出来呢, 第一个字100多可见,之后每个间距都差不多...

image-20220323225402733.png

把hero提出来

#include <cstdio>

int a[29] =
{
  0, 100,214,266,369,417,527,622,
  733,847,942,1054,1106,1222,1336,
  1441,1540,1589,1686,1796,1891,1996,
  2112,2165,2260,2336,2412,2498,2575
};

int main() {
    for(int i = 1; i <= 28; i ++ ) {
        printf("%c", a[i]-a[i-1]);
    }
}
// dr4g0n_or_p4tric1an_it5_LLVM

ps:原来dragon说的是llvm那条龙...

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
wildbloom + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

时速三百 发表于 2022-3-24 02:33
刚开始自学c++的萌新表示只能看出来这是c++
wildbloom 发表于 2022-3-24 09:08
iloveasdl 发表于 2022-3-24 09:14
贪恋毅世的浮华 发表于 2022-3-24 09:46
感谢分享
向楼主学习逆向技巧
starlin 发表于 2022-3-24 10:09
学无止境啊
tangmumao 发表于 2022-3-24 11:46
感谢楼主
KenG3nME 发表于 2022-3-24 11:49
师傅厉害,学习了
头像被屏蔽
石昊荒天帝 发表于 2022-3-24 13:06
提示: 作者被禁止或删除 内容自动屏蔽
Sagiri7 发表于 2022-3-24 14:19
向楼主学习逆向技巧
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 00:55

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表