信息安全研究 ›› 2023, Vol. 9 ›› Issue (10): 954-.

• 漏洞挖掘与威胁检测专题 • 上一篇    下一篇

一种基于无害处理识别的嵌入式设备漏洞检测方法

周建华1,3,4李丰1,3,4湛蓝蓝1,2,3,4杜跃进1,2,5霍玮1,2,3,4   

  1. 1(中国科学院信息工程研究所北京100093)
    2(中国科学院大学网络空间安全学院北京100049)
    3(中国科学院网络测评技术重点实验室北京100195)
    4(网络安全防护技术北京市重点实验室北京100195)
    5(三六零科技集团有限公司北京100015)
  • 出版日期:2023-10-17 发布日期:2023-10-28
  • 通讯作者: 李丰 博士,副研究员.主要研究方向为程序分析与软件漏洞挖掘. lifeng@iie.ac.cn
  • 作者简介:周建华 博士,工程师.主要研究方向为程序分析与软件漏洞挖掘. zhoujianhua@iie.ac.cn 李丰 博士,副研究员.主要研究方向为程序分析与软件漏洞挖掘. lifeng@iie.ac.cn 湛蓝蓝 硕士.主要研究方向为程序分析与软件漏洞挖掘. zhanlanlan@iie.ac.cn 杜跃进 博士,教授.主要研究方向为互联网环境下的数据安全、企业安全以及威胁情报. duyuejin@360.cn 霍玮 博士,研究员.主要研究方向为软件漏洞挖掘、利用和安全评测. huowei@iie.ac.cn

A Vulnerability Detecting Approach Based on Sanitizer Identification for Embedded Devices

Zhou Jianhua1,3,4, Li Feng1,3,4, Zhan Lanlan1,2,3,4, Du Yuejin1,2,5, and Huo Wei1,2,3,4   

  1. 1(Institute of Information Engineering, Chinese Academy of Sciences, Beijing 100093)
    2(School of Cyber Security, University of Chinese Academy of Sciences, Beijing 100049)
    3(Key Laboratory of Network Assessment Technology, Chinese Academy of Sciences, Beijing 100195)
    4(Beijing Key Laboratory of Network Security and Protection Technology, Beijing 100195)
    5(360 Technology Group Co., Ltd., Beijing 100015)
  • Online:2023-10-17 Published:2023-10-28

摘要: 嵌入式设备的安全问题日益突出,其根源在于设备厂商对安全性的忽视.为有效地发现嵌入式设备中存在的漏洞,污点分析是一种常用且有效的技术手段.无害处理操作(sanitizers)是污点分析中消除污点数据安全风险的关键环节,其识别精度直接决定了漏洞检测效果.针对检测嵌入式设备漏洞时现有方法基于简单模式匹配导致对无害处理操作识别存在的漏报问题,提出了一种基于无害处理识别的嵌入式设备漏洞检测方法(简称ASI),在保证轻量级的基础上提升无害处理操作识别的精度,降低漏洞检测结果的误报率.该方法通过建立变量之间的“内容长度”关联关系,找到潜在的代表内容长度的变量,从而识别出基于污点长度变量进行路径条件约束的无害处理操作;同时基于启发式方法识别出进行特殊字符过滤的无害处理函数.对5个厂商的10款设备固件的实验结果显示,相较于已有ITS技术,ASI的漏洞检测误报率降低了9.58%,而检测时间开销仅增加了7.43%.

关键词: 嵌入式设备, 网络安全, 漏洞检测, 污点分析, 无害处理识别

Abstract: The security issues of embedded devices are increasingly prominent, stemming from the negligence of device manufacturers towards security. To effectively identify vulnerabilities in embedded devices, taint analysis is a commonly used and effective technique. Taint sanitizer plays a crucial role in taint analysis by eliminating the security risks associated with tainted data. The accuracy of sanitizer identification directly determines the effectiveness of vulnerability detection. In the context of detecting vulnerabilities in embedded firmware, existing approaches reliant on simplistic pattern matching have led to the issue of false negatives in identifying taint sanitizer. To address this issue, this paper proposed a vulnerability detection method for embedded devices based on sanitizer identification, ASI, which improved the accuracy of sanitizer identification while ensuring lightweight and reducing the false positive rate of vulnerability detection results. The method established the “contentlength” association relationship between variables, finding potential variables that represent content length, thereby identifying sanitizers based on tainted length variables for path condition constraints. Additionally, it identified sanitizer functions that performed special character filtering based on heuristic methods. Experimental results on 10 device firmwares from 5 popular vendors showed that compared to existing ITS techniques, the false positive rate of ASI has been reduced by 9.58%, while the detection time cost has only increased by 7.43%.

Key words: embedded device, network security, vulnerability detection, taint analysis, Taint Sanitizer Detection

中图分类号: