2024精武杯复盘-计算机手机apk

作者:ljnljn学习之路 发布:2026-09-29 16:22 收录:2026-09-29 18:56 3 次阅读 约 1367 字
摘要:题目补完计划 No.2-2

题目补完计划 No.2-2

手打的计算机和手机

1. 请综合分析计算机和手机检材,计算机最近一次登录的账户名是

admin 

2. 请综合分析计算机和手机检材,计算机最近一次插入的USB存储设备串号是

3. 请综合分析计算机和手机检材,谢弘的房间号是()室

201 找到不对的文件 

4. 请综合分析计算机和手机检材,曹锦芳的手机号后四位是

2k的压缩包是伪加密,解压就搜到了 

5. 请综合分析计算机和手机检材,找到全部4份快递相关的公民信息文档,按姓名+电话+地址去重后共有多少条?

3、4都没加密,直接合并计算 合并发现最后只有4997项 

6. 请综合分析计算机和手机检材,统计检材内共有几份购票平台相关的公民信息文档

大小反常,猜测是vc容器  这里有vc密码  密码是5thGoldenEyesCup 

7. 请综合分析计算机和手机检材,樊海锋登记的邮箱账号是于上题文件中找到

8. 请综合分析计算机和手机检材,统计购票平台相关的文档,去重后共有多少条身份证号为上海的公民信息?

用excel分列后删除重复值  一共56人

9. 请分析手机检材,2022年11月7日,嫌疑人发送了几条短信?

3 

10. 请分析手机检材,其中保存了多少条公民住房信息?

12 

张智、吴涵、陈剑、关星、常见、俞辉遥、章衡、郭何、范宏伟、张三、李四、王武

apk

备忘录

1. 目标手机备忘录中记录了一串字符串,从中得到答案。

2. 在反编译出的文件中,正确答案在哪个文件里?

activity_main.xml

easyapk

1. 本 App 中 SharedPreferences 配置文件的名称(包括后缀)是什么?

myprefs.xml 

2. 上述配置文件的绝对路径(包括文件名)是什么?

/data/data/com.hl.easyapk/shared_prefs/myprefs.xml

3. 程序中要验证输入的答案需要调用了几次 MD5?

首先注意到sha类里的encrypt函数是要调用md5的  程序启动时会调用五个函数  分别看五个函数  所以启动的时候就调用了5次 接着点击按钮之后又调用1次  总共是6次

verify

1. 压缩包是什么格式?

7z 

2. AES 的 Key。

en1是aes  发现用en2进行了key的生成  en2的密钥是thisiskey en2的算法,没学逆向也不太懂,搜了一下是rc4算法 然后用cyberchef能解开  所以aes的key是thisisyouraeskey

2. 除了 AES 还使用了什么算法?

rc4

2. 上题算法的 key 是什么?

thisiskey

easyjni

1. 数据库密钥。

先把数据库复制到模拟器里  然后用frida跟踪就行,我这里不知道为啥没跟踪到  直接做的话可以看代码  Encrypt函数跳转到xxtea加密  最终密码是66d6ad256b0b03143e5571276bcebfc756a8fc0f7322b31ee8a8a2e992cbce37 然后用db browser打开 

2. 账号的长度为多少?

这里加载了easzjni libarary,我们找so文件看看  把mianactivity一个一个点过去  然后看到诡异的代码  疑似加密 然后最后返回result,有个函数,从这里出发  实在看不懂,交给ai,发现是个base64  然后回来,发现还对字符串做了替换处理  官方的解密脚本

import base64

base64_chars = list("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=")
a = base64_chars[3]
base64_chars[3] = base64_chars[6]
base64_chars[6] = a
a = base64_chars[7]
base64_chars[7] = base64_chars[9]
base64_chars[9] = a
a = base64_chars[20]
base64_chars[20] = base64_chars[21]
base64_chars[21] = a
a = base64_chars[26]
base64_chars[26] = base64_chars[1]
base64_chars[1] = a
a = base64_chars[30]
base64_chars[30] = base64_chars[39]
base64_chars[39] = a
a = base64_chars[2]
base64_chars[2] = base64_chars[48]
base64_chars[48] = a

s1 = "".join(i for i in base64_chars)
s2 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='
data = "MXpjNjRjMzVyYl4zLmACMF8CXi1hMl9jXldbieFIRG91RJFJ"
result = list(base64.b64decode(data.translate(str.maketrans(s1, s2)).encode('utf-8')))

pLen = len(result) - 11
for j in range(0, pLen-1, 2):
    i = result[j]
    result[j] = result[j+1]
    result[j+1] = i

for i in range(0, int(pLen/2)):
    j = result[i]
    result[i] = result[pLen-1-i]
    result[pLen-1-i] = j

for i in range(pLen, pLen+11):
    result[i] = result[i] - 15

for i in range(pLen):
    result[i] = result[i] + 3

aa = "".join(chr(i) for i in result)
print(aa[-11:] + aa[:-11])

答案是11

3. 程序中 kk().getBytes() 得到的值是什么?

MzI5MWRiYjY4MDQzOTQ3MzFhODUyYWYzZ jk3MDIxYTE=

calc

so 文件中算法得到的结果最终是与哪个地址的数据进行比较?(答案格式为 16 进制数 如:0x123456)

过于硬核了,我真不会(哭 看看出题思路吧 

感觉如果到了线下,有时间限制,最后的结果还是复杂apk让ai跑,人分析感觉还是很费劲

Agent 来踢馆

计算机、手机这一部分相对来说比较简单,不过手机取证部分agent卡在ocr上了,感觉还是要对应接入个识图工具  逆向肯定是ai的强项,不必多说,不过jni这道题还是有点卡住了  目前Agent的前端可用性还是不强,知识库逻辑也不行,包括提示词固化也有问题,打算请神上手帮助重构(什

到时候做好了和师傅们分享下制作经验  

这一套题还剩服务器取证,需要重组raid,有点复杂,加上今天事情比较多,明天再做O(∩_∩)O~~

转载声明:本文转载自原发布平台 (作者:ljnljn学习之路), 原文标题《2024精武杯复盘-计算机手机apk》, 查看原文。 版权归原作者及原发布平台所有,本站仅作收录与展示,未对正文内容作实质性修改; 若涉及侵权请联系本站处理。