吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1358|回复: 2
上一主题 下一主题
收起左侧

[Android CTF] 2025春节红包之Android初级题Writeup

  [复制链接]
跳转到指定楼层
楼主
Doratmon 发表于 2025-2-17 17:04 回帖奖励

安装【2025春节】解题领红包之三.apk,打开后显示华为logo,无法点击、滑动。

丢到Jadx分析,看起来viewPager2.setUserInputEnabled(false)限制了app的滑动。

使用MT管理器,将false改为true后重打包安装此app。

此时打开可以向右滑动,出现“遥遥领先”图片,图片也可以转动,但是没有发现flag。

有点奇怪🤔,继续审计一下代码。FoldFragment1和FoldFragment2看着有点意思,审计完FoldFragment1主要是mediaPlayer的启动停止相关的功能,没什么用。FoldFragment2的startLongPressTimer()方法有两个加密字符串,有点可疑。

deepseek说是startLongPressTimer()方法处理长按事件的。所以回到遥遥领先页面,长按后发现弹出了“快去寻找flag吧!”。

结合之前出现的两个字符串,可以分析出TO.INSTANCE.db()是一个解密函数,密文cYoiUd2BfEDc/V9e4LdciBz9Mzwzs3yr0kgrLA== 解密后的明文为“快去寻找flag吧!”,Toast.makeText().show()会弹出解密结果。

基于目前的分析,将密文传入TO.INSTANCE.db()解密,然后调用Toast.makeText().show()弹出解密结果应该就可以得到flag了。

完整审计FoldFragment2,发现onViewCreated()还有一个加密字符串。

目前的路径变成了解密hjyaQ8jNSdp+mZic7Kdtyw==2hyWtSLN69+QWLHQ两个加密字符串,因此会涉及到smali代码的重写。

头大,不会修改smali代码怎么办?用deepseek啊,把需求告诉deepseek,自动生成smali代码,爽歪歪,提示词如下:

我想在下面的smali代码中添加一个Toast.make().show()方法,传入参数为2hyWtSLN69+QWLHQ,我担心重打包后app不能运行,请你帮我添加一下并告诉我你修改的地方。

.method private static final startLongPressTimer$lambda$1(Lcom/zj/wuaipojie2025/FoldFragment2;)V
    .registers 5

    const-string v0, "this$0"

    invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V

    const/4 v0, 0x1

    .line 92
    iput-boolean v0, p0, Lcom/zj/wuaipojie2025/FoldFragment2;->un:Z

    .line 93
    sget-object v0, Lcom/zj/wuaipojie2025/SPU;->INSTANCE:Lcom/zj/wuaipojie2025/SPU;

    invoke-virtual {p0}, Lcom/zj/wuaipojie2025/FoldFragment2;->requireContext()Landroid/content/Context;

    move-result-object v1

    const-string v2, "requireContext(...)"

    invoke-static {v1, v2}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V

    const/4 v2, 0x2

    const-string v3, "hjyaQ8jNSdp+mZic7Kdtyw=="

    invoke-virtual {v0, v1, v2, v3}, Lcom/zj/wuaipojie2025/SPU;->s(Landroid/content/Context;ILjava/lang/String;)V

    .line 94
    invoke-virtual {p0}, Lcom/zj/wuaipojie2025/FoldFragment2;->getParentFragmentManager()Landroidx/fragment/app/FragmentManager;

    move-result-object v0

    invoke-virtual {v0}, Landroidx/fragment/app/FragmentManager;->beginTransaction()Landroidx/fragment/app/FragmentTransaction;

    move-result-object v0

    .line 95
    sget v1, Lcom/zj/wuaipojie2025/R$id;->fold2:I

    new-instance v2, Lcom/zj/wuaipojie2025/FoldFragment1;

    invoke-direct {v2}, Lcom/zj/wuaipojie2025/FoldFragment1;-><init>()V

    check-cast v2, Landroidx/fragment/app/Fragment;

    invoke-virtual {v0, v1, v2}, Landroidx/fragment/app/FragmentTransaction;->replace(ILandroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentTransaction;

    move-result-object v0

    const/4 v1, 0x0

    .line 96
    invoke-virtual {v0, v1}, Landroidx/fragment/app/FragmentTransaction;->addToBackStack(Ljava/lang/String;)Landroidx/fragment/app/FragmentTransaction;

    move-result-object v0

    .line 97
    invoke-virtual {v0}, Landroidx/fragment/app/FragmentTransaction;->commit()I

    .line 98
    invoke-virtual {p0}, Lcom/zj/wuaipojie2025/FoldFragment2;->requireContext()Landroid/content/Context;

    move-result-object p0

    sget-object v0, Lcom/zj/wuaipojie2025/TO;->Companion:Lcom/zj/wuaipojie2025/TO$Companion;

    const-string v1, "cYoiUd2BfEDc/V9e4LdciBz9Mzwzs3yr0kgrLA=="

    invoke-virtual {v0, v1}, Lcom/zj/wuaipojie2025/TO$Companion;->db(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    check-cast v0, Ljava/lang/CharSequence;

    const/4 v1, 0x0

    invoke-static {p0, v0, v1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;

    move-result-object p0

    invoke-virtual {p0}, Landroid/widget/Toast;->show()V

    return-void
.end method

需要注意的是,DeepSeek生成的smali代码中,需要将cYoiUd2BfEDc/V9e4LdciBz9Mzwzs3yr0kgrLA==修改为hjyaQ8jNSdp+mZic7Kdtyw==,不然还是弹出“快去寻找flag吧!”。

最后重打包安装apk,长按后弹出flag:flag{xnkl2025!}

免费评分

参与人数 2吾爱币 +11 热心值 +2 收起 理由
noplll + 4 + 1 用心讨论,共获提升!
正己 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

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

沙发
tomliu 发表于 2025-2-18 08:38
厉害呀, 学习到了
3#
huangkang2297 发表于 2025-2-18 14:13
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2025-4-23 08:27

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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