Group of Software Security In Progress

GoSSIP @ LoCCS.Shanghai Jiao Tong University

Automatic Fingerprinting of Vulnerable BLE IoT Devices With Static UUIDs From Mobile Apps

作者:Chaoshun Zuo,Haohuang Wen,Zhiqiang Lin,Yinqian Zhang

单位:The Ohio State University

会议:CCS’19

链接:https://dl.acm.org/citation.cfm?doid=3319535.3354240


低功耗蓝牙 (BLE) 已经被IoT设备广泛使用。在典型场景中,IoT设备需要与配套的手机App连接,为了建立这样一个连接,设备需要向附近应用广播包含UUID的报文,使得应用识别设备、配对以及与其绑定来进一步通信。

在这篇文章中,作者发现当前很多BLE设备和App之间通信的广播报文中使用了静态的UUID,可能会导致攻击者对BLE设备进行指纹识别。这里的指纹识别应该指通过UUID,建立起App与设备之间的关系。此外,作者还发现很多BLE设备采用”Just Works”配对,在没有对App进行身份认证的情况下,攻击者能够连接这些设备。

为了检测这个问题,作者开发了BLESCOPE用于从App中提取UUID以对BLE设备进行指纹识别,该工具还可以识别存在易受攻击的应用程序(嗅探攻击或未授权访问)。

SoK: SSL and HTTPS: Revisiting Past Challenges and Evaluating Certificate Trust Model Enhancements

作者:Jeremy Clark and Paul C. van Oorschot

单位: School of Computer Science Carleton University, Canada

会议:S&P 2013

资料: Paper


INTRODUCTORY REMARKS

在本文中,作者提供了SSL / TLS(以下称为TLS)机制的广泛视角,该机制与Web浏览器一起用于保护HTTP流量。

作者重点关注了:

  • 对HTTPS安全性进行了不同的分类,涵盖了密码设计和实现,系统软件,操作和人为因素方面
  • 总结了未解决的问题和未来的研究方向

Effective Static Analysis of Concurrency Use-After-Free Bugs in Linux Device Drivers

作者:Jia-Ju Bai, Julia Lawall, Qiu-Liang Chen, Shi-Min Hu

单位:Tsinghua University, Sorbonne University/Inria/LIP6

出处:USENIX ATC 2019

资料:Paper


1. Abstract & Introduction

作者使用了一种静态分析方法来有效检测Linux内核驱动中的并发类型UAF Bug (Use-After-Free),这个方法作者命名为DCUAF。作者在Linux-4.19上进行了评估,成功发现了640个真实存在的并发UAF,随机选了130个报告给Linux开发者,其中95个已经被确认。

UAF可以分为并发UAF和顺序UAF,这个工作研究的对象是并发UAF。并发UAF相较于顺序UAF,更难被触发,也更难被发现。作者分析了Linux内核的Commit记录,42%的修复UAF的Commit都是跟并发有关,并且这类UAF几乎都是靠人工检查或者运行时测试发现的。

TBar: Revisiting Template-Based Automated Program Repair

作者:Kui Liu, Anil Koyuncu, Dongsun Kim, and Tegawendé F. Bissyandé

单位:University of Luxembourg

出处:ISSTA’19

原文:https://brucekuiliu.github.io/papers/liu2019tbar.pdf


Abstract

在本文中,作者重新评估了已有基于模板的自动化程序修复技术(APR: automated program repair)的性能,以全面了解各类修复模板(fix pattern)的有效性,并强调其它例如故障定位(fault localization)以及贡献代码提取(donor code retrieval)等辅助步骤的重要性。

为了实现这一目标,作者首先调查了已有文献,并收集、总结、标记出了各类经常被使用到的修复模板。基于此调查,文章提出了TBar,其系统的尝试直接使用这些修复模板来修复程序错误。作者在Defects4j测试集上全面评估了TBar,尤其是不同修复模板在生成合理的补丁(plausible patch)以及正确的补丁(correct patch)的有效性上的实际差异。

作者最终发现,在完全准确的故障定位的前提下,TBar正确/合理的修复了74/101处错误。在实际上的标准APR技术评估过程中,TBar在Defects4j测试集中正确的修复了43处错误,取得了在已有文献中前所未有的性能。

Out of Control: Stealthy Attacks Against Robotic Vehicles Protected by Control-based Techniques

作者:Pritam Dash, Mehdi Karimibiuki, Karthik Pattabiraman

单位:University of British Columbia

出处:ACSAC’ 2019

链接:http://blogs.ubc.ca/karthik/files/2019/09/acsac19.pdf


1. Abstract & Introduction

无人载具(RV)是指在通过在软件控制下在物理世界中运行的物理系统,例如无人飞行器(UAV,又称无人机)和自动驾驶机器人车(也称为无人车)。这种车辆被用于各种工业部门(例如,农业,监视,送快递,仓库管理),甚至是关键任务,例如太空探索任务等。它们依靠传感器和执行机构(液压缸,马达,叶板)操作和导航。

通常为了消除噪声对传感器的影响,会使用基于控制算法的估计技术对传感器数值进行处理,防止执行机构输出出现故障,以及还可以用来实现IDS来检测针对RV的攻击。例如使用CI和EKF方法,可以估算RV的下一个状态和控制输出信号。估计值用于监视RV的运行时行为并标记异常行为。

在本文中,作者提出了三种攻击,以逃避这种基于控制的检测技术诱从而使RV出错。作者还提出了用于执行攻击的自动化算法,而无需攻击者花费大量精力去了解RV的特定细节就可以攻击各种RV。作者在一些部署了入侵检测系统(IDS)的情况下使用控制估计模型监视系统运行时的行为,并且使用ArduPilot模拟器和两个真实的RV(无人驾驶飞机和流动站)进行了这些攻击。最后,控制模型无法检测到这种隐形攻击,并且这些攻击会对RV的任务产生相当大的危害(例如,导致RV坠毁或明显偏离目标)。

A Systematic Evaluation of Transient Execution

作者:Claudio Canella, Jo Van Bulck, Michael Schwarz, Moritz Lipp, Benjamin Von Berg, Philipp Ortner, Frank Piessens, Dmitry Evtyushkin and Daniel Gruss.

单位:Graz University of Technology (格拉茨技术大学), imec-DistriNet, KU Leuven, College of William and Mary.

出处:28th USENIX Security Symposium (USENIX’19)

原文:paper


一、背景

随着时代的不断发展,计算机性能得到了不断的提升,但由于物理因素的限制,使得 CPU 的单核性能无法线性的提升,因此,增加 CPU 的核心数量以及改进 CPU 的流水线(Pipeline)成为提高 CPU 性能的关键所在。现代 CPU 的流水线并行度很高,而且 CPU 内部有很多的特性,比如后续指令的提前执行(Ahead of time)和乱序执行(Out-of-order)等。按照直觉,当某些操作对之前的指令(还没执行)出现数据依赖或控制依赖的时候,CPU 内部流水线应该会阻塞(Stall)。因此,为了使得流水线处于满载状态,很有必要去预测数据依赖关系以及控制流依赖等。但是,预测并不一定都是正确的,因此,当预测失误的时候,就必须把流水线清空(Flush),或者执行回滚操作(Roll-back),使得预执行的指令失效。此外,在指令遇到错误(比如:Page fault 等)的时候也需要清空流水线或者回滚。

FUZZIFICATION: Anti-Fuzzing Techniques

作者:Jinho Jung, Hong Hu, David Solodukhin, and Daniel Pagan; Kyu Hyung Lee; Taesoo Kim

单位:Georgia Institute of Technology, University of Georgia

会议:USENIX Security Symposia 19

Paper:https://www.usenix.org/system/files/sec19-jung.pdf


1 Introduction

模糊测试作为一种软件测试技术,也可以被恶意攻击者使用以发现零日漏洞。因此,开发人员希望在其产品上应用反模糊技术以阻止攻击者进行模糊测试,其概念类似于使用混淆技术削弱逆向工程。

在本文中,作者提出了一种二进制保护的新方向,称为FUZZIFICATION。攻击者仍然可以从受FUZZIFICATION保护的二进制文件中查找错误,但需要花费更多的精力(例如,CPU,内存和时间)。因此,获得原始二进制文件的开发人员或其他受信任方能够在攻击者之前检测程序错误并合成补丁。

RetroWrite: Statically Instrumenting COTS Binaries for Fuzzing and Sanitization

作者:Sushant Dinesh, Nathan Burow, Dongyan Xu, Mathias Payer

单位:Purdue University, EPFL

会议:S&P’20

出处:https://nebelwelt.net/publications/files/20Oakland.pdf


Abstract

目前,对于闭源的二进制文件的自动化漏洞挖掘方式为基于动态二进制插桩的模糊测试(fuzzer)和内存安全性分析(sanitizer),但其有很大的性能开销。目前的静态二进制文件改写技术因为不能完全恢复重定位信息(labels),对于再编译出的二进制文件并不能保证程序的完整性,可能会导致程序功能异常、漏洞无法正常复现等问题。

本文主要作出了以下贡献:

  • 实现了一个可以保证64位PIC程序soundness、completeness的静态二进制改写框架
  • 实现了一个用于AFL插桩的pass,使得插桩后的程序能够使用AFL进行模糊测试;并与基于编译器插桩的AFL拥有同样的性能
  • 还实现了一个用于ASAN(Address Sanitizer)插桩的pass,使得程序能够使用ASAN进行内存安全性分析,较目前对于二进制文件的内存安全分析(Valgrind’s memcheck)性能提升了三倍

Exploiting Unprotected I/O Operations in AMD’s Secure Encrypted Virtualization

作者:Mengyuan Li, Yinqian Zhang, Zhiqiang Lin, Yan Solihin

单位:The Ohio State University, University of Central Florida

会议:USENIX’19

资料:原文


SEV是AMD处理器中的一种硬件安全特性,通过对内存的加密来实现VM和宿主之间的安全隔离。但其仅对内存进行加密,不对完整性进行保护;而在IO过程中,DMA等器件又必须对非加密的内存区进行操作。利用这两个特性,可以实现在不获取密钥的情况下,对任意内存区进行加密和解密。

SEV也存在和SGX类似的page fault侧信道,特权攻击者可以操控页表标记位来使受害者引发缺页,从而获知受害者访问的页;SEV的问题更加严重,在错误码中没有去掉页内偏移,因此特权攻击者可以直接获知具体的访问地址。但实际上,两种粒度的侧信道都可以实现上述的加解密攻击。

Measurement and Analysis of Private Key Sharing in the HTTPS Ecosystem

作者:Frank Cangialosi,Taejoong Chung,David Choffnes,Dave Levin,Bruce M. Maggs,Alan Mislove,Christo Wilson

原文:地址

单位:University of Maryland,Northeastern University,Duke University and Akamai Technologies

出处:CCS 2016


Abstract

在网上通过HTTPS进行身份验证过程中,若Alice所连接的服务器具有Bob的证书以及私钥,则认为通信的对方身份就是Bob。而在现如今互联网中引入了CDNs (Content Delivery Networks),网站服务提供者可能会将自己的私钥与第三方CDN公司进行共享,这将对身份验证起到负面影响。

本文主要做出了如下贡献:

  • 提出了有效分辨网站证书拥有 (owns)、提供 (serves) 以及管理 (manage) 者身份的方法
  • 将这些方法首次应用于研究HTTPS私钥共享问题,发现这种practice已经十分普遍
  • 研究发现很多网站将证书的管理交给第三方负责,且相比自己管理,第三方更加安全