返回
Demystifying React Native Android Apps for Static Analysis
DOI:10.1145/3702977.png)
摘要
En 中文
React Native是一种开源框架,通过允许JavaScript端代码与原生端代码交互来简化跨平台应用开发。以往研究忽视了React Native,导致对其应用代码的静态分析不足。本研究开始调查静态分析React Native应用时面临的挑战。我们提出REUNIFY,以提高基于Soot的静态分析对JavaScript端和原生端代码的覆盖率。REUNIFY将Hermes字节码转换为Soot的中间表示。Hermes字节码由JavaScript代码编译而成并集成到React Native应用中,具有独特的语法,使现有JavaScript分析器难以解析。此外,我们研究了操作码(opcode)的分布,并对流行应用和恶意软件中的操作码使用情况进行了深入分析。我们还提出了一个包含97个控制流相关案例的基准测试,以验证生成中间表示的控制流恢复能力。此外,我们建立了React Native的跨语言通信机制模型,以扩展对原生端代码的静态分析覆盖率。我们的评估表明,REUNIFY使调用图中的可达节点平均增加了84%,并在污点分析中进一步识别出平均两个额外的隐私泄露。总之,本文表明REUNIFY显著提高了对React Native Android应用的静态分析能力。
Keyword:
Android
React Native
Mobile App
Static Analysis
期刊
A
IF:
6.2
论文数:
1.2K
被引数:
3.4K
机构
引用论文
没有更多内容

