Repository navigation
KCLF 1.5.6
KCLF 1.5.6
修正 1.5.5 将已映射提供库的头覆写兼容限制为固定指令序列的问题,恢复原版的通用输入契约。
- provider 允许
e_ident[8..15]、e_type/e_machine/e_version被任意内容覆写,无需匹配特定跳板、库名或 App。 - payload/file 仍严格要求 ELF64 little-endian AArch64 ET_DYN;两种模式都保留程序头、动态表、符号表及读取边界检查。
- 保留提供库表增长失败/上限失败和统一回滚处理;未新增内核 ABI、符号或偏移依赖。
验证
- 11 组主机测试通过(ASan/UBSan),覆盖 256 种重复字节及独立字段覆写。
- Android 13 / ARM64 / Linux 5.15.74 / 4K:原生 176 项、普通测试 App 236 项断言通过,无新增留存内核告警或测试 App 崩溃。
- 真正的 ARM64 提供库自行执行四种头覆写后,manual payload 均能导入并调用其函数、读取其数据及安全释放。
其他内核和 16K/64K 页设备未在本轮真机验证。提供库结构解析不证明 linker 来源或恢复已覆写的原始架构。
完整契约、实现和测试证据见附件 COMPATIBILITY_1.5.6.md。
kclf.kpm:137328 字节,SHA-256 b34ba7754f79d3cb988f793e81dfe7b440df091adcb0186e5a5892a028345589。