记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

白泽带你去参会@ChinaSys(下)

2020-12-24 12:56

 一起来探索计算机的奥秘

 To explore COMPUTER 


前情提要请见——白泽带你去参会@ChinaSys(上)

点击文末“阅读原文”即可直达


DAY1

主题演讲及论文报告


Paper Session 4: 

Security

1

ZeroSpy: Exploring Software Inefficiency with Redundant Zeros

作者:

Xin You, Hailong Yang, Zhongzhi Luan, Depei Qian, Xu Liu


随着现代软件功能日趋复杂,软件开发需要引入大量的依赖库,同时软件中包含复杂的控制流和数据流,使得软件的效率十分低下。其主要原因是软件中包含大量的冗余零,对零值的重复加载和计算会产生不必要的内存流量和单位计算从而浪费内存带宽和CPU资源。受限于静态分析的局限性,通过编译器优化很难消除这些影响效率的冗余零。相比之下,基于硬件的方法不用对代码进行修改,但并未广泛使用在现代商用处理器中。因此作者提出了ZeroSpy系统,通过在执行过程中分析每个内存读指令,记录指令对内存的读取模式,识别出由于数据结构使用不当和从无用计算中产生的冗余零。同时,该系统可以通过冗余零产生的源码位置以及上下文信息提供直观的优化思路。基于该系统,作者发现程序在去除冗余零后执行效率有显著的提升。


2

PDiff: Semantic-based Patch Presence Testing for Downstream Kernels

作者:

Zheyue Jiang,Yuan Zhang,Jun Xu,Qi Wen,Zhenghe Wang,Xiaohan Zhang,Xinyu Xing,Min Yang,Zhemin Yang


开源内核经过第三方厂商的修改后,被应用于大量设备中。然而厂商通常会忽视上游版本中公开的漏洞补丁,或者推迟对漏洞的修补。更为严重的是,很多厂商并不会公开相关设备的漏洞修补信息,有些甚至会给出错误信息。然而,设备漏洞修补信息对于诸如政府和企业等极度重视安全的用户是非常重要的。现有工作是通过代码签名匹配的方式判断目标内核中是否应用了相关补丁。然而,这种方式很难解决实际应用中所出现的问题。通过对第三方厂商公开的有限的源码及对应的内核进行分析后,作者发现,第三方厂商通常会对源码进行定制化修改,并使用非标准的编译参数生成最终发行的内核。通常这些修改会影响补丁周围的代码,甚至是补丁代码本身的特征,这极大降低了基于代码特征签名的检测方式在现实场景下的准确性。因此作者提出了一个高效可靠的针对下游内核补丁存在性检测系统。该系统首先对上游应用补丁前、后的内核进行分析,并分别总结出补丁相关的语义信息。通过将目标内核中的语义分别与应用补丁前、后的补丁相关语义进行比较,判断出与目标内核更为相近的版本,并据此给出目标内核的补丁存在性检测结果。通过对51个安全补丁和406个第三方内核的评估,证明了该系统在拥有极高准确性的同时,满足了极低的漏报和零误报。利用该系统,作者对大量第三方内核进行了详细的调研。通过分析,作者发现第三方厂商公开的漏洞修补报告中确实存在错误信息,同时各厂商存在不同程度的推迟漏洞修补的现象,最严重的甚至超过了三年,作者已经将相关发现通过邮件通知了相应厂商。



3

Detecting Kernel Refcount Bugs with Two-Dimensional Consistency Checking

作者:

Xin Tan, Yuan Zhang, Xiyu Yang, Kangjie Lu, Min Yang


Linux内核中普遍使用引用计数机制来管理各类资源的生命周期。然而由于内核业务的复杂性,对开发者来说正确地维护引用计数相当困难,在开发中很容易引入引用计数缺陷。内核中的引用计数缺陷可能会造成memory Leak、UAF等安全问题,最终可被用于内核提权攻击,对内核的可用性和安全性造成严重危害。因此对内核中的引用计数缺陷进行检测是十分重要的。然而,现有的针对引用计数缺陷的检测方案无法同时满足较高的准确性和较高的覆盖率。此外,已有的工作无法高效的自动化的识别出内核中所有的引用计数字段,这同样限制了这些检测方案的可用性。


有鉴于此,作者提出了两种新的技术以实现对Linux内核中引用计数缺陷进行高效的检测。其一为基于行为推断的引用计数识别技术。该技术基于引用计数的行为特点进行识别,兼具准确性与完备性。其二为双维度的一致性检测技术。该技术关注于一个引用计数增操作与和他配对的减操作之间的正确性,并通过两个不同维度的一致性检测来是否存在引用计数问题。作者对Linux内核中超过18000个文件进行了检测,识别出了792个引用计数字段,并检测出了44个未知的引用计数缺陷。此外,作者还与Linux社区积极协作,被发现的44个缺陷中,有34个缺陷已经完成了修复。




Paper Session 5: 

Application

1

A Locality-Aware Energy-Efficient Accelerator for Graph Mining Applications

作者:

Pengcheng Yao, Long Zheng, Zhen Zeng, Yu Huang, Chuangyi Gui, Xiaofei Liao, Hai Jin, Jingling Xue


随着对复杂图结构进行分析的需求不断增长,图挖掘技术也变得越来越重要。现有的图形加速器通常会把绝大多数随机访问的数据放在一个片内存储器上,从而避免产生片外通信。然而图挖掘技术在访问数据时,不仅是图节点,对于节点间边的访问也存在大量的随机访问。相较于节点,边的访问要更加复杂,这极大降低了硬件的性能并且提升了功耗。而作者观察到大多数图挖掘时的随机访存都仅会访问实际图中一小部分高价值的数据。作者基于此设计实现了第一个图挖掘加速器GRAMER。GRAMER包含了一个专门的内存结构,将高价值的数据存放在高优先级的内存中,而其他数据则存放在一个具有轻量级替换策略的缓存区域,同时该系统通过精心设计的流水线处理单元来进一步提高计算的并行性,提高负载的平衡。作者在Xilinx Alveo U250上实现了GRAMER,并和运行在Intel E5-2680 v4处理器上的基于CPU的图挖掘系统进行了对比,相比之下,GRAMER不仅提升了计算速率(1.11倍至129.95 倍)也节省了大量的性能开销(5.79×〜678.34×)。



2

BORA: A Bag Optimizer for Robotic Analysis

作者:

Jian Zhang, Tao Xie, Yuzhuo Jing, Yanjie Song, Guanzhou Hu, Si Chen, Shu Yin


作者设计实现了一个名为BORA的文件系统中间件,用于优化机器人操作体统(ROS)中bag文件(ROS系统中用于存储带有时间戳的消息的文件)获取操作。BORA在ROS和现有文件系统间实现了基于语义的数据预处理。具体来说,该系统会将ROS bag数据分为多组且赋予不同的标签,通过基于哈希的标签管理机制来减少数据索引和文件打开的时间,同时该系统还能够在不进行数据检索和定位的情况下为ROS分析程序提供必要的数据。最终作者在三个计算平台中集成了该系统原型:实验室单节点工作站,九节点PVFS并行文件系统集群和天河超级计算机存储子系统。实际应用测试表明,相比于传统的bag操作,BORA将获取有效数据的性能提高了11倍。此外,在机器人蜂群场景下,由于该系统可以同时检索多个bag的数据,从而将数据获取的性能提高了10倍,并将同时打开上百个bag的时间缩短了3100倍。



3

Ptolemy: Architecture Support for Robust Deep Learning

作者:

Yiming Gan, Yuxian Qiu, Jingwen Leng, Minyi Guo, Yuhao Zhu


深度学习很容易受到对抗样本的攻击,攻击者可以通过精心构造的输入误导神经网络模型给出错误结果。现如今的防御策略要么无法检测对抗样本,要么在推测时会引入极大的开销。作者通过观察发现DNN的输入会唯一地激活一组神经元,而这些神经元对最终的输出至关重要,更关键的是,对抗样本和良性样本会趋向于激活不同的神经元。因此作者基于此提出了Ptolemy系统,一个基于算法-架构的协同设计系统,可以以极低的开销检测对抗样本的攻击。实验数据表明,该系统在具有更高的检测精度的同时,仅产生了约2%的开销,远低于现有检测机制。



DAY2

心得分享交流


Session 1: 

计算机系统研究的一些体会

上海交通大学的陈海波教授为大家分享了计算机系统研究中的一些心得和体会。首先,陈海波老师为大家讲述了自己在计算机系统研究中的思考。老师总结道:计算机系统研究的三大驱动力在于工艺与硬件的变化,技术创新的进步以及应用模式的变化。计算机系统的研究是科学、工程和艺术的组合,需要简洁优雅的构建出实用的系统来解决现实中遇到的复杂问题,并且要始终以steady,simple,timely,efficient,adaptable dependable,yummy七点为目标。


当前从事计算机系统研究不仅要埋头拉车,也要抬头看路。既需要在一个领域内埋头苦干深入钻研,也要关注宏观世界与技术趋势的变化,逐步形成系统性。当今系统研究主要有几大趋势,第一个就是从分层解耦到垂直整合,需要重新定义系统软件栈。目前计算机系统正在从传统的分层解耦走向云+端的垂直整合,这就为跨层设计重新定义系统软件栈提供了机会。第二个趋势就是后摩尔时代的三堵墙——编程墙、功耗墙、效用墙需要新的软硬件协同机制去突破。这需要新时代的研究者通过使用软件设计理念构建硬件、充分挖掘和利用硬件特性、扩展硬件与软件协同等多种途径去积极探索如何进一步最大化软件和硬件的效能,突破后摩尔时代计算机系统的性能瓶颈。此外,基于数据驱动的软件优化方法、应用模式的变化、计算体系结构变化以及从CPU为中心到DSA与智能设备的崛起都为研究提供了足够多的机会。最后作为回顾,老师认为,社区服务是实现自我价值、形成认知的重要途经,研究的过程必然是曲折的,但前途是光明的。

扫码观看陈海波教授讲座视频



Session 2: 

优秀博士的分享

研讨会的最后,多名优秀博士为大家分享了自己在科研中的一些心得体会。例如:做研究不能只追逐短期热点,需要逐步形成沉淀,由点到线到面,再到事物的整体。还有博士提到:要管理好时间与预期,不同类型的研究有不同的研究周期,突发奇想型的研究可以在较短时间内完成,系统性和理论性的研究以及突破性研究可以在较长时间内完成,不要用长时间去完成短时间就可以完成的工作。同时,在做长时间工作时,要注意总结和积累,并且不要忽视研究过程的中间结果。


还有博士分享了自己的体会:要做聚焦性的研究并构建个人标签。论文只是结果,更重要的是在科研过程中构筑不同的能力,比如发现与定义问题的能力、分析与解决问题的能力、独立承担关键任务的能力、独立思考与自我批判的能力、以及清晰的逻辑表达能力。


——Fin——

上述参会内容由笔者在听报告时记录完成,如对报告有描述不当的地方,还请见谅,欢迎批评指正。

参会代表 丨 赵钱孙 Robin

文案编辑 丨 赵钱孙 Robin

版面设计 丨 Wisher

什么?你还没有关注白泽?

了解更多更新鲜的安全攻防信息、想要深入认识白泽战队、联系或者加入我们——

欢迎扫描下方二维码关注公众号“白泽战队”,我们在这里等你来!

公众号:白泽战队

一个有情怀的安全团队


知识来源: https://mp.weixin.qq.com/s?__biz=MzU4NzUxOTI0OQ==&mid=2247484830&idx=1&sn=f737781926a2170af66900a7ef558117

阅读:111407 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“白泽带你去参会@ChinaSys(下)”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

黑帝公告 📢

永久免费持续更新精选优质黑客技术文章Hackdig,帮你成为掌握黑客技术的英雄

广而告之 💖

标签云 ☁