吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2926|回复: 6
收起左侧

[CTF] 【2022春节】解题领红包之windows中级题WP

[复制链接]
aw220 发表于 2022-2-17 13:53
本帖最后由 aw220 于 2022-2-17 15:22 编辑
脱壳

拖进DIE,有UPX壳

2022-02-03_14-43-28.png

OD脱壳,ctrl+B搜索0000000000000,找到上面的jmp,打断点。

2022-02-03_14-44-30.png

运行,然后走一步,就到入口点了。

2022-02-03_14-46-58.png

跟流程

拖入IDA,看到_main函数,可以发现流线比较清楚,输入UID后有两个走向,分别是UID合法和不合法

image-20220217141226279.png

在UID合法的走向中,又分了两条,分别是Key正确和不正确,这个UID啊,刚开始压根不知道是账户UID,后来看别人回帖才知道的。

2022-02-03_15-39-04.png

使用F5反编译,查看具体算法

看算法

可以看到,这个if-else就是关键了

2022-02-03_15-43-23.png

进这个sub_401520函数看看,里面又有一个if-else,只有进到else才能返回1

2022-02-03_15-46-02.png

而控制的关键在于v8这个变量

2022-02-04_14-35-32.png

进到sub_403ED0,我们需要实现return的值为0,即result为0,配合OD动态调试对比发现,memcmp用于比较输入的内容和真正的Key是否相同(观察栈可以发现为flag{Happy_New_Year_52Pojie_2022}),相同则返回0,至于这个if里面的东西,我也没搞懂。

2022-02-04_14-37-13.png

回到上一层,看v50是什么,分析后可以知道红框里面的两句分别是将输入的东西(a1该函数的参数,传入的是被输入的东西)复制给v12,然后将v12加密给v50

2022-02-04_14-55-50.png

至于这个crypy函数,核心是这一句,它在while循环里面,会加密输入的Key的每个大小写字母,通过跟踪函数调用时的相关参数,可以得出如下公式

2022-02-04_15-00-29.png

X * (Y - (UID % 25) - 97) % 26 + 97 = 12                # 这个X与UID相关,但我没能力推出公式,可以在OD中运行时找到具体值
                                                                                                                                                                                # Y是Key的每个字符的Ascii码

最后用python写了个脚本算Key,没有转换大写字母,因为我用这个转换出来的是错的,就索性用OD去转换每个大写字母,找到那几个关键字母再手动替换就可以了

def crypt():
    t = ""
    for y in "flag{Happy_New_Year_52Pojie_2022}":
        if re.match("[a-z]", y):
            for x in range(ord('A'),ord('Z')+1) and range(ord('a'),ord('z')+1):
                if 9 * (x - 10 - 97) % 26 + 97 == ord(y):                #        公式,替换关键部分为自己的
                    t += chr(x)
                    break
        else:
            t += y
    return t

print(crypt())

2022-02-04_15-09-00.png

免费评分

参与人数 4威望 +1 吾爱币 +23 热心值 +4 收起 理由
daofaziran + 1 + 1 我很赞同!
0xC05 + 1 + 1 谢谢@Thanks!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
越简单越好 + 1 + 1 我很赞同!

查看全部评分

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

Meiosis 发表于 2022-2-17 17:18
学习一个
菠萝蜜 发表于 2022-2-18 19:29
头像被屏蔽
hua111 发表于 2022-3-1 10:40
hxs1 发表于 2023-1-27 23:35
大佬啊,中级技术,月薪2-3万把块钱工资有了
 楼主| aw220 发表于 2023-1-28 14:03
hxs1 发表于 2023-1-27 23:35
大佬啊,中级技术,月薪2-3万把块钱工资有了

老哥,我这属于初学
hxs1 发表于 2023-1-28 17:09
aw220 发表于 2023-1-28 14:03
老哥,我这属于初学

大佬,那更牛逼,初学,就能搞定中级题目
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-24 10:00

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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