论文标题

Ivysyn:深度学习框架中的自动漏洞发现

IvySyn: Automated Vulnerability Discovery in Deep Learning Frameworks

论文作者

Christou, Neophytos, Jin, Di, Atlidakis, Vaggelis, Ray, Baishakhi, Kemerlis, Vasileios P.

论文摘要

我们提出Ivysyn,这是第一个完全自动化的框架,用于发现深度学习(DL)框架中的内存错误漏洞。 IVysyn利用天然API的静态性质,以便在低级内核代码上自动执行基于类型感知突变的模糊。给定一组触发内存安全性(和运行时)错误的冒犯输入,在低级,本机DL(C/C ++)代码中,IVysyn自动合成高级语言中的代码片段(例如,在Python中),这是传播错误触发输入的高(ER(ER) - er(errvel)-Level-Level apis。这种代码段本质上是“脆弱性的证明”,因为它们证明了本机代码中攻击者可以通过各种高级API靶向的错误存在。我们的评估表明,在效率和有效性方面,Ivysyn在流行的DL框架中发现脆弱性方面的表现明显优于过去的方法。具体而言,我们使用ivysyn测试张量和pytorch。尽管仍然是早期的原型,但Ivysyn已经帮助Tensorflow和Pytorch Framework开发人员识别和修复61个以前不知名的安全漏洞,并分配了39个独特的CVE。

We present IvySyn, the first fully-automated framework for discovering memory error vulnerabilities in Deep Learning (DL) frameworks. IvySyn leverages the statically-typed nature of native APIs in order to automatically perform type-aware mutation-based fuzzing on low-level kernel code. Given a set of offending inputs that trigger memory safety (and runtime) errors in low-level, native DL (C/C++) code, IvySyn automatically synthesizes code snippets in high-level languages (e.g., in Python), which propagate error-triggering input via high(er)-level APIs. Such code snippets essentially act as "Proof of Vulnerability", as they demonstrate the existence of bugs in native code that an attacker can target through various high-level APIs. Our evaluation shows that IvySyn significantly outperforms past approaches, both in terms of efficiency and effectiveness, in finding vulnerabilities in popular DL frameworks. Specifically, we used IvySyn to test TensorFlow and PyTorch. Although still an early prototype, IvySyn has already helped the TensorFlow and PyTorch framework developers to identify and fix 61 previously-unknown security vulnerabilities, and assign 39 unique CVEs.

扫码加入交流群

加入微信交流群

微信交流群二维码

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