Group of Software Security In Progress

GoSSIP @ LoCCS.Shanghai Jiao Tong University

On Reliability of Patch Correctness Assessment

作者:Xuan-Bach D. Le, Lingfeng Bao, David Lo, Xin Xia, Shanping Li, Corina Pasareanu

单位:Carnegie Mellon University, Zhejiang University City College, Singapore Management University, Monash University, Zhejiang University, NASA Ames Research Center

出处:ICSE ‘19

原文:https://xin-xia.github.io/publication/icse192.pdf


Abstract

当前最先进的自动化软件修复技术(ASR:automatic software repair)均极度依赖于不完备的软件规格说明书或者测试集来生成补丁,这就有可能导致ASR工具生成的补丁是错误并且难以通用的。因此,研究人员通常会采用自动化标注(automated annotation)或者作者标注(author annotation)这两种方式来评估ASR工具生成补丁的正确性。然而,由于自动化标注难以确认补丁的实际正确性,作者标注又太过于主观,如何恰当的评估众多现有ASR技术的有效性已成为了一个亟待解决的难题。

本文评估了自动化标注与作者标注这两种补丁正确性评估方式的可靠性。作者首先随机选取了现有ASR工具生成的189个补丁,并招募了35个专业开发者作为独立标注者对这些补丁的正确性进行了评估,构造出一组正确性标签作为黄金组(gold set)。作者接着通过度量评分者间信度(inter-rater reliability)这一指标,证明了该黄金组是符合常规标准的高质量基准数据集。随后,作者将自动化标注与作者标注生成的标签与黄金组进行了比较,以评估这两种补丁正确性评估方式的可靠性。

Why Does Your Data Leak? Uncovering the Data Leakage in Cloud From Mobile Apps

作者:Chaoshun Zuo, Zhiqiang Lin, Yinqian Zhang

单位:The Ohio State University

出处:S&P 2019

原文链接:http://web.cse.ohio-state.edu/~lin.3021/file/SP19.pdf


概述

越来越多的应用使用云服务商提供的APIs(Cloud APIs)实现数据存储、数据分析、消息推送等功能。然而,App存储在云端的数据经常出现泄露现象。在文章中,作者从App中错误地使用云端APIs这一角度出发,设计了并实现了LeakScope这一工具,对Google Play上160万个App进行自动化的分析,希望在App中发现因为误用云端API所导致的云端数据泄露漏洞。最终,作者发现使用Amazon、Google和Microsoft云服务的15098个App都存在此种类型的问题,并且已与相关App开发者联系,对问题进行修复。

Measuring the Facebook Advertising Ecosystem

作者: Athanasios Andreou, Marcio Silva, Fabrício Benevenuto, Oana Goga, Patrick Loiseau

单位:Northeastern University, Federal University of Minas Gerais 等

会议:NDSS 2019

链接:https://hal.archives-ouvertes.fr/hal-01959145/document


1.简介

Facebook广告平台在过去几年中一直受到许多争议,涉及侵犯隐私,缺乏透明度等问题。用户为何会收到这些广告,用户的哪些信息被提供给了广告商,隐私信息是否有泄露的风险,推送给用户的广告的可信度如何等等,对于这些问题Facebook平台并未透露具体情况。
研究结果表明,成为广告商没有门槛;一部分广告商的类别是潜在敏感的,比如新闻政治,健康和宗教;大量的广告商采用的定位目标人群策略是不透明的或(对于用户的隐私来说)具有威胁性的。
总而言之,本文的主要工作是为了强调平台需要更好的机制来审核社交媒体中的广告和广告商。

CodeAlchemist: Semantics-Aware Code Generation to Find Vulnerabilities in JavaScript Engines

作者:HyungSeok Han,DongHyeon Oh,Sang Kil Cha

单位:kaist

出处:NDSS 2019

原文:https://www.ndss-symposium.org/wp-content/uploads/2019/02/ndss2019_05A-5_Han_paper.pdf


1.背景

Javascript引擎已经成为现代浏览器为网站提供动态和可交互性的核心部分。截止2018年7月,大约有94.9%的网站(链接)使用javascript。JS的流行令浏览器的JS引擎成为了一个热门的攻击目标。目前,已经存在大量很多针对JS引擎漏洞的fuzzer。例如LangFuzz,jsfunfuzz,skyfire,TreeFuzz。这些工具都存在着一个共同的缺点:生成的语法正确的测试用例大多数在语义上都是有错误的。

Expressions of Sentiments During Code Reviews:Male vs. Female

作者:Rajshakhar Paul , Amiangshu Bosu , Kazi Zakia Sultana

单位:Wayne State University,Montclair State University

出处:SANER19

原文:pdf


简介

最开始计算领域的工作是以女性为主,但是近几十年来从事计算机的女性占比急剧减少,大多数软件开发组织都以男性为主导,许多女性开发者遇到负面的工作场所体验。男性同事的歧视性咒骂或负面批评可能会进一步加剧这些感受。作者想要研究女性开发者锐减的原因,本研究的主要目标是确定在code review中男性和女性开发人员之间情绪表达的差异。之前也有学者研究过对软件工程(SE)的commit mesages、issue tracking system、code review comments、Stack Overflow posts、mailing-lists的情感表达,但是没有进行性别区分。

Automating Patching of Vulnerable Open-Source Software Versions in Application Binaries

作者:Ruian Duan, Ashish Bijlani, Yang Ji, Omar Alrawi, Yiyuan Xiong , Moses Ike, Brendan Saltaformaggio, Wenke Lee

单位:Georgia Institute of Technology, Peking University

会议:NDSS 19

链接:PDF


本文主要讲了针对移动端上的大量使用第三方开源软件(库)(Open-Source Software,OSS)的应用程序,当第三方库推出安全更新时往往得不到开发者注意的问题,提出了OSSPATCHER这样一个工具,用来在不需要应用程序开发者参与的情况下自动化地根据OSS提供的补丁源码来对应用了该开源库的应用程序打patch。在这当中作者们也设计了很多关键性的技术用来解决其中遇到的问题,如:patch可行性分析、源代码-二进制文件比对以及内存级的修复(in-memory patching)

作者们使用39个OSS和1000个使用了这些有漏洞版本的安卓应用程序。OSSPATCHER生成了675个函数级的补丁,在不影响原有功能的情况下修复了受影响的移动应用程序。之后作者还评估了在热门软件中的10个漏洞(如Android Chrome),使用公开的exploit来攻击,而OSSPATCHER能够在应用之后抵御这些攻击。

VulDeePecker: A Deep Learning-Based System for Vulnerability Detection

作者:Zhen Li, Deqing Zou, Shouhuai Xu, Xinyu Ou, Hai Jin, Sujuan Wang, Zhijun Deng, Yuyi Zhong

单位:Huazhong University of Science and Technology (华中科技大学)

出处:NDSS 2018

原文:https://arxiv.org/pdf/1801.01681.pdf

相关/images/2019-03-07:会议GitHub项目地址数据集来源1:NVD数据集来源2:SARD作者整理之后的数据集:CGD后续文章:SySeVR


一、背景

数据表明,截止 2010 年,CVE(Common Vulnerabilities and Exposures)数量接近 4600 个,到 2016 年,CVE 数量增长到 6500 个左右。软件出现漏洞的问题依旧大量存在,因此,如何有效的检测软件中存在的漏洞,是减少软件漏洞的主要解决方案之一。目前,已经存在较多的漏洞检测工具,例如开源项目: – FlawFinderrough-auditing-tool-for-securityITS4ClangStaticAnalyzer

商业型项目: – CheckmarxCoverityHP Fortify

学术型项目: – VDiscoverVUDDYVulPecker

这些工具都属于静态的漏洞检测工具,存在一些共同的缺点:人力工作密集型 和 普遍的漏报率偏高。

Razzer: Finding Kernel Race Bugs Through Fuzzing

作者:Dae R. Jeong, Kyungtae Kim, Basavesh Shivakumar, Byoungyoung Lee, Insik Shin

单位:KAIST, Purdue University, Seoul National University

出处:IEEE Symposium on Security and Privacy 2019

资料:Paper | Github


1. Abstract & Introduction

作者在本文中提出了自己设计的用来发现内核中的数据竞争类型 漏洞的工具Razzer。

Razzer结合了两种技术: 1. 静态分析找到潜在的存在竞争的代码。 3. 确定性的线程交错技术

作者针对Linux内核实现了一个Razzer的原型。并发现了30个新的内核中的Race bug,其中16个已经被确认且被修补。

在内核中,数据竞争通常是很多有害行为的根源。数据竞争可能会导致内存污染(例如缓冲区溢出、UAF),最后导致权限提升。例如CVE-2016-8655, CVE-2017-2636, and CVE-2017-17712。

作者最后也将Razzer和其他Fuzzing工具进行对比,并总结了对比的结果。

Does Certificate Transparency Break the Web? Measuring Adoption and Error Rate

作者: Emily Stark, Ryan Sleevi, Rijad Muminovic, Devon O’Brien, Eran Messeri, Adrienne Porter Felt, Brendan McMillion, Parisa Tabriz

单位: Google, University of Sarajevo, Cloudflare

出处: IEEE Symposium on Security & Privacy 2019

原文: pdf

Abstract

Certificate Transparency (CT) 是一种近年来提出的证书日志记录方案,作为公钥基础设施的一部分,通过记录Certificate Authority (CA) 公开颁发的数字证书信息,以快速找到恶意或者错误颁发的证书。尽管CT被越来越多的浏览器所接受,想要将其进行全面部署依旧是具有挑战性的任务,其中可能会涉及到兼容性以及用户体验的问题。本篇文章通过讨论CT设计架构的特性,分析其中可能存在的安全问题和缺陷,来向我们展示如何在浏览器端更好地部署大范围的安全改进措施。

Neural Machine Translation Inspired Binary Code Similarity Comparison Beyond Function Pairs

作者:Fei Zuo, Xiaopeng Li, Patrick Young, Lannan Luo, Qiang Zeng, Zhexin Zhang

单位:University of South Carolina, Temple University

会议:NDSS 2019

论文:https://arxiv.org/abs/1808.04706

Background

函数或者代码相似性比较一直以来都是比较热门的话题,一般问题都是给定两个函数或者代码片段,比较两个函数的语义是否相等。这篇论文里作者做的代码相似性比较是基于二进制层面的。此前代码相似比较常用的方法为fuzz或者符号执行,符号执行比较好理解,通过给定相同的输入,查看输出的符号式是否相等。作者在这篇论文里,在此前问题的基础上提出了更高一级的相似性比较,即不同处理器架构的二进制代码语义相似性比较。