在打lrt之前的两天可谓是疯狂至极,不过也没有忘记学习 在网吧学了控制台程序和迷宫,不过效果一点也不好,很不推荐在网吧学习。

lrt的时候,maze题临门一脚就是出不来,后面发现需要转化dword为正式地图,shift+e提取后用以下代码转化为可视化迷宫

# 原始数据(完整填入你的所有数字)
raw_data = [
1,0,0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
1,0,0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,0,0,
0,0,0,0,3,0,0,0,1,0,
0,0,1,0,0,0,0,0,0,0,
# 此处省略中间部分数据,需将所有数字按顺序补全
0,0,4,0,0,0,0,0,0,0
]

# 第一步:按4位一组,提取每组第一个数字
processed = []
for i in range(0, len(raw_data), 4):
    if i < len(raw_data):
        processed.append(str(raw_data[i]))

# 第二步:转化为一行15个数字,无空格无逗号
result = []
for i in range(0, len(processed), 15):
    # 截取15个字符为一组,拼接成字符串
    line = ''.join(processed[i:i+15])
    result.append(line)

# 输出最终结果(每行15个数字,无空格无逗号)
for line in result:
    print(line)

三个迷宫都十分简单,不管是自己解还是用工具都行,转化过后如图

之后又去研究了一下安卓逆向,听annm哥的了解apk文件的结构先,

1. assets 目录 存放静态资源文件,如音频、视频、HTML 等。这些文件不会被编译,开发者可以通过 AssetManager 直接访问。

2. lib 目录 包含与特定硬件架构相关的本地库文件(如 .so 文件)。这些库文件支持应用在不同设备上的运行。

3. META-INF 目录 存储签名信息,用于验证 APK 的完整性和来源。主要文件包括:

MANIFEST.MF:记录 APK 文件的元数据和哈希值。

CERT.RSA:包含数字签名信息,用于验证 APK 的合法性。

CERT.SF:记录资源文件和清单文件的哈希值,确保文件未被篡改。

4. res 目录 存放编译后的资源文件,包括:

drawable:图像资源。

layout:布局文件。

values:字符串、颜色等资源。 这些资源通过资源 ID(如 R.drawable.image)在代码中引用。

5. AndroidManifest.xml 文件 这是应用的核心清单文件,描述应用的基本信息和组件配置,包括:

包名、版本号。

权限声明(如网络访问权限)。

应用组件(Activity、Service、BroadcastReceiver 等)的注册信息。

6. classes.dex 文件 包含应用的 Dalvik 字节码,是 Java 源代码编译后的结果。Android 系统通过 Dalvik 或 ART 虚拟机执行这些字节码。

7. resources.arsc 文件 资源索引文件,记录资源的类型、名称和 ID。系统通过解析该文件快速加载资源。

重要注意事项

签名机制:APK 文件必须经过数字签名,确保其来源可信且未被篡改。

解压与查看:APK 文件可以使用解压工具查看内部结构,但部分文件(如 AndroidManifest.xml)需要专用工具(如 Android Studio 或 jadx)解析。

将lrt的apk-release拖入jadx,首先分析mainactivity

接着用apktool解包,

apktool.jar d app-release.apk

这个代码需要在apk文件目录下运行,另外apktool需要配置环境变量,然后将libnative-lib.so拖入ida无脑f5加shift+f12小连招,点击libnative-lib.so往下翻可得

异或解密可得

另外还下载了apkide,正在摸索中,以后会深入学习动调和安卓程序的解包打包修改等,逆向真的好有趣

分类: study

1 条评论

Annms_ · 2025年11月15日 上午2:15

👍👍👍

回复 Annms_ 取消回复

Avatar placeholder

您的邮箱地址不会被公开。 必填项已用 * 标注