程序分析SIG例会 2025-01-02 19:00-20:00(UTC+08:00)Beijing

议题(Agenda)

议题1、面向鸿蒙应用的并行化静态安全分析框架进度
议题2、面向鸿蒙应用的跨语言程序分析技术进度 议题3、基于程序静态分析和大模型技术增强的鸿蒙原生应用自动化测试技术研究进度
议题4、基于DSL的鸿蒙应用检测框架进度

与会人(Attendees)

会议纪要(Minutes)

议题1、面向鸿蒙应用的并行化静态安全分析框架进度分享
汇报人: 柴仁超
会议结论:
1、重构了扩展指针分析能力部分的代码,使用pointo信息增强健壮性。
2、并行错误检测规则中实现了haveCommonLock函数逻辑,能够判断共享对象在两个不同的线程中是否被同一个锁所保护。

议题2、面向鸿蒙应用的跨语言程序分析技术
汇报人:伍家乐
会议结论:
1、完成 Node-API 文档调研,构建了以 Ghidra 为基础的分析工具链。
2、二进制分析/源代码分析启动跨语言数据流模型构建,初步处理 napi 函数调用及参数传递关系。
3、注意到多种注册方式和扩展接口,后续将补充多态注册和回调函数的支持。

议题3、基于程序静态分析和大模型技术增强的鸿蒙原生应用自动化测试技术研究
汇报人:明孟立
会议结论:
1、实现了 UIAbility 与 Page 之间跳转路径的静态分析流程,支持标注起点与终点页面。
2、分析流程包括:以生命周期/事件处理函数为入口 → 构建调用链(RTA)→ 遍历控制流图 → 定位跳转 API → 数据流分析终点页面 → import 分析起点页面。

议题4、基于DSL的鸿蒙应用检测框架进度
汇报人:柳政尧
会议结论:
1、DSL 基本结构语法适当
2、继续完善查询相关功能。

遗留问题:

  • TypeScript 缺少反射,需要重新设计类型推断实现方式。