返回列表 发新帖

[求助问答] flutter混淆逆向求助

[复制链接]

28

主题

351

回帖

1447

积分

高中生

Rank: 4

金币
540
好评
0
信誉
100
发表在  2025-10-22 23:54:38 来自手机  | 显示全部楼层 | 阅读模式  来自 广东
https://wwgz.lanzoue.com/b0dpyshqj

影视软件,订阅aes的密钥不知道是什么解不出来
回复

使用道具 举报

69

主题

2250

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
2742
好评
21
信誉
100

考神MT论坛最佳新人MT论坛帅哥MT论坛活跃会员

发表于 2025-10-23 00:25:05 来自手机  | 显示全部楼层  来自 湖北
本帖最后由 fzwxz520 于 2025-10-23 00:49 编辑

抓包接口就行了,在http://v.rbotv.cn/v3/home/vod_details返回包里,https://api.nbyjson.top:7788/api/?key=tviKuMb3MlqCW1I6gE&url=NBY-XMYAES2fa88953dc05bec5b813932895486e0277e66486d3e1c5c340c47e4a2e14a839e6e7e15eafc5b3f60be43d7bc1478571|84f621bd4bfac2f2072ee495d829a1c8,搜索接口可能有验证用其他影视搜索接口返回的NBY格式一样用
回复

使用道具 举报

218

主题

5608

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
8149
好评
25
信誉
134

MT论坛最佳新人MT论坛活跃会员MT论坛帅哥MT论坛新人MT论坛灌水老大考神

发表于 2025-10-23 00:38:34 来自手机  | 显示全部楼层  来自 广东
fzwxz520 发表于 2025-10-23 00:25
提取接口就行了,在http://v.rbotv.cn/v3/home/vod_details返回包里,https://api.nbyjson.top:7788/api/?k ...

有壳吗
回复

使用道具 举报

69

主题

2250

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
2742
好评
21
信誉
100

考神MT论坛最佳新人MT论坛帅哥MT论坛活跃会员

发表于 2025-10-23 00:39:36 来自手机  | 显示全部楼层  来自 湖北
  枷锁 发表于 2025-10-23 00:38
有壳吗

数字加固
回复

使用道具 举报

28

主题

351

回帖

1447

积分

高中生

Rank: 4

金币
540
好评
0
信誉
100
发表于 2025-10-23 07:41:27 来自手机  | 显示全部楼层  来自 广东
fzwxz520 发表于 2025-10-23 00:25
抓包接口就行了,在http://v.rbotv.cn/v3/home/vod_details返回包里,https://api.nbyjson.top:7788/api/?k ...

接口没什么用 他还有过滤规则 如果能把订阅抓到可以一直更新
回复

使用道具 举报

28

主题

351

回帖

1447

积分

高中生

Rank: 4

金币
540
好评
0
信誉
100
发表于 2025-10-23 14:11:19 来自手机  | 显示全部楼层  来自 广东
fzwxz520 发表于 2025-10-23 00:39
数字加固

哥 dump了一下dex 还原了一部分代码 感觉密钥是在so里面 dex有一个aes不知道有没有用 有一个函数 可以改这个函数然后让他自吐密钥吗?public static final int BUFFER = 1024;
    private static final String CIPHER_ALGORITHM = "AES/ECB/PKCS5Padding";
    private static final boolean DEBUG = false;
    private static final String KEY_ALGORITHM = "AES";
    public static final Charset UTF_8 = Charset.forName("UTF-8");

    public static byte[] compress(byte[] bArr) {
        ByteArrayInputStream byteArrayInputStream;
        Throwable th;
        ByteArrayOutputStream byteArrayOutputStream;
        try {
            byteArrayInputStream = new ByteArrayInputStream(bArr);
            try {
                byteArrayOutputStream = new ByteArrayOutputStream();
                try {
                    compress(byteArrayInputStream, byteArrayOutputStream);
                    byte[] byteArray = byteArrayOutputStream.toByteArray();
                    byteArrayOutputStream.flush();
                    LiteCloseableUtil.closeQuietly(byteArrayOutputStream);
                    LiteCloseableUtil.closeQuietly(byteArrayInputStream);
                    return byteArray;
                } catch (Throwable th2) {
                    th = th2;
                    LiteCloseableUtil.closeQuietly(byteArrayOutputStream);
                    LiteCloseableUtil.closeQuietly(byteArrayInputStream);
                    throw th;
                }
            } catch (Throwable th3) {
                th = th3;
                byteArrayOutputStream = null;
            }
        } catch (Throwable th4) {
            byteArrayInputStream = null;
            th = th4;
            byteArrayOutputStream = null;
        }
    }

    public static byte[] decompress(byte[] bArr) {
        ByteArrayInputStream byteArrayInputStream;
        Throwable th;
        ByteArrayOutputStream byteArrayOutputStream;
        try {
            byteArrayInputStream = new ByteArrayInputStream(bArr);
            try {
                byteArrayOutputStream = new ByteArrayOutputStream();
                try {
                    decompress(byteArrayInputStream, byteArrayOutputStream);
                    byte[] byteArray = byteArrayOutputStream.toByteArray();
                    byteArrayOutputStream.flush();
                    LiteCloseableUtil.closeQuietly(byteArrayOutputStream);
                    LiteCloseableUtil.closeQuietly(byteArrayInputStream);
                    return byteArray;
                } catch (Throwable th2) {
                    th = th2;
                    LiteCloseableUtil.closeQuietly(byteArrayOutputStream);
                    LiteCloseableUtil.closeQuietly(byteArrayInputStream);
                    throw th;
                }
            } catch (Throwable th3) {
                th = th3;
                byteArrayOutputStream = null;
            }
        } catch (Throwable th4) {
            byteArrayInputStream = null;
            th = th4;
            byteArrayOutputStream = null;
        }
    }
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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