论文标题

mir:在JavaScript中对动态库妥协的自动量化特权减少

Mir: Automated Quantifiable Privilege Reduction Against Dynamic Library Compromise in JavaScript

论文作者

Vasilakis, Nikos, Staicu, Cristian-Alexandru, Ntousakis, Grigoris, Kallas, Konstantinos, Karel, Ben, DeHon, André, Pradel, Michael

论文摘要

第三方图书馆简化了大规模软件系统的开发。但是,他们经常具有比完成任务所需的特权要多得多。即使这些图书馆没有积极恶意,这种额外的特权通常会在运行时通过动态妥协利用。 MIR通过在库的边界引入细粒度的读取 - 续签(RWX)权限模型来解决此问题。导入库的每个字段均由一组许可,开发人员在导入库时可以表达这些权限。为了在程序执行过程中执行这些权限,MIR将库及其上下文转换以添加运行时检查。由于权限会淹没开发人员,MIR的权限推断通过分析其消费者如何使用库来生成默认权限。 Mir的JavaScript适用于50个流行的库,表明RWX许可模型将简单模型与力量结合在一起:它足够简单,可以自动推断出99.33%的所需权限,足以防御16个真正的威胁,可以有效地有效地在实践中有效地有效(1.93%的高架开销),并且可以将新颖的量化量化。

Third-party libraries ease the development of large-scale software systems. However, they often execute with significantly more privilege than needed to complete their task. This additional privilege is often exploited at runtime via dynamic compromise, even when these libraries are not actively malicious. Mir addresses this problem by introducing a fine-grained read-write-execute (RWX) permission model at the boundaries of libraries. Every field of an imported library is governed by a set of permissions, which developers can express when importing libraries. To enforce these permissions during program execution, Mir transforms libraries and their context to add runtime checks. As permissions can overwhelm developers, Mir's permission inference generates default permissions by analyzing how libraries are used by their consumers. Applied to 50 popular libraries, Mir's prototype for JavaScript demonstrates that the RWX permission model combines simplicity with power: it is simple enough to automatically infer 99.33% of required permissions, it is expressive enough to defend against 16 real threats, it is efficient enough to be usable in practice (1.93% overhead), and it enables a novel quantification of privilege reduction.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源