[2021.07.19] [USENIX Security 2020] TeeRex: Discovery and Exploitation of Memory Corruption Vulnerabilities in SGX Enclaves

Source: https://www.usenix.org/system/files/sec20-cloosters.pdf Authors: Tobias Cloosters, Michael Rodler, Lucas Davi. Download Note: https://jbox.sjtu.edu.cn/l/xF3PaM Contributor: ydh Overview SGX本身无法完全保护三类攻击。第一种是侧信道攻击,第二种是enclave内部的内存破坏,第三种是Iago攻击。 侧信道和Iago攻击不在本文的研究范围内。在legacy code移植或是SGX项目开发的过程中,如果开发者不熟悉SGX特性,很可能会引入漏洞。本文采用了符号执行的方法分析host-to-enclave边界,发现enclave内部可信代码中的漏洞。

[2021.07.12] [PLDI 2021] Alive2 Bounded Translation Validation for LLVM

Source: https://www.cs.utah.edu/~regehr/alive2-pldi21.pdf Authors: Nuno P. Lopes Juneyoung Lee Chung-Kil Hur Zhengyang Liu John Regehr Download Note: https://jbox.sjtu.edu.cn/l/aF3N9R Contributor: pdh Overview Alive2是一个针对LLVM IR的有界翻译验证(bounded translation validation)工作,是一个纯自动化的工具。它通过对程序的资源消耗进行限制,例如将循环展开成某个特定的次数,到达某个可能触发漏洞的边界。Alive2可以避免误报,是一个全自动化的使用SMT求解器的工具,并且无需对LLVM做任何的修改。Alive2检测出了LLVM中存在的47个新的漏洞,其中28个修复了。除此之外,还对LLVM的语言参考,也就是IR的语义定义,打了8个补丁,并且参与了很多LLVM的修订和改错工作。

[2021.07.02] [NDSS 2021] CHANCEL: Efficient Multi-client Isolation Under Adversarial Programs

Source: https://web.ics.purdue.edu/~ahmad37/papers/ahmad-chancel.pdf Authors: Adil Ahmad,Juhee Kim,Jaebaek Seo,Insik Shin,Pedro Fonseca,Byoungyoung Lee. Download Note: https://jbox.sjtu.edu.cn/l/415lI6 Contributor: lty Overview 英特尔SGX旨在为不受信任的云计算机上的用户数据提供机密性。 但是,处理机密用户数据的应用程序可能包含漏洞,这些漏洞会泄漏信息或被恶意编程以收集用户数据。 SGX可信但是其中运行程序不可信,云服务商是不可信的。 为此,本文提出了CHANCEL,它是一个沙箱,旨在在单个SGX enclave内进行多客户端隔离。CHANCEL允许程序的线程在处理请求时访问每个线程的内存区域和共享的只读内存区域。

[2021.05.25] [NDSS 2021] The Abuser Inside Apps: Finding the Culprit Committing Mobile Ad Fraud

Authors:Joongyum Kim, Jung-hwan Park, Sooel Son (KAIST) Source:https://www.ndss-symposium.org/wp-content/uploads/ndss2021_3B-1_23161_paper-1.pdf Contributor: FRH Download Note: https://jbox.sjtu.edu.cn/l/TFDyd0 广告生态是移动平台的重要组成部分,但广告欺诈也成为一个主要的安全威胁(对广告投放者)。为了保护用户,Google在针对开发人员的广告政策中谴责了滥用广告库的行为,并且积极地检测导致广告欺诈的滥用行为。这篇文章中,作者提出FraudDetective这一动态检测框架,能够自动识别Android应用中的广告欺诈。首先,作者将广告欺诈活动定义为在 缺乏明确(explicit)用户交互的情况下 提交了广告URL请求(计次广告)或调用了另一个App到前台。已有的研究中提出了动态检测框架,但这些框架存在两个问题: 缺乏对欺诈行为和用户交互之间因果关系的准确建模 无法追踪造成广告欺诈的具体App模块 为了解决这两个问题,作者提出利用full stack trace来捕获因果关系。针对碎片化的stack trace,作者对AOSP进行定制,收集执行日志并识别广告欺诈活动。作者使用Google Play上48,172个App对FraudDetective进行评估,发现了74个App的34,453次广告欺诈活动。作者进一步对这些活动进行溯源,发现其中98.6%来源于广告库(73/74)。

[2021.05.18] [NDSS 2021] Emilia: Catching Iago in Legacy Code

Source: https://security.csl.toronto.edu/wp-content/uploads/2021/01/rcui-ndss2021-emilia.pdf Authors: Rongzhen Cui, Lianying Zhao, David Lie. Download Note: https://jbox.sjtu.edu.cn/l/oFjqy9 Contributor: ydh Overview Iago攻击是恶意的操作系统修改运行在TEE中可信应用程序syscall的返回值导致应用程序非预期行为。本文通过fuzz的方法劫持应用程序请求的syscall,并对syscall的返回值fuzz来发现应用程序中潜在的Iago漏洞。 使用本文实现的工具对17个legacy应用程序fuzz,发现了51个Iago漏洞,并对漏洞做了进一步深入分析。

[2021.05.11] [PLDI 2021] Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing

Source: https://arxiv.org/pdf/2104.07460.pdf Authors: Guixin Ye, Zhangyong Tang, Shin Hwei Tan, etc. Download Note: https://jbox.sjtu.edu.cn/l/XFikWG Contributor: pdh Overview 本文介绍了一种名为Comfort的JS引擎fuzz的框架,能够检测出JS引擎编译代码得到的结果和ECMAScript标准定义的不一致的bug。它利用基于transformer的自然语言生成模型GPT-2,根据开源的JS代码语料库,来生成有效的JS测试代码实例,再利用差分测试的方法,来探测出JS引擎中可能存在的漏洞。 本文实现的框架对10种主流引擎(JSC in Safari, V8 in Chrome, ChakraCore in Edge, SpiderMonkey in Firefox, 以及一些移动端的引擎包括Hermes, QuickJS, Rhino, Nashorn, JerryScript, Graaljs)进行了检测,共发现了158个特定JS引擎的bug,其中129个被验证了,115个被修复了。除此之外,21个由Comfort生成的测试用例被加入了ECMAScript官方提供的的标准测试集Test262。

[2021.04.27] [Usenix Security 2021] Swivel: Hardening WebAssembly against Spectre

Source: https://www.usenix.org/conference/usenixsecurity21/presentation/narayan Authors: Shravan Narayan, Craig Disselkoen, Daniel Moghimi, Sunjay Cauligi .etc. Download Note: https://jbox.sjtu.edu.cn/l/4FkxtI Contributor: lty Overview Fastly的Terrarium是WebAssembly FaaS平台,客户将代码编译为Wasm并将生成的模块上传到平台,平台负责扩展和隔离。在单个主机中可以运行数千个客户提供的Wasm模块,并依靠Wasm沙箱实现隔离。然而这些隔离会被Spectre攻击破坏。 Swivel通过扩展Lucet和Cranelift代码生成器,以解决FaaS Wasm平台上的Spectre攻击。Swivel提供软硬件两种保护方案,分别是Swivel-SFI和Swivel-CET。

[2021.04.13] [S&P 2015] VC3: Trustworthy Data Analytics in the Cloud using SGX

Source: https://ieeexplore.ieee.org/document/7163017 Authors: Felix Schuster∗, Manuel Costa, Cedric Fournet, Christos Gkantsidis,Marcus Peinado, Gloria Mainar-Ruiz, Mark Russinovich, Microsoft Research Download Note: https://jbox.sjtu.edu.cn/l/HFguB2 Contributor: cyp Overview 用户可以租赁云服务商提供的算力,在基于MapReduce框架下运行大规模的分布式计算,但是云服务商有可能窃取和篡改用户的代码和数据,所以用户希望云服务商可以提供如下安全保证: 代码和数据的完整性和机密性保证 代码执行的可验证性 传统的方法比如同态加密、零知识如果应用到分布式计算中都会又很大的性能消耗,所以作者提出了Verifiable Confidential Cloud Computing(VC3)在没有太多性能消耗的前提下达到需要的安全保证

[2021.04.06] [USENIX Security 2019] Understanding iOS-based Crowdturfing Through Hidden UI Analysis

Authors: Yeonjoon Lee, Xueqiang Wang, Kwangwuk Lee, Xiaojing Liao, and XiaoFeng Wang, Indiana University; Tongxin Li, Peking University; Xianghang Mi, Indiana University Link: https://www.usenix.org/conference/usenixsecurity19/presentation/lee Contributor: Runhan Feng 众包(Crowdturfing)平台会发布各种不正当的任务,如创建虚假账号、发表虚假评论、散播谣言等。在移动端,Apple和Android应用市场一旦检测到众包App即将其下架。安卓平台因为碎片化生态系统的缘故,网络罪犯能够通过不正规的第三方store发布众包App。在Apple平台,因为中心化的App审查、安装政策,这一类App很难发布。但已经有一些众包程序通过在看起来无恶意的App中偷偷嵌入众包UI的方式渗透到iOS App Store。和传统的Web-based众包相比,这些App用来发布一些移动平台的任务,包括虚假的App评论、App排名操纵等。对于这些通过隐藏UI逃避审查的App及其背后的地下生态,目前还没有系统的研究。这篇文章中作者对iOS平台众包App进行的深入分析,主要贡献有: Finding crowdturfing apps 作者提出Cruiser这一方法,对iOS App进行UI hierarchy和UI semantics分析,在28,625个App中识别了102个可疑App (可能包含hidden crowdturfing UI)。作者进一步人工确认其中93个确实包含众包UI。 Measurement and discoveries     作者进一步对这93个App进行深入分析,以了解整个Crowdturfing生态。