吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1975|回复: 30
上一主题 下一主题
收起左侧

[Android 原创] 2024网鼎-Reveres-WP

[复制链接]
跳转到指定楼层
楼主
落尘大大和你呢 发表于 2024-10-30 13:41 回帖奖励
2024网鼎Reveres-Android-WP
知识点

Java代码审计

Native层加密

分析流程

jeb反编译apk找到MainActivity类

创建了一个按钮,判断按钮,获取到输入框的数据存储到editText0editText0不为空的话创建了一个按钮类b
跟进去分析

逻辑很清晰,就是从输入框中读取字符串后保存到s,判断s是否为空,传入Check类中的validate方法并把s传入进去,跟进这个validate方法分析

发现是在Native层进行的加密,那就在lib中找到这个so文件

动态注册的函数在JNI_OnLoad中看到这些数据,点进off_11D88分析

方法名称,方法参数类型,调用方法为sub_75C,跟进这个方法分析

先看这个函数干了些啥

感觉像是某种加密啊,又看到byte_CC4和unk_C44数组长度是256,不是RC4就是SM4加密了,

感觉是key,对key进行一下变换给下面的循环用了,aA1122357753221就是key了,在这一串十六进制字符上点一下按R

aA1122357753221第8位开始重新赋值,双击看一下aA1122357753221的值A11223577532211A,后8位是Z0099864,不过这里要反过来,因为在IDA是小端存储。所以key就是A11223574689900Z

byte_C14就是密文了,

提取出来直接在线解密一把梭哈


// wdflag{7314c25f-7097-483e-b745-fe96bb6a0b24}

总结

Native层就是一个SM4加密,而且还是默认加密模式,无填充。

2024网鼎-Reveres-ELF-WP
知识点

ELF文件分析

C代码审计

基础加解密

分析流程

DIE分析程序发现是ELF64位的无壳程序。

IDApro打开分析

输入flag,判断输入长度是否为40,前7位是wdflag{最后一位是}

v20保存了{}中的数据,长度为32个,把v20的数据复制到dest中。

第一个加密,对dest的前8位进行乘法加密后存储到s1,再使用s1与s2作比较,如果一样则继续往下走,那么这里的s2就是密文了,在伪代码视图下s2显示的不完整,切换到汇编视图下

会发现密文就是这8个字节,提取出来每个字节在除以2就是明文了。

第二个加密,对从第8位开始到16位进行异或加密,异或key是XorrLord,密文是v11,同样是在汇编视图下看v11密文

提取出来在对key进行异或就是明文。

第三块加密,是一个base64编码,跟进这个函数查看一下码表发现是:

CDEFGHIJKLMNOPQRSTUVWXYZABabcdefghijklmnopqrstuvwxyz0123456789+/

那密文就是PVLlQVPhPFW了,赛博厨子在线解码一下就好了


最后一个加密是AES加密,key是AesMasterAesMast,把v18的值复制给v8,在走一个for循环对v8从第8位开始赋值为8,赋值8个,这里的v8是int64类型的。

这里的v8是AES的IV,其实这里的AES是ECB模式,不需要的IV的。密文很明显就是v4了,提取出来直接在线网站解密

拿到最后一个明文。

把这四个明文合在一起就是flag了。

#include <iostream>
#include <vector>

int main() {
    // 异或的密文
    unsigned char  enc_xor_value[] = { 0x39,0x5B,0x17,0x10,0x7F,0x0D,0x47,0x6, };
    char xor_key[] = "XorrLord";
    // 乘法的密文
    unsigned char start_8[] = { 0x70,0xc2,0x6c,0xca,0x6e,0x70,0x70,0x6c };
    for (size_t i = 0; i < 8; i++)
    {
        start_8[i] /= 2;
        printf("%c", (unsigned char)start_8[i]);
    }

    for (int i = 0; i < 8; i++)
    {
        enc_xor_value[i] ^= xor_key[i];
        printf("%c", enc_xor_value[i]);
    }
    /*
        编码base64
        PVLlQVPhPFW
        CDEFGHIJKLMNOPQRSTUVWXYZABabcdefghijklmnopqrstuvwxyz0123456789+/

        AES
        AesMasterAesMast
    */

    return 0;
}
//wdflag{8a6e7886a4eb3b5b52e93a4506d28a04}

免费评分

参与人数 5威望 +1 吾爱币 +24 热心值 +5 收起 理由
北风那个吹123 + 1 + 1 热心回复!
qtfreet00 + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
fama + 1 + 1 思路很清晰
f8文 + 1 + 1 用心讨论,共获提升!
chy4412312 + 1 + 1 牛逼

查看全部评分

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

沙发
wlzck 发表于 2024-10-30 14:56
太厉害了
3#
shenkun 发表于 2024-10-30 15:17
4#
prience0118 发表于 2024-10-30 15:23
5#
SFign 发表于 2024-10-30 15:23
学习一波
6#
lhhhhhh 发表于 2024-10-30 15:26
厉害,学到了。
7#
tco2k 发表于 2024-10-30 15:31
学习了,是好文章。
8#
oceansec 发表于 2024-10-30 15:32
厉害啊,牛逼牛逼
9#
flyfeng0706 发表于 2024-10-30 15:34
支持,支持
10#
bulesoft 发表于 2024-10-30 15:36
紧跟大佬步伐,努力学习
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-1 07:14

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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