首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到16条相似文献,搜索用时 203 毫秒
1.
针对现有Android平台隐私数据泄露动态检测方法检测效率较低的情况,文章设计并实现了一种基于权限分析的Android隐私数据泄露动态检测方法。该方法将Android静态检测中的权限分析与动态污点检测结合,根据应用程序申请的权限确定动态污点检测的隐私数据类型和隐私出口类型。检测选项保存在系统属性中。实验结果显示,该方法能够在保证隐私数据泄露检测有效性的前提下,提高动态污点检测的效率。  相似文献   

2.
针对Android应用存在的隐私泄露问题,提出一种基于动态污点分析技术的隐私泄露检测方法。通过插装Android系统框架层API源码标记隐私数据,并修改Android应用程序的执行引擎Dalvik虚拟机,保证准确跟踪污点标记在程序执行期间的传播,当有数据离开手机时检查污点标记判断是不是隐私数据。动态污点分析使得应用程序对隐私数据的使用更具透明性。实验结果表明,该方法能够有效检测出Android应用泄露用户隐私的行为,从而更好地保护用户的隐私信息。  相似文献   

3.
王蕾  李丰  李炼  冯晓兵 《软件学报》2017,28(4):860-882
信息流分析可以有效保证计算机系统中信息的保密性和完整性.污点分析,作为其实践被广泛用于软件系统的安全保障技术领域.本文对近些年来面向解决应用程序安全问题的污点分析技术进行综述.首先总结了污点分析的基本原理以及在应用中的通用技术,即使用动态和静态的方法解决污点传播;随后分析该技术在移动终端、互联网平台上的应用过程中遇到的问题和解决方案,包括解决Android应用隐私泄露与检测Web系统安全漏洞的污点分析技术;最后展望该技术的研究前景和发展趋势.  相似文献   

4.
秦彪  郭帆  杨晨霞 《计算机工程》2020,46(5):157-166
静态分析方法被广泛用于Android应用的隐私泄露检测,其以(Source,Sink)对形式检测潜在漏洞,但同时会产生大量虚警。针对该问题,提出一种上下文敏感和域敏感的污点分析方法。对污点传播的操作语义和一致性约束进行形式化定义,保证污点传播的语义正确性,同时分析插桩运行Android应用后产生的Trace片段,验证漏洞是否存在虚警。基于Soot实现原型系统并对DroidBench数据集中的70个应用进行分析,实验结果表明,该方法可成功验证4个虚警并发现8个漏报,表明其能有效判断静态分析结果的正确性。  相似文献   

5.
秦彪  郭帆  涂风涛 《计算机应用》2019,39(10):3018-3027
应用静态污点分析检测Android应用的隐私泄露漏洞会产生许多虚警,为此提出一种上下文敏感、路径敏感和域敏感的半自动程序分析方法,仅需遍历少量执行路径即可判定漏洞是否虚警。首先,运行插桩后的应用来获得一条覆盖Source和Sink的种子Trace。然后,应用基于Trace的污点分析方法来验证Trace中是否存在污点传播路径,是则表明漏洞真实存在;否则进一步收集Trace的条件集合和污点信息,结合活变量分析和基于条件反转的程序变换方法设计约束选择策略,以删除大部分与污点传播无关的可执行路径。最后,遍历剩余执行路径并分析相应Trace来验证漏洞是否虚警。基于FlowDroid实现原型系统,对DroidBench的75个应用和10个真实应用进行验证,每个应用平均仅需遍历15.09%的路径,虚警率平均降低58.17%。实验结果表明该方法可以较高效地减少静态分析结果的虚警。  相似文献   

6.
针对Android应用中存在的漏洞易被恶意攻击者利用进行攻击的问题,提出了一种基于Dalvik寄存器污点分析的Android应用漏洞检测方法。首先对Android应用进行预分析以获取应用基本信息并构建函数调用图,然后将指定的Dalvik寄存器作为污点,实现对污点的前向分析和后向分析功能,最后使用脚本执行器连接预分析模块、污点分析模块和漏洞检测脚本,共同完成漏洞检测功能。基于该检测方法实现了原型系统AndroDetector并进行了对比性实验,实验结果表明此漏洞检测方法检测范围更广且准确率更高。  相似文献   

7.
李洁  俞研  吴家顺 《计算机应用》2016,36(5):1246-1249
针对Web客户端中基于文档对象模型的跨站脚本攻击(DOM XSS)漏洞检测问题,提出一种基于动态污点分析的DOM XSS漏洞检测算法。通过构造DOM模型和修改Firefox SpiderMonkey脚本引擎,利用动态的、基于bytecode的污点分析方法实现了DOM XSS漏洞的检测。对DOM对象类属性的扩展和SpiderMonkey字符串编码格式的修改可以完成污点数据标记;遍历JavaScript指令代码bytecode的执行路径,获得污点传播路径,实现污点数据集的生成;监控所有可能会触发DOM XSS攻击的输出点,实现DOM XSS漏洞的判定。在此基础上,利用爬虫程序设计并实现了一个互联网DOM XSS漏洞检测系统。实验结果表明,所提算法能有效检测网页存在的DOM XSS漏洞,其检测率可达92%。  相似文献   

8.
陈衍铃  赵静 《计算机应用》2011,31(9):2367-2372
在现有的污点分析技术基础上,针对当前污点分析工具的记录不准确等缺陷,研究并实现了基于虚拟化技术的动态污点分析。结合虚拟化技术设计了动态污点分析框架,针对内存污点数据和硬盘污点数据分别设计了基于Hook技术的污点标记模型和Hash遍历的污点标记模型,依据Intel&AMD的指令编码格式对指令进行分类并依据指令类型设计污点传播策略,为解决信息记录冗余问题设计了基于指令筛选的污点记录策略。实验证明,该技术是有效的动态污点分析方法,可以很好地运用于模糊测试中的测试用例生成与漏洞检测。  相似文献   

9.
基于执行踪迹离线索引的污点分析方法研究   总被引:1,自引:0,他引:1  
马金鑫  李舟军  张涛  沈东  章张锴 《软件学报》2017,28(9):2388-2401
针对二进制代码的污点分析方法在软件逆向工程、漏洞分析及恶意代码检测等方面具有重大的意义,目前大多数污点分析方法不支持浮点指令,执行效率较低,且传播的精度也不够高.提出并实现了一种基于执行踪迹离线索引的污点分析方法,以字节为粒度,且支持污点标签.提出执行踪迹离线索引的生成及查询算法,通过离线索引可跳过与污点数据无关的指令,以提高污点分析的效率.首次描述并解决了即时翻译执行导致的污点丢失问题.使用污点标签以标识污点的来源和位置.提出较完善的污点传播算法,支持浮点指令,以尽可能精确地刻画污点信息从源操作数传递到目的操作数的过程.实现了灵活的可配置机制,用户可通过黑名单动态地引入污点数据.将本文提出的方法应用到漏洞检测的场景中,使用12个真实的软件漏洞作为测试样本集,将本文中的方法与TEMU作对比实验,实验结果表明本文方法具备较强的漏洞检测能力,可验证的漏洞数比TEMU更多,且其平均执行效率比TEMU高5倍.  相似文献   

10.
分析对比了现有的行为分析系统的优缺点,针对逆向分析过程中所遇到的代码保护技术等困难,研究并改进了指令级的动态污点分析技术。利用虚拟化技术,设计了一套具有通用性的逆向分析平台。研究插件结构实现可扩展性,以适应漏洞挖掘、恶意行为检测等领域的应用。经实验测试,该设计能与常规的逆向手段配合,显著地提高分析的效率。  相似文献   

11.
动态信息流分析的漏洞利用检测系统   总被引:1,自引:0,他引:1  
安全相关的函数使用了来自网络用户输入或配置文件的非可信数据,由于未经过严格验证,引发了软件安全问题.大量软件漏洞都与非可信数据传播相关.非可信数据传播分析的漏洞利用检测系统将从网络用户输入或配置文件中获得的非可信数据标记为污染数据,使用信息流方法分析污染数据的传播范围,对可能使用污染数据的函数使用多种策略进行污染检查.借助开源的虚拟机代码实现动态信息流跟踪的漏洞检测原型系统,并优化了漏洞利用检测过程.  相似文献   

12.
漏洞这一名词伴随着计算机软件领域的发展已经走过了数十载。自世界上第一个软件漏洞被公开以来,软件安全研究者和工程师们就一直在探索漏洞的挖掘与分析方法。源代码漏洞静态分析是一种能够贯穿整个软件开发生命周期的、帮助软件开发人员及早发现漏洞的技术,在业界有着广泛的使用。然而,随着软件的体量越来越大,软件的功能越来越复杂,如何表示和建模软件源代码是当前面临的一个难题;此外,近年来的研究倾向于将源代码漏洞静态分析和机器学习相结合,试图通过引入机器学习模型提升漏洞挖掘的精度,但如何选择和构建合适的机器学习模型是该研究方向的一个核心问题。本文将目光聚焦于源代码漏洞静态分析技术(以下简称:静态分析技术),通过对该领域相关工作的回顾,将静态分析技术的研究分为两个方向:传统静态分析和基于学习的静态分析。传统静态分析主要是利用数据流分析、污点分析等一系列软件分析技术对软件的源代码进行建模分析;基于学习的静态分析则是将源代码以数值的形式表示并提交给学习模型,利用学习模型挖掘源代码的深层次表征特征和关联性。本文首先阐述了软件漏洞分析技术的基本概念,对比了静态分析技术和动态分析技术的优劣;然后对源代码的表示方法进行了说明。接着,本文对传统静态分析和基于学习的静态分析的一般步骤进行了总结,同时对这两个研究方向典型的研究成果进行了系统地梳理,归纳了它们的技术特点和工作流程,提出了当前静态分析技术中存在的问题,并对该方向上未来的研究工作进行了展望。  相似文献   

13.
Crash(程序崩溃)分析是漏洞挖掘与利用的关键阶段,判定Crash是由何种类型漏洞产生的是进行Crash分析和漏洞利用的前提。针对现有漏洞检测平台无法有效识别Crash类型的问题,提出一种二进制可执行程序漏洞检测和Crash类型判定的方法。该方法通过对二进制可执行程序Fuzz出的Crash进行污点标记,在污点传播阶段兼顾污点清除、间接污染等污点传播规则,在污点检查阶段通过收集崩溃点上下文信息,匹配多种漏洞触发规则。基于上述方法开发出对二进制程序漏洞检测和判定Crash所属漏洞类型的原型系统,实验结果表明,该方法适用于栈溢出、格式化字符串、堆溢出等漏洞导致的覆盖返回地址、函数指针等模式,具有较高准确率。  相似文献   

14.
针对Android应用程序组件间通信过程中的消息载体Intent有可能被攻击者构造进而引发组件被恶意注入的安全风险问题,提出了一种基于静态污点分析的检测方法。在构建Android应用的函数调用图和控制流图的基础上,通过跟踪应用组件内和组件间不可信Intent消息的污点传播过程,检测应用中潜在的Intent注入漏洞。用该方法对4类标准测试应用和50款第三方应用进行测试,实验结果表明了该方法的可行性和有效性。  相似文献   

15.
在对现有动态污点分析平台研究和分析的基础上,提出一种路径自动生成技术。借助二进制静态分析技术获取目标程序的指令序列,以基本块为粒度计算执行覆盖率,在目标程序动态执行中抓取其运行轨迹,由收集到的路径约束条件构造新的路径约束条件,经约束求解生成覆盖其它路径的新的测试用例。借助虚拟化技术实现动态污点分析各用例的并行执行,较大幅度提高污点分析的路径覆盖率和执行效率。  相似文献   

16.
方浩然  郭帆  李航宇 《软件学报》2022,33(6):1978-1995
覆盖反馈的灰盒Fuzzing已经成为漏洞挖掘最有效的方式之一.广泛使用的边覆盖是一种控制流信息,然而在面向污点风格(taint-style)的漏洞挖掘时,这种反馈信息过于粗糙.大量污点无关的种子被加入队列,污点相关的种子数量又过早收敛,导致Fuzzing失去进化方向,无法高效测试Source和Sink之间的信息流.首先,详细分析了现有反馈机制在检测污点风格漏洞时不够高效的原因;其次,提出了专门用于污点风格漏洞挖掘的模糊器TaintPoint.TaintPoint在控制流轨迹的基础上加入了活跃污点这一数据流信息,形成活跃轨迹(livetrace)作为覆盖反馈,并围绕活跃轨迹分别在插桩、种子过滤、选择和变异阶段改进现有方法.在UAFBench上的实验结果表明:TaintPoint检测污点风格漏洞的效率、产出和速度优于业界领先的通用模糊器AFL++及定向模糊器AFLGO;此外,在两个开源项目上发现了4个漏洞并被确认.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号