Static Attribution of Android Residential Proxy Malware Using Graph Kernels
Iowa State University(爱荷华州立大学);Sandia National Laboratories(桑迪亚国家实验室);Milwaukee School of Engineering(密尔沃基工程学院)
本文提出一种自动化代理软件家族归因方法,通过提取控制流图和函数调用图等图结构表示及行为特征,利用图核特征和二进制能力向量提升分类性能,实现对恶意软件的高准确率归因。
2026-04-30 cs.CR
Open Mobile API: Accessing the UICC on Android Devices
本报告概述了Android设备中的安全元素集成。它侧重于开放移动API作为一个开放的接口,从Android应用程序访问安全元素。开放移动API的整体架构进行了描述和当前的Android设备进行了分析,关于此API的可用性。此外,本报告总结了我们的努力逆向工程的股票ROM的三星Galaxy S3,以分析集成的开放移动API和接口,用于执行基于APDU的通信与UICC(通用集成电路卡)。它进一步详细解释了如何将此功能集成到CyanogenMod(Android设备的售后固件)中。
2016-01-12 cs.CR cs.OS
Design and Implementation of a Controlled Ransomware Framework for Educational Purposes Using Flutter Cryptographic APIs on Desktop PCs and Android Devices
本文设计并实现了一个用于教育目的的可控勒索软件框架,基于Python和Flutter/Dart加密API,模拟WannaCry行为,通过目录限制、RSA私钥解密和文件类型白名单等防护措施支持安全实验与网络安全教学。
2025-08-16 cs.CR
Should Users Trust Their Android Devices? A Scoring System for Assessing Security and Privacy Risks of Pre-Installed Applications
Android设备配备了许多预安装的应用程序,这些应用程序具有跟踪和监视用户的能力。尽管预装的应用程序对用户的安全和隐私构成了很大的危险,但到目前为止,它们在该领域的研究人员中很少受到关注。在这项研究中,我们收集了一个包含这些应用程序的数据集,并将其公开。使用此数据集,我们分析跟踪器SDK,清单文件和云服务的使用情况,并报告我们的结果。我们还进行用户调查,以了解用户的关注和看法。最后但并非最不重要的是,我们提出了一个风险评分系统,该系统根据仔细加权的标准为智能手机分配分数,以巩固我们的研究结果。通过这个评分系统,用户可以根据Android设备上预装的应用程序的安全和隐私影响的可用简明信息,给出自己的信任决策。
2023-01-28 cs.CR
Executing Arbitrary Code in the Context of the Smartcard System Service
这份报告总结了我们关于在几个Android设备上部署的开放移动API实现中存在严重缺陷的调查结果。该漏洞允许将来自特制Android应用程序包(APK)的任意代码注入Android系统服务组件(Open Mobile API实现的中间件组件)并由其执行。可以利用此漏洞来获得提升的功能,例如受分配给此服务的签名级和系统级权限保护的权限。受影响的源代码似乎来自SEEK-for-Android开源项目,并被各种特定于供应商的开放移动API实现所采用,包括Nexus 6(自Android 5.1版)上使用的API。
2016-01-21 cs.CR
Cross-site Scripting Attacks on Android WebView
WebView是Android和iOS中必不可少的组件。它使应用程序能够显示来自在线资源的内容。它简化了执行网络请求、解析数据和渲染数据的任务。WebView使用许多API,可以与WebView内部的Web内容进行交互。在本文中,我们讨论了针对Android WebView的跨站脚本攻击或XSS攻击。跨站脚本(XSS)是Web应用程序中常见的一种漏洞。此漏洞使攻击者能够通过HttpClient API在受害者的WebView中运行恶意代码。使用此恶意代码,攻击者可以窃取受害者的凭据,例如cookie。浏览器用来保护这些凭据的访问控制策略(即同源策略)可以通过利用XSS漏洞绕过。
2013-04-28 cs.CR
On the Effectiveness of System API-Related Information for Android Ransomware Detection
University of Cagliari(卡利亚里大学);National Research of Council(国家研究委员会);University of Sannio(桑尼奥大学)
勒索软件对Android操作系统构成重大威胁。它可以锁定或加密目标设备,受害者被迫支付赎金来恢复数据。因此,与其他恶意威胁相比,及时检测此类攻击具有优先级。以前关于Android恶意软件检测的工作主要集中在面向机器学习的方法上,这些方法专为识别恶意软件家族而量身定制,而没有明确关注勒索软件。更具体地说,这些方法采用了复杂的信息类型,如权限、用户实现的API调用和本机调用。然而,这导致了关于复杂性、对混淆的弹性和可解释性的重大缺点。为了克服这些问题,在本文中,我们提出并讨论了依赖于系统API信息的基于学习的检测策略。这些技术利用勒索软件攻击严重依赖系统API来执行其操作的事实,并允许区分一般恶意软件,勒索软件和好软件。我们测试了使用系统API信息的三种不同方式,即,通过包、类和方法,我们将它们的性能与其他更复杂的最先进的方法进行了比较。所获得的结果表明,基于System API的系统可以非常准确地检测勒索软件和通用恶意软件,与采用更复杂信息的系统相当。此外,所提出的系统可以准确地检测野生环境中的新样本,并显示出对静态混淆尝试的弹性。最后,为了保证早期的设备检测,我们在Android平台上开发并发布了一个完整的勒索软件和恶意软件检测器(R-PackDroid),该检测器采用本文提出的方法之一。
2019-06-26 cs.CR cs.LG
MaMaDroid: Detecting Android Malware by Building Markov Chains of Behavioral Models
随着Android平台的普及,针对该平台的恶意软件威胁激增。随着Android恶意软件和操作系统本身的不断发展,设计强大的恶意软件缓解技术非常具有挑战性,这些技术可以长时间运行,而无需修改或昂贵的重新培训。在本文中,我们介绍了MaMaDroid,一个依赖于应用程序行为的Android恶意软件检测系统。MaMaDroid以马尔可夫链的形式,从应用程序执行的抽象API调用序列中构建行为模型,并使用它来提取特征和执行分类。通过抽象调用它们的包或家族,MaMaDroid保持对API更改的弹性,并保持功能集大小可管理。我们在六年内收集的8.5K良性应用程序和35.5K恶意应用程序的数据集上评估了其准确性,结果表明,它不仅可以有效地检测恶意软件(高达99%的F测量值),而且系统构建的模型可以长时间保持其检测能力(平均值分别为86%和75%的F测量值,训练后一年和两年)。最后,我们与DroidAPIMiner进行了比较,DroidAPIMiner是一个依赖于应用程序执行API调用频率的最先进的系统,表明MaMaDroid的性能明显优于它。
2017-11-20 cs.CR
Android Malware Detection using Deep Learning on API Method Sequences
Concordia University(康考迪亚大学);King Saud University(沙特国王大学);University of Sharjah(沙迦大学)
Android操作系统经历了一个炽热的流行,因为过去几年。这个占主导地位的平台不仅在移动世界中,而且在物联网(IoT)设备中也建立了自己的地位。然而,这种流行是以牺牲安全为代价的,因为它已成为恶意应用程序的诱人目标。因此,对复杂、自动和便携式恶意软件检测解决方案的需求日益增加。在本文中,我们提出了MalDozer,一个自动的Android恶意软件检测和家庭归因框架,依赖于使用深度学习技术的序列分类。从应用程序API方法调用的原始序列开始,MalDozer自动从实际样本中提取并学习恶意和良性模式,以检测Android恶意软件。MalDozer可以作为无处不在的恶意软件检测系统,不仅部署在服务器上,还可以部署在移动设备甚至物联网设备上。我们在多个Android恶意软件数据集上评估MalDozer,范围从1 K到33 K恶意软件应用程序和38 K良性应用程序。结果表明,MalDozer可以正确地检测恶意软件,并将它们归因于它们的实际家族,在所有测试数据集和设置下,F1分数为96%-99%,误报率为0.06%-2%。
2017-12-25 cs.AI cs.CR
Web APIs in Android through the Lens of Security
Web通信已成为移动应用程序不可或缺的特性。然而,目前尚不清楚这些应用程序传输了哪些数据,传输给了谁,以及这种传输会产生什么后果。我们从安全的角度分析了移动应用程序中的Web通信。我们首先手动研究了160个Android应用程序,以确定常用的通信库,并了解它们在这些应用程序中的使用方式。然后,我们开发了一个工具来静态识别应用程序中使用的Web API URL,并恢复JSON数据模式,包括每个参数的类型和值。我们提取了3,376个应用程序中使用的9,714个不同的Web API URL。我们发现开发人员经常使用java.net包进行网络通信,但是,许多应用程序中也使用了OkHttp等第三方库。我们发现,不安全的HTTP连接在闭源应用程序中的普遍程度是开源应用程序的七倍,并且嵌入式SQL和JavaScript代码在500多个不同的应用程序中用于Web通信。这一发现是毁灭性的;它使数十亿用户和API服务提供商容易受到攻击。
2020-06-01 cs.CR cs.SE
BenchPress: Analyzing Android App Vulnerability Benchmark Suites
近年来,开发了各种基准套件来评估Android安全分析工具的有效性。工具评估中使用的基准套件的选择通常基于套件的可用性和流行性,而不是基于它们的特性和相关性。作出这种选择的原因之一是缺乏关于成套基准的特点和相关性的信息。在这种情况下,我们根据经验评估了四个Android特定的基准测试套件:DroidBench,Ghera,IccBench和UBCBench。对于每个基准测试套件,我们确定了在Android应用程序开发的背景下在Stack Overflow上讨论的套件所使用的API,并在227 K真实世界应用程序的样本中测量了这些API的使用情况(覆盖率)。我们还比较了每对基准套件,以确定它们在API使用方面的差异。最后,我们确定了在真实世界的应用程序中使用的安全相关API,但没有在上述任何基准测试套件中使用,以评估扩展基准测试套件的机会(差距)。本文中的发现可以帮助1)Android安全分析工具开发人员选择最适合评估其工具的基准套件(通过覆盖率和成对比较获得信息); 2)Android应用漏洞基准创建者开发和扩展基准套件(通过差距获得信息)。
2019-09-19 cs.CR cs.SE
BinderCracker: Assessing the Robustness of Android System Services
在Android中,应用和系统服务之间的通信由基于事务的进程间通信(IPC)机制支持。Binder作为该IPC机制的基石,将通信双方分隔为客户端和服务器端。与任何客户端-服务器模型一样,服务器不应该对客户端事务的有效性(健全性)做出任何假设。令我们惊讶的是,我们发现这一原则在Android系统服务的实现中经常被忽视。在本文中,我们展示了这个漏洞表面的流行程度和严重性,并试图回答为什么开发人员不断犯这个看似简单的错误。具体来说,我们设计并实现了BinderCracker,这是一个自动测试框架,支持参数感知的模糊测试,已经在六个主要版本的Android中识别出了100多个漏洞,包括最新版本的Android 6.0,Marshmallow。其中一些漏洞具有严重的安全影响,导致特权代码执行或永久拒绝服务(DoS)。我们分析了这些漏洞的根本原因,发现其中大多数漏洞的存在是因为系统服务开发人员只考虑通过公共API进行利用。因此,我们强调了只在客户端公共API上进行测试的不足,并认为有必要在Binder接口(实际的安全边界)上进行测试和保护。具体来说,我们讨论了潜在的对策,如预防性测试和运行时诊断的有效性和实用性。
2016-04-23 cs.CR
AndroScanner: Automated Backend Vulnerability Detection for Android Applications
Georgia Institute of Technology(佐治亚理工学院)
本文提出AndroScanner,通过静态与动态分析结合的方法,检测Android应用后端漏洞,发现5个漏洞,包括一个未报告的零日漏洞。
2026-04-15 cs.CR cs.NI cs.SE
Finding Vulnerabilities in Mobile Application APIs: A Modular Programmatic Approach
本文提出并实现了一种模块化端点漏洞检测工具,通过自动化修改API请求并启发式分析响应来挖掘移动应用中的安全漏洞,发现超50%的应用存在访问控制失效问题,为开发者提供了开源测试方案。
2023-10-22 cs.CR
Android Security Framework: Enabling Generic and Extensible Access Control on Android
我们介绍了Android安全框架(ASF),这是一个通用的,可扩展的Android安全框架,可以以基于代码的安全模块的形式开发和集成各种安全模型。ASF的设计反映了从现有安全框架(如Linux安全模块或BSD MAC框架)的文献中吸取的经验教训,并将其与Android软件堆栈设计的特定要求和挑战交织在一起。ASF提供了一个新颖的安全API,支持Android安全扩展的作者开发他们的模块。这克服了当前不令人满意的情况,即将安全解决方案作为单独的补丁提供给Android软件堆栈或将其嵌入到Android的主线代码库中。因此,ASF提供了不同的实际好处,例如比以前在Android上更高程度的接受,适应和维护安全解决方案。我们提出了一个原型的ASF实现,并通过模块化不同的安全模型,从相关的工作,如上下文感知的访问控制,内联引用监控和类型强制,证明其有效性和效率。
2014-04-04 cs.CR
A Large Scale Analysis of Android-Web Hybridization
许多Android应用程序通过WebView组件嵌入网页,并在Android中执行JavaScript代码。混合应用程序利用专用API加载资源并在WebView中呈现。此外,Android对象可以与JavaScript世界共享。然而,桥接Android和JavaScript世界的接口也可能招致严重的安全威胁:潜在不受信任的网页及其JavaScript可能会干扰Android环境及其对本地功能的访问。目前还没有一般性的分析来评估这种连接两个世界的混合应用程序的影响。为了理解混合应用程序的语义和效果,我们对混合API的使用进行了大规模的研究。我们分析并分类了7,500个随机选择的混合API的参数和196个来自Google Play商店的最流行的应用程序以及1000个恶意软件样本。我们的研究结果促进了对混合应用程序的普遍理解,以及对潜在程序分析和当前安全状况的影响:我们发现了数千个从Android到JavaScript的敏感数据流,其中绝大多数可能流向潜在的不可信代码。我们的分析确定了许多网页嵌入漏洞,我们示范性地利用了这些漏洞。此外,我们发现了大量的应用程序,其中潜在的不受信任的JavaScript代码可能会干扰(受信任的)Android对象,无论是在良性还是恶性应用程序中。
2020-08-05 cs.CR cs.PL cs.SE
DaDiDroid: An Obfuscation Resilient Tool for Detecting Android Malware via Weighted Directed Call Graph Modelling
自2012年以来,新的移动恶意软件实例的数量每年增长超过50%,移动应用程序中嵌入的恶意软件可以说是移动平台面临的最严重的安全问题之一。虽然混淆技术成功地用于保护应用程序开发人员的知识产权,但不幸的是,它们也经常被网络犯罪分子用来隐藏移动应用程序中的恶意内容并欺骗恶意软件检测工具。因此,大多数移动恶意软件检测方法无法区分良性和混淆的恶意应用程序。我们通过构建API调用的加权有向图来检查移动应用程序代码的图形特征,并验证恶意应用程序通常具有可用于将其与良性应用程序区分开的结构相似性,即使在严重“污染”的训练集下,其中大多数应用程序都被混淆。我们提出DaDiDroid的Android恶意软件应用程序检测工具,利用API调用的加权有向图的功能来检测(混淆)Android应用程序中的恶意软件代码的存在。我们发现DaDiDroid明显优于MaMaDroid [23],MaMaDroid是最近提出的恶意软件检测工具,已被证明在干净的非混淆环境中检测恶意软件非常有效。我们评估DaDiDroid的准确性和鲁棒性对几个规避技术使用各种数据集,共43,262良性和20,431恶意软件应用程序。我们发现,DaDiDroid正确标记了高达96%的Android恶意软件样本,同时通过独家使用混淆应用程序的训练集实现了91%的准确率。
2019-08-21 cs.CR
MaMaDroid: Detecting Android Malware by Building Markov Chains of Behavioral Models (Extended Version)
University College London(伦敦大学学院);University of the West of England(西英格兰大学);Boston University(波士顿大学)
随着Android变得越来越受欢迎,针对它的恶意软件也越来越多,因此推动研究社区提出不同的检测技术。然而,Android生态系统和恶意软件本身的不断发展,使得很难设计出强大的工具,可以长时间运行,而无需修改或昂贵的重新培训。为了解决这个问题,我们从行为的角度来检测恶意软件,建模为抽象的API调用序列。我们介绍MaMaDroid,一个基于静态分析的系统,它将应用程序执行的API调用抽象为它们的类、包或家族,并从应用程序的调用图中获得的序列构建模型作为马尔可夫链。这确保了模型对API更改的弹性更强,并且功能集的大小可管理。我们使用在六年内收集的8.5K良性和35.5K恶意应用程序的数据集来评估MaMaDroid,结果表明它可以有效地检测恶意软件(高达0.99 F-measure),并在很长一段时间内保持其检测能力(训练后两年高达0.87 F-measure)。我们还表明,MaMaDroid显着优于DroidAPIMiner,一个国家的最先进的检测系统,依赖于(原始)API调用的频率。为了评估MaMaDroid的有效性是否主要源于API抽象或序列建模,我们还评估了它的一个变体,该变体使用抽象API调用的频率(而不是序列)。我们发现它并不准确,当在恶意软件样本上训练时,它无法捕捉恶意,这些恶意软件样本包括良性应用程序同样或更频繁使用的API调用。
2019-03-02 cs.AI cs.CR
On Impact of Semantically Similar Apps in Android Malware Datasets
恶意软件作者重复使用在其他应用程序中发现的相同程序段来执行类似的恶意活动,例如信息窃取,发送SMS等。因此,在一个家族/数据集中可能存在多个语义相似的恶意软件样本。许多研究人员不知道这些语义相似的应用程序,并在其ML模型中使用它们的功能进行评估。因此,性能指标可能会受到这些类似应用程序的严重影响。在本文中,我们研究了语义相似的应用程序在基于机器学习的Android恶意软件检测器的性能指标的影响。为此,我们提出了一种新的基于操作码子序列的恶意软件聚类算法来识别语义相似的恶意软件和好软件应用程序。为了研究语义相似的应用程序在性能指标中的影响,我们测试了不同ML模型的性能,这些模型基于具有/不具有语义相似应用程序的恶意软件和好软件应用程序的API调用和权限特征。在我们对Drebin数据集的实验中,我们发现,在从数据集中删除完全重复的应用程序后(?= 0)基于API调用的ML模型的恶意软件检测率(TPR)从0.95下降到0.91,基于权限的模型从0.94下降到0.90。为了克服这个问题,我们建议研究界在评估恶意软件检测机制之前,使用我们的聚类算法来去除语义相似的应用程序。
2021-12-05 cs.CR
Proximity Tracing in an Ecosystem of Surveillance Capitalism
近距离追踪应用程序已被提议作为应对COVID-19危机的助手。其中一些应用程序利用移动设备蓝牙信标的衰减来建立一对设备所有者之间的近距离接触记录。已知底层协议遭受误报和重新识别攻击。我们提出的证据表明,攻击者的困难,在安装这样的攻击被高估。事实上,利用具有蓝牙和位置访问的中等成功的应用或SDK的攻击者可以在没有硬件成本的情况下窃听和干扰这些接近跟踪系统,并对没有安装该应用或SDK的用户执行这些攻击。我们描述了能够很好地执行这种攻击的行为者的具体例子。我们进一步提出了一种新的攻击,我们称之为生物监视攻击,它允许攻击者监视安装其应用程序或SDK但不使用任何联系人跟踪系统的智能手机用户的暴露风险,并且可能错误地认为他们已经选择退出系统。通过使用仪表化测试平台进行流量审计,我们精确地描述了我们在少数应用程序中发现的一个SDK的行为-但安装在超过一亿台移动设备上。其行为在功能上与重新识别或生物监视攻击没有区别,并且能够以最小的努力执行假阳性攻击。我们还讨论了攻击者如何轻松地获得有利于此类攻击的位置,通过利用Android框架中向应用程序授予权限的松散逻辑:任何具有地理位置权限的应用程序都可以通过升级获得必要的蓝牙权限,而无需任何额外的用户提示。最后,我们讨论进行这种攻击的动机。
2020-09-13 cs.CR
ASVAAN: Semi-automatic side-channel analysis of Android NDK
Android是智能手机最受欢迎的操作系统,也以其灵活性和安全性而闻名。然而,尽管总体上被认为是非常安全的,但偶尔仍会发现一些漏洞,允许绕过安全控制和边界获取用户敏感信息:其中,侧通道漏洞是目前的一个重要问题。虽然有几种类型的侧通道漏洞,但专注于API的漏洞仍然是一个值得探索的领域,到目前为止,这些漏洞通常是手动分析的。仅在最近几年,已经发布了一些自动解决方案,这些解决方案专注于执行自动扫描Android中的侧通道缺陷,这些缺陷是由于操作系统的代码库增加而创建的;然而,它们存在一些限制。本文介绍了一种发现Android NDK侧通道泄漏的新方法,据作者所知,从未通过使用自动或半自动解决方案进行过调查。该工作中描述的方法允许在几个Android NDK函数中识别出超过8个新的侧通道泄漏,从而可以非常准确地推断受害者设备上的应用程序和网站启动。这些发现代表了Android NDK函数中首次发现的侧通道泄漏,并负责任地向Google的Android安全团队披露。
2022-04-12 cs.CR
A Family of Droids -- Android Malware Detection via Behavioral Modeling: Static vs Dynamic Analysis
随着移动生态系统的日益普及,网络犯罪分子越来越多地将其作为目标,设计和分发恶意应用程序,窃取信息或对设备所有者造成伤害。针对这些问题,提出了基于静态或动态分析的Android恶意软件检测技术。虽然这些分析技术的优点和缺点是已知的,但它们通常在其局限性的背景下进行比较,例如,静态分析无法捕获运行时行为,在动态分析过程中通常无法实现完整的代码覆盖等。然而,在本文中,我们分析了静态和动态分析方法在Android恶意软件检测中的性能,并尝试使用相同的建模方法比较它们的检测性能。为此,我们构建了MaMaDroid,这是一种最先进的检测系统,它依赖于静态分析来根据抽象API调用序列创建行为模型。然后,为了在动态分析设置中应用相同的技术,我们修改了CHIMP,这是一个最近提出的用于应用程序测试的众包人工输入的平台,以便从在CHIMP虚拟设备上执行应用程序时产生的跟踪中提取API调用序列。我们称这个系统为AuntieDroid,并通过使用自动(Monkey)和用户生成的输入来实例化它。我们发现,结合静态和动态分析产生最好的性能,F-措施达到0.92。我们还表明,静态分析至少与动态分析一样有效,这取决于应用程序在执行过程中是如何被刺激的,最后,调查了不同方法之间不一致的错误分类的原因。
2018-07-13 cs.CR
Simple Spyware: Androids Invisible Foreground Services and How to (Ab)use Them
随着Android Oreo和Pie的发布,Android为应用程序引入了一些后台执行限制。谷歌限制后台服务的执行,以节省能源,并防止应用程序在后台无休止地运行。此外,对设备传感器的访问发生了变化,并引入了一个名为前台服务的新概念。应用程序不再允许在空闲状态下运行后台服务,从而防止应用程序使用设备的资源,如相机。然而,这些限制不会影响所谓的前台服务,因为它们向用户显示永久可见的通知,因此用户可以随时停止。我们的研究发现,API中存在缺陷,允许启动不可见的前台服务,使引入的限制无效。我们将展示发现的漏洞允许攻击者使用前台服务作为监视用户的工具。
2020-11-28 cs.CR
A Case Study of Intra-library Privacy Issues on Android GPS Navigation Apps
Android不受限制的应用程序市场具有开源性质,使其成为全球数百万智能设备上第三方应用程序的流行平台。具有广泛API(包括访问手机硬件、设置和用户数据)的应用程序的巨大增长引发了对用户隐私的担忧,因为从应用程序收集的信息可能用于分析目的。在这方面,本文侧重于地理定位数据和分析五个GPS应用程序,以确定隐私风险,如果没有适当的保障措施。我们的研究结果表明,GPS导航应用程序可以访问几种类型的设备数据,同时它们可能允许个人数据泄露给第三方,如图书馆提供商或跟踪服务,而不向用户提供足够或准确的信息。此外,由于他们使用的是第三方图书馆,他们遭受了图书馆内勾结的问题,这可能会被广告和分析公司通过应用程序利用,并在未经用户明确同意的情况下收集大量个人信息。
2021-09-08 cs.CR
AiDroid: When Heterogeneous Information Network Marries Deep Neural Network for Real-time Android Malware Detection
West Virginia University(西弗吉尼亚大学);Tencent(腾讯)
Android恶意软件的爆炸式增长和日益复杂化要求新的防御技术能够保护移动用户免受新的威胁。本文首先从Android应用中提取运行时应用程序编程接口(API)调用序列,然后分析生态系统内的高层语义关系,全面表征应用程序。要对不同类型的实体建模(即,应用、API、IMEI、签名、关联)以及它们之间丰富的语义关系,构造了一个结构化异构信息网络(HIN),并提出了基于元路径的方法来刻画应用之间的关联性。为了有效地对节点进行分类(例如,apps)在构造的HIN中,我们提出了HinLearning方法,首先获得样本内节点嵌入,然后学习样本外节点的表示,而无需在第一次尝试时重新运行/调整HIN嵌入。之后,我们设计了一个深度神经网络(DNN)分类器,将学习到的HIN表示作为Android恶意软件检测的输入。通过腾讯安全实验室的大规模真实样本集进行了全面的实验研究,以比较各种基线。实验结果表明,我们开发的系统AiDroid集成了我们提出的方法,在实时的【形】Android恶意软件检测方面优于其他系统。AiDroid已经被纳入腾讯移动安全产品,服务于全球数百万用户。
2019-05-20 cs.CR cs.LG
Dissecting Android Cryptocurrency Miners
加密劫持应用程序对移动设备构成严重威胁。由于大量的计算,它们会快速耗尽电池,甚至会损坏设备。在这项工作中,我们朝着打击这一威胁迈出了一步。我们收集并手动验证了一个大型Android挖矿应用数据集。在本文中,我们分析了收集的矿工,并确定了他们的工作方式,哪些是最流行的库和API用于促进他们的开发,以及这类应用程序的典型静态功能。此外,我们使用VirusTotal分析了我们的数据集。我们的大多数样本被至少一个VirusTotal扫描程序认为是恶意的,但有16个应用程序没有被任何引擎检测到;至少有5个APK之前没有被服务检测到。挖矿代码可能会在运行时被混淆或获取,并且有许多令人困惑的与挖矿相关的应用程序实际上并不挖矿。因此,静态特征本身不足以进行矿工检测。我们收集了一组针对矿工和无关良性应用的动态指标,并构建了一个基于机器学习的动态检测工具。我们的BrenntDroid工具能够在我们的数据集上以95%的准确率检测矿工。本预印本是一篇技术报告,随附于ACM CODASPY 2020上发表的论文《剖析Android加密货币矿工》。
2020-02-24 cs.CR
Dissecting contact tracing apps in the Android platform
接触者追踪在历史上曾被用于延缓传染病的传播,但如果大规模手工进行,则已知这是一个资源密集型且相当缺乏的过程。如今,数字接触追踪已迅速成为全球抗击冠状病毒大流行的不可或缺的资产。手头的工作提供了对欧洲国家迄今为止部署的所有官方Android联系人追踪应用程序的细致研究。每个应用程序都通过动态检测进行静态和动态仔细检查。根据检查级别,静态分析结果分为两个轴。第一个包括权限、API调用和可能的外部URL连接,而第二个集中在潜在的安全弱点和漏洞,包括使用跟踪器、深入的清单分析、共享软件分析和污点分析。另一方面,动态分析收集与Java类和网络流量有关的数据。结果表明,虽然这些应用程序总体上设计良好,但它们并非没有弱点,漏洞和错误配置,最终可能会使用户的安全和隐私处于危险之中。
2021-05-21 cs.CR
Detection of App Collusion Potential Using Logic Programming
Android设计有许多内置的安全功能,例如应用沙箱和基于权限的访问控制。Android支持多种通信方式,以便应用进行协作。这会造成应用程序共谋的安全风险。例如,一个拥有访问敏感数据权限的沙盒应用程序可能会将该数据泄露给另一个可以访问互联网的沙盒应用程序。在本文中,我们提出了一种方法来检测应用程序之间的潜在勾结。首先,我们从应用程序中提取有关其访问受保护资源和通信的所有信息。然后,我们通过使用Prolog中编码的一阶逻辑中的规则来识别可能串通的应用程序集。在此之后,计算要求更高的方法(如污点分析)可以专注于显示共谋潜力的已识别集合。这种“过滤”方法是针对手工制作的串通应用程序的数据集进行验证的。我们还证明了我们的工具可以通过在野外收集的50,000多个应用程序上运行来扩展。我们的工具允许我们检测大量使用共谋作为同步方法的真实应用程序,以最大限度地提高通过相同SDK注入所有应用程序的有效负载的效果。
2017-06-07 cs.CR
Evaluating Large Language Models in detecting Secrets in Android Apps
本文提出基于 LLM 的 SecretLoc,利用上下文与结构线索检测 Android 应用硬编码机密,在基准和 5000 个 Google Play 应用中发现大量既有方法遗漏的新型机密。
2025-10-21 cs.CR cs.SE
KeyDroid: A Large-Scale Analysis of Secure Key Storage in Android Apps
本研究首次大规模分析了490,119个Android应用的硬件支持密钥存储使用情况,发现多数处理敏感数据的应用未采用可信硬件,且最强安全元件在非对称加密等操作中存在严重性能瓶颈。
2025-07-10 cs.CR
A Large-Scale Study on the Prevalence and Usage of TEE-based Features on Android
本研究大规模分析 170,550 个 Android 应用中 TEE 功能的使用情况,发现其主要通过第三方库间接使用,仅 6.7% 直接调用 API,并指出新 UI 功能受保护确认未被充分利用。
2023-11-17 cs.CR
A Case of Collusion: A Study of the Interface Between Ad Libraries and their Apps
Android上的广告库越来越令人担忧的是,它们能够从主机应用程序中泄露个人信息。虽然以前的工作已经研究了库自己测量私人信息的能力,但广告库还包括API,通过这些API,主机应用程序可以故意泄露有关用户的私人信息。这项研究考虑了114,000个应用程序的语料库。我们重构了语料库中使用的103个广告库的API,并研究了应用程序如何使用前20个广告库中的隐私泄露API。值得注意的是,我们发现应用程序的受欢迎程度与隐私泄露相关;广告收入的边际增长,在更大的用户基础上成倍增加,似乎激励这些应用程序供应商侵犯用户的隐私。
2013-07-23 cs.CR
Do Android App Developers Accurately Report Collection of Privacy-Related Data?
本文研究 Android 应用数据安全披露是否符合 GDPR,构建隐私数据类别数据集与静态分析原型,发现开发者普遍存在少报和多报问题。
2024-09-06 cs.CR
Evolution of Android's Permission-based Security Model and Challenges
本文综述了Android权限模型的演变,分析了权限管理中的挑战,并提出了未来研究方向。
2026-01-01 cs.CR cs.OS
FlowArk: Boosting Agentic Data-flow Analysis for Android Apps via Context-Aware Knowledge Reuse
Sun Yat-sen University(中山大学)
研究安卓应用数据流分析中批量任务重复分析成本高的问题,提出FlowArk系统,通过提炼、打包和注入知识条目降低成本,实验表明其在保持分析质量的同时,能降低API成本并增加任务完成量。
2026-07-14 cs.CR cs.SE
A Sink-driven Approach to Detecting Exposed Component Vulnerabilities in Android Apps
Android应用程序可以公开其组件,以便与其他应用程序协作。然而,这种便利性使应用程序容易受到暴露组件漏洞(ECV)的影响,其中组件内的危险API(通常称为sink)可以由其他(恶意)应用程序触发。在先前的工作中,检测这些ECV使用与检测中的ECV有关的一组汇。在本文中,我们认为,一个更全面,更有效的方法应该开始系统的选择和分类的特定功能汇(VSinks)。VSink的集合比以前的作品中使用的要大得多。基于这些VSinks,我们的sink驱动方法可以通过两个步骤检测应用程序中不同类型的ECV。首先,VSink和他们的类别是通过一个典型的前向可达性分析。其次,基于每个VSink的类别,使用相应的检测方法通过定制的后向马尔可夫分析来识别ECV。我们还设计了一个半自动引导的分析和验证功能,用于仅限系统的广播检查,以消除一些误报。我们在一个名为ECVDetector的工具中实现了我们的sink驱动方法,并使用顶级1K Android应用程序对其进行了评估。使用ECVDetector,我们成功地识别了我们定义的所有四个ECV类别中的49个易受攻击的应用程序。据我们所知,其中大部分是以前未公开的,如非常流行的Go SMS Pro和Clean Master。此外,ECVDetector的性能很高,处理每个组件平均只需9.257秒。
2014-05-24 cs.CR
App's Auto-Login Function Security Testing via Android OS-Level Virtualization
受小键盘的限制,大多数移动应用都支持自动登录功能,以获得更好的用户体验。因此,当应用再次在前台运行时,用户避免了重新输入ID和密码的不便。然而,这种自动登录功能可以被利用来发动所谓的“数据克隆攻击”:一旦本地存储的、依赖于自动登录的数据被攻击者克隆并放置到自己的智能手机中,攻击者就可以突破登录设备数量限制,悄悄登录受害者的帐户。一个自然的对策是检查特定于设备的属性的一致性。只要新设备显示与前一个不同的设备指纹,应用程序将禁用自动登录功能,从而防止数据克隆攻击。在本文中,我们开发了VPDroid,一个透明的Android操作系统级的虚拟化平台,专为安全测试。使用VPDroid,安全分析师可以在虚拟电话中自定义不同的设备工件,例如CPU型号,Android ID和电话号码,而无需用户级API挂钩。VPDroid的隔离机制确保虚拟手机中的用户模式应用程序无法检测到特定于设备的差异。为了评估Android应用程序对数据克隆攻击的敏感性,我们使用VPDroid模拟了234个下载量最大的应用程序的数据克隆攻击。我们在五个不同的虚拟手机环境中进行的实验表明,VPDroid的设备属性自定义可以欺骗所有执行设备一致性检查的测试应用程序,例如Twitter,WeChat和PayPal。19家供应商已确认我们的报告为零日漏洞。我们的研究结果描绘了一个警示故事:只有在客户端执行设备一致性检查仍然容易受到高…
2021-03-30 cs.CR
When Program Analysis Meets Bytecode Search: Targeted and Efficient Inter-procedural Analysis of Modern Android Apps in BackDroid
广泛使用的Android静态程序分析工具,例如,Amandroid和FlowDroid执行整个应用程序的过程间分析,这是全面的,但从根本上难以处理现代(大型)应用程序。应用程序的平均大小在五年内增加了三到四倍。在本文中,我们探索了一种新的范式,有针对性的过程间分析,可以跳过不相关的代码,只关注安全敏感的汇API的流。为此,我们提出了一种称为动态字节码搜索的技术,该技术在需要定位调用者时及时搜索反汇编的应用程序字节码文本。通过这种方式,它逐步引导有针对性的(和向后的)过程间分析,直到到达入口点,而不依赖于整个应用程序图。然而,由于Java多态性、回调、异步流、静态初始化器和Android应用程序中的组件间通信,这种基于搜索的过程间分析具有挑战性。我们克服了这些独特的障碍,在我们的上下文中,提出了一套字节码搜索机制,利用灵活的搜索和前向对象污点分析。在这种新的过程间分析之上,我们进一步调整了传统的向后切片和向前常数传播,以提供对sink API调用的完整的跟踪。我们已经实现了一个名为BackDroid的原型,并将其与Amandroid进行了比较,分析了3,178个现代流行应用程序的加密和SSL错误配置。评估显示,对于此类基于sink的问题,BackDroid的速度快了37倍(2.13 vs. 78.15分钟),并且没有超时故障(v.s. Amandroid中为35%),同时保持接近甚至…
2020-05-23 cs.CR cs.SE
JNI Global References Are Still Vulnerable: Attacks and Defenses
本文提出一种在最新 Android 系统中仍可实施的 JNI 全局引用耗尽型 DoS 攻击,并开发 JGREAnalyzer 工具系统检测相关漏洞,同时提出基于全局引用计数的防御方案。
2024-05-01 cs.CR
Negative Results of Fusing Code and Documentation for Learning to Accurately Identify Sensitive Source and Sink Methods An Application to the Android Framework for Data Leak Detection
移动电话上的应用程序操纵各种数据,包括敏感数据,导致与隐私相关的担忧。最近的法规,如欧洲GDPR,为处理个人和敏感数据提供了规则,例如未经用户同意,不得泄露此类数据。研究人员提出了复杂的方法来跟踪移动应用程序中的敏感数据,所有这些方法都依赖于敏感源和接收器API方法的特定列表。数据流分析结果在很大程度上取决于这些列表的质量。以前的方法要么使用不完整的手写列表,很快就会过时,要么依赖于机器学习。然而,正如我们所展示的,后者会导致许多误报。本文介绍了CoDoC,这是一种旨在恢复机器学习方法以精确识别与隐私相关的源和汇API方法的工具。与以前的方法相比,CoDoC使用了深度学习技术,并将源代码与API方法的文档相结合。首先,我们提出了新的定义,澄清了敏感的源和汇方法的概念。其次,基于这些定义,我们构建了一个新的Android方法的基础事实,表示敏感的源,汇,和两者都没有(即,无源或汇)方法,这些方法将用于训练我们的分类器。我们评估了CoDoC,并表明在我们的验证数据集上,它在10倍交叉验证中实现了91%的精度,召回率和F1得分,在相同数据集上使用时优于最先进的SuSi。然而,类似于现有的工具,我们表明,在野外,即,对于看不见的数据,CoDoC性能很差,并产生许多假阳性结果。我们的研究结果,以及之前方法经过时间考验的结果表明,尽管实验室结果良好,但用于隐私等抽象概念的机器学习模型在实践中失…
2023-01-11 cs.CR cs.SE
Uncovering and Exploiting Hidden APIs in Mobile Super Apps
本研究针对移动超级应用中存在的无文档、不安全隐藏API风险,开发结合静态与动态分析的APIScope工具,在五款热门超级应用中发现大量可被利用的隐藏API并验证其安全危害,相关漏洞已上报厂商并获部分修复。
2023-06-13 cs.CR
Silent Consent, Persistent Risk: Android Permission Groups and Custom Permissions
Boston University(波士顿大学)
通过分析1930万APK和Android 16设备验证,揭示权限组自动授予新权限和正常级自定义权限静默安装的机制导致17%的多版本应用在已授权组内静默获得权限,且恶意软件比例更高(OR=1.35),并发现307个跨开发者自定义权限对暴露敏感数据。
2026-05-26 cs.CR
A Systematic Study of Security Enforcement at Android Inter-Component Boundaries
该研究针对Android 17的30余个软件包,通过120项评估发现组件间边界存在高比例安全实施缺口,构建了分类体系并揭示了平台兼容性变更、自定义URI方案等安全问题。
2026-10-12 cs.CR
R+R: Revisiting Static Feature-Based Android Malware Detection using Machine Learning
Rochester Institute of Technology(罗切斯特技术学院)
本文提出严谨的模型选择与评估方法,发现经调优的简单模型(如XGBoost)在移除重复数据后优于复杂神经网络,并开源代码库促进可复现安全研究。
2025-11-01 cs.CR cs.LG
TriggerZoo: A Dataset of Android Applications Automatically Infected with Logic Bombs
许多Android应用分析器依赖于动态分析等技术来监控其运行时行为并检测潜在的安全威胁。然而,恶意开发人员使用微妙但有效的技术来绕过动态分析器。逻辑炸弹是流行技术的示例,其中恶意代码仅在特定情况下触发,挑战全面的动态分析。研究界提出了各种方法和工具来检测逻辑炸弹。不幸的是,由于缺乏基本事实,对最先进的技术进行严格的评估和公平的比较是不可能的。在本文中,我们提出了TriggerZoo,一个新的数据集,包含406个Android应用程序,其中包含逻辑炸弹和良性的基于恶意软件的行为,我们只使用经过认证的API向研究社区发布。这些应用程序是来自Google Play的真实应用程序,已被我们的工具AndroBomb自动感染。注入的实现逻辑炸弹的代码片段覆盖了我们从一组真实的逻辑炸弹手动表征的大量实际逻辑炸弹类型。研究人员可以利用这个数据集作为基础事实来评估他们的方法,并与其他工具进行比较。
2022-03-08 cs.CR cs.SE
Dealing with Variability in API Misuse Specification
API是开发人员访问外部定义的服务和工具的主要机制。然而,以前的研究表明,违反API合同的API滥用是普遍的。这种滥用可能会产生有害的后果,特别是在加密库的上下文中。已经提出了各种API误用检测器来解决这个问题,包括CogniCrypt,这是最通用的检测器之一,它使用CrySL语言来指定加密API使用合同。尽管如此,现有的检测API滥用的方法并不是为了系统的重用而设计的,忽略了一个事实,即不同版本的库、不同版本的平台以及不同的建议或指南可能会在API的正确使用中引入差异。然而,很少有人知道这种可变性如何影响正确的API使用规范。本文通过分析各种可变性来源对广泛使用的Java加密库(包括JCA,Bouncy Castle和Google Tink)的影响来研究这个问题。我们的调查结果表明,新版本的API和安全标准等可变性来源会显著影响规范。然后,我们使用从我们的调查中获得的见解来激励扩展名为MetaCrySL的CrySL语言,它建立在Meta编程概念的基础上。我们通过为一系列Android版本指定使用规则来评估MetaCrySL,并说明MetaCrySL可以对我们确定的所有形式的可变性进行建模,并大大减少了正确使用加密API的规范系列的大小
2021-05-17 cs.CR cs.SE
Automatically Detecting Checked-In Secrets in Android Apps: How Far Are We?
本文实证评估了三种已检入密钥检测工具在 5,135 个安卓应用上的表现,发现现有工具存在大量漏报但具有互补性,并提出基于方法内字符串组分析以克服混淆挑战的新策略。
2025-11-10 cs.CR cs.SE
BinCtx: Multi-Modal Representation Learning for Robust Android App Behavior Detection
Arizona State University(亚利桑那州立大学)
针对移动应用不良行为难以检测的问题,提出BinCtx方法,融合字节码图像、上下文和第三方库使用三种视图,构建多模态表示训练分类器,在真实数据上宏F1达94.73%,且对混淆和对抗样本稳健。
2025-10-16 cs.AI cs.CR
Exploiting ML algorithms for Efficient Detection and Prevention of JavaScript-XSS Attacks in Android Based Hybrid Applications
多年来,移动应用程序的安全性开发和分析已成为一个活跃的研究领域,因为许多应用程序容易受到不同的攻击。特别是在过去三年中出现了混合应用程序的概念,其中应用程序以本地语言和Web语言开发,因为Web语言的使用在混合移动应用程序中增加了某些安全风险,因为它创建了可能的渠道,恶意代码可以被注入应用程序中。WebView是混合移动应用程序中的重要组件,用于实现沙箱机制,以保护智能手机设备的本地资源免受未经授权的JavaScript访问。然而,WebView应用程序编程接口(API)也存在安全问题。例如,攻击者可以通过访问应用程序的公共方法绕过沙箱安全性来经由JavaScript代码攻击混合应用程序。跨站脚本(XSS)是一种最流行的恶意代码注入技术,用于通过JavaScript访问应用程序的公共方法。这项研究提出了一个框架,在混合应用程序中使用最先进的机器学习(ML)算法检测和预防XSS攻击。攻击的检测已经通过利用注册的Java对象功能来执行。数据集和示例混合应用程序是使用android studio开发的。然后使用了目前广泛使用的工具RapidMiner进行实证分析。实验结果表明,基于集成的随机森林算法的性能优于其他算法,准确率和F-测度均高达99%。
2020-07-30 cs.CR cs.SE
Mind your key: An Empirical Study of LLM API Credential Leakage in iOS Apps
Wake Forest University(维克森林大学);Griffith University(格里菲斯大学);Clemson University(克莱姆森大学)
本研究首次系统调查iOS应用中LLM API密钥泄露问题,通过动态分析框架LLMKeyLens检测444个应用,发现282个存在可被利用的凭证泄露,并识别出三种泄露模式,三个月后仅28%完成修复。
2026-06-24 cs.CR cs.SE
To Fix or Not to Fix: A Critical Study of Crypto-misuses in the Wild
最近的研究表明,使用加密API的Android应用程序中有87%到96%存在可能导致安全漏洞的滥用。由于以前的研究没有对结果的有效性和严重性进行定性检查,我们的目标是更深入地了解结果。我们分析了一组936个开源Java应用程序的加密滥用。我们的研究表明,88.10%的分析应用程序未能安全地使用加密API。通过对随机样本的手动分析,我们对有效的误报有了新的认识。例如,频繁误用的JCA类MessageDigest的每四次误用都是一次有效的误报,因为它发生在非安全上下文中。由于我们希望更深入地了解这些滥用的安全影响,我们为加密API滥用创建了一个广泛的漏洞模型。我们的模型包括以前未讨论的攻击,如DoS攻击的加密API的上下文中。该模型显示,近一半的滥用是高度严重的,例如,硬编码凭证和潜在的中间人攻击
2023-03-24 cs.CR cs.SE
A Multi-view Context-aware Approach to Android Malware Detection and Malicious Code Localization
Nanyang Technological University(南洋理工大学)
现有的Android恶意软件检测方法结合机器学习分类器使用各种特征(诸如安全敏感API、系统调用、控制流结构和信息流)来实现准确的检测。这些功能集中的每一个都提供了应用行为的独特语义视角(或视图),具有固有的优势和局限性。也就是说,有些视图更适合检测某些攻击,但可能不适合检测其他几种攻击。大多数现有的恶意软件检测方法仅使用上述特征集中的一个(或选定的几个),这阻止了它们检测绝大多数攻击。针对这一限制,我们提出了MKLDroid,一个统一的框架,系统地集成了应用程序的多个视图,用于执行全面的恶意软件检测和恶意代码本地化。理由是,虽然恶意软件应用程序可以在某些视图中伪装自己,但在保持恶意意图的同时在每个视图中伪装将更加困难。MKLDroid使用图形内核从应用程序的依赖关系图中捕获结构和上下文信息,并识别每个视图中的恶意代码模式。随后,它采用多核学习(MKL)来找到产生最佳检测精度的视图的加权组合。除了多视图学习,MKLDroid的独特和突出的特点是它能够在依赖图中定位细粒度的恶意代码部分(例如,方法/类)。通过我们在几个数据集上的大规模实验(包括野生应用程序),我们证明了MKLDroid在准确性方面始终优于三种最先进的技术,同时保持相当的效率。在我们对重新打包的恶意软件数据集进行的恶意代码本地化实验中,MKLDroid能够以94%的平均召回率识别所有恶意类别。
2017-04-08 cs.AI cs.CR cs.SE