基础版-Android扫描仅提供静态扫描能力,是一款SaaS服务,客户无需下载或安装任何软件,也无需部署,即可享受7 × 24小时,全天候的风险检测和漏洞修复建议。客户提交测试无时间地点制约,5-30分钟即可查看扫描报告,及时获取应用安全测评结果,实现对应用安全问题的快速发现与修复。便捷易用,简单直观,无需专业的安全技术人员参与,大幅降低客户人力开销及技术学习成本。
WeTest基础版-Android扫描为用户提供针对于Android App的静态检测内容,共计9大类,52项安全检测内容,从组件权限合规性、本地数据安全及源码安全等方面入手,快速定位问题、生成检测报告并提供修复建议。
以下为基础版-Android扫描服务检测项内容展示:
规则类型 | 规则名称 | 风险等级 | 描述 |
---|---|---|---|
组件公开安全检测 | Activity组件暴露风险 | 提示 | 当Activity组件的exported属性被设置为true,或者虽未明确设置exported属性但其IntentFilter不为空,导致该Activity可以通过外部Intent被直接调用。攻击者可以利用Activity组件暴露的风险,通过构造恶意Intent来启动暴露的Activity,从而执行未经授权的操作或获取敏感信息。 |
Service组件暴露风险 | 提示 | 当Service组件的属性exported被设置为true,或者未设置exported值但其IntentFilter不为空时,该Service被认为是导出的,可以通过设置相应的Intent来唤起该Service。攻击者可能会利用这些漏洞来实施攻击。 | |
BroadcastReceiver组件暴露风险 | 提示 | 当BroadcastReceiver组件的exported属性被设置为true,或者未设置Exported值但其IntentFilter不为空时,该BroadcastReceiver被认为是导出的,能够接收来自其他应用的广播。 | |
ContentProvider组件暴露风险 | 提示 | 当ContentProvider组件的exported属性被设置为true,或者Android API版本小于等于16时,该ContentProvider被认为是导出的,可以被其他应用程序访问。 | |
Intent组件数据组件泄露风险 | 提示 | 在使用Android的Intent机制时,由于不当的处理或配置,导致敏感数据通过Intent泄露给未经授权的应用程序或组件。 | |
Content Provider组件本地SQL注入漏洞 | 中危 | 当Content Provider组件在处理查询请求时没有正确验证或转义用户输入的数据,导致攻击者可以通过构造恶意的查询语句来执行未经授权的数据库操作。这种漏洞允许攻击者绕过正常的权限检查,直接访问、修改或删除数据库中的数据。 | |
Content Provider组件数据泄露漏洞 | 中危 | 当Content Provider组件没有正确实施数据访问控制和验证机制时,攻击者可以利用该漏洞来获取未授权访问的敏感数据。这种漏洞通常是由于不当的权限设置、不充分的输入验证或未加密的数据传输等原因导致的。 | AndroidManifest.xml配置安全检测 | 应用克隆漏洞 | 中危 | 攻击者利用应用程序的API或其他功能,通过欺骗用户或其他手段,在未经授权的情况下复制、分发或传播受保护的应用程序。这种漏洞允许攻击者在未经授权的情况下访问和利用受保护的应用程序的资源和服务,从而威胁到用户的隐私和安全。 |
Manifest不安全属性配置风险 | 低危 | 在Android应用程序的AndroidManifest.xml文件中,存在一些可以被攻击者利用的属性配置,从而导致应用程序的安全性受到威胁。这些不安全的属性配置可能会使攻击者能够执行恶意代码、获取敏感数据或绕过安全机制。 | |
自定义权限滥用风险 | 提示 | 开发者创建了自定义权限,但由于配置不当或权限管理不严格,导致这些自定义权限被滥用或错误地赋予给其他应用程序,从而可能泄露敏感数据或允许未经授权的操作。 | Intent劫持风险安全检测 | Intent协议解析越权漏洞 | 中危 | 攻击者可以通过构造恶意的Intent数据,将其发送给目标应用程序。如果应用程序没有对Intent数据进行充分的验证和过滤,攻击者就可以利用这个漏洞来执行未授权的操作,如启动隐藏的Activity、调用敏感的服务等,从而获取敏感数据或破坏应用程序的正常功能。 | 数据存储安全检测 | 私有文件泄漏风险 | 提示 | 敏感数据或信息被未经授权的第三方获取的风险。 |
AppKey信息泄露漏洞检测 | 中危 | 应用程序的应用密钥(AppKey)或API密钥被非法访问或公开,如果AppKey被攻击者获取,他们可以利用这些密钥执行未经授权的操作,如访问敏感数据、执行恶意操作或冒充合法的服务请求。 | |
私有目录写漏洞 | 中危 | 攻击者可以利用这个漏洞在未经授权的情况下写入文件或数据到受保护的目录中。 | 数据传输安全检测 | HTTPS敏感数据劫持漏洞 | 中危 | 攻击者可以利用这个漏洞在未经授权的情况下访问受保护的HTTPS站点并获取其中的敏感数据。 | 拒绝服务攻击安全检测 | 系统组件本地拒绝服务漏洞检测 | 低危 | 本地拒绝服务漏洞通常是由于系统组件在处理输入、内存管理、权限验证等方面存在错误或不当实现。攻击者可以通过发送特定的输入或执行特定的操作来触发这些漏洞,使系统组件无法正常工作。 |
强制类型转换本地拒绝服务漏洞 | 低危 | 攻击者可以利用这种漏洞使系统组件崩溃或拒绝服务,从而中断合法用户的正常使用。此外,这种漏洞还可能被用来执行其他恶意行为,如绕过安全机制或提升攻击者在系统中的权限。 | |
其他安全风险安全检测 | Web组件远程代码执行漏洞 | 高危 | 攻击者通过Web应用程序中的某个组件或接口,向服务器注入并执行恶意代码。这种漏洞通常是由于在开发过程中没有对用户输入进行充分的验证和过滤,或者在设计上给用户提供了远程命令/代码执行的接口,且没有做严格的安全控制。 |
目录遍历 | 中危 | 攻击者通过构造特定的URL请求来访问Web服务器上的任意文件,包括敏感的系统文件、用户数据以及其他应用程序文件。这种漏洞通常是由于Web应用程序在处理文件路径时没有进行足够的验证和过滤,从而允许攻击者绕过预期的文件访问限制。 | |
Fragment框架层注入检测 | 中危 | 由于不当处理Fragment导致的安全漏洞。Fragment是Android开发中用于实现模块化布局和可重用组件的重要组件之一。然而,如果开发者在处理Fragment时没有采取适当的安全措施,攻击者可能会利用这些漏洞执行恶意代码或窃取敏感数据。 | |
Scheme SQL注入检测 | 中危 | 攻击者可以通过在用户输入的数据中插入恶意的SQL代码,来篡改原有的SQL查询,从而实现对数据库的非法访问和操作。 | |
后门 SDK 检测 | 中危 | 是指在一个软件开发工具包(SDK)中存在的安全漏洞,该漏洞可能被攻击者利用来在未经授权的情况下访问或控制系统。后门通常是一种绕过认证或系统加密来获取系统访问权的方法。在SDK中,后门可能表现为一个隐藏的功能、接口或代码路径,允许攻击者执行未授权的操作。 | |
第三方SDK漏洞 | 中危 | 是指存在于由第三方开发者提供的SDK中的安全缺陷或弱点。这些漏洞可能导致未经授权的访问、数据泄露、恶意代码执行、系统崩溃或其他形式的损害。第三方SDK通常被集成到应用程序中,以提供特定的功能或服务,例如广告、社交分享、身份验证等。 | |
弱加密漏洞 | 低危 | 通常发生在系统或应用程序使用不安全或已过时的加密算法时。这些算法可能无法提供足够的加密强度,使得攻击者能够相对容易地破解加密数据,从而窃取敏感信息或进行其他恶意活动。 | |
RSA私钥硬编码漏洞 | 低危 | 是指在一个软件应用程序中,RSA私钥被直接硬编码在源代码、配置文件或其他可访问的资源中,而不是以安全的方式存储或管理。这种漏洞可能导致严重的安全风险,因为攻击者可以通过访问这些资源来轻易地获取私钥,并利用它解密加密的数据或进行其他恶意活动。 | |
DES/ECB弱加密漏洞 | 低危 | 是指使用DES(数据加密标准)算法配合ECB(电子密码本)模式进行加密时存在的安全漏洞。DES算法本身已经被认为是不够安全的,因为它使用56位的密钥长度,而ECB模式也存在一些问题,使得加密数据容易受到攻击。 | |
TCP开放端口风险 | 提示 | 由于TCP端口的不当配置或管理,导致攻击者可以利用这些漏洞进行非法访问、数据窃取、系统攻击等恶意行为。这些漏洞可能是由于系统或应用程序的缺陷、错误的配置、过时的软件版本或用户权限不当设置等原因造成的。 | |
UDP开放端口风险 | 提示 | 由于UDP端口的不当配置或管理,导致攻击者可以利用这些漏洞进行恶意行为。 | |
目标API低版本风险 | 提示 | 使用过时或较低版本的API所带来的安全隐患。这些漏洞通常是由于API的旧版本中存在已知的安全问题或缺陷。 | |
stack-protector编译选项检测 | 提示 | stack-protector是一种编译器选项,用于在程序中添加栈保护机制。当启用该选项时,编译器会在函数的栈帧中添加一个随机值作为栈保护值,并在函数返回前检查这个值是否被篡改。如果检测到栈保护值被篡改,程序会立即终止执行,以防止缓冲区溢出攻击等安全问题。 | |
PIE编译选项检测 | 提示 | PIE(Position Independent Executable)编译选项是一种编译时设置,用于生成位置无关的代码。这种设置使得编译出的可执行文件或共享库可以在内存中的任何位置执行,而不需要进行额外的重定位。这种特性通常用于提高程序的安全性,因为它使得攻击者更难利用某些类型的内存错误来执行恶意代码。 | |
SD卡动态加载代码风险 | 提示 | 源于对存储在可公开访问目录中的代码文件的保护不足,以及加载过程中缺乏必要的安全校验措施。开发者应当避免将关键代码存储在可被任意读写的目录中,并在动态加载代码时实施严格的安全校验机制,以降低潜在的安全风险。 | |
密码硬编码漏洞 | 低危 | 是指在一个软件应用程序中,敏感信息(如密码、密钥或访问令牌)被直接硬编码在源代码、配置文件或其他可访问的资源中,而不是以安全的方式存储或管理。这种漏洞可能导致严重的安全风险,因为攻击者可以通过访问这些资源来轻易地获取敏感信息,并利用它进行未授权的访问或恶意操作。 | |
随机数加密破解漏洞 | 低危 | 是一种非法获取随机数生成器生成的随机数序列的漏洞。它允许攻击者在未经授权的情况下访问或控制系统的随机数生成器,从而获得对系统的不正当访问权限。这种漏洞通常是由于随机数生成器的实现缺陷、安全措施不足或不正确配置而引起的。 | |
隐私合规 | 敏感权限声明检测 | 提示 | 检测应用声明了哪些敏感权限 |
使用接听拨打电话行为检测 | 提示 | 检测哪些代码存在使用接听拨打电话行为 | |
使用接收发送短信行为检测 | 提示 | 检测哪些代码存在使用接收发送短信行为 | |
使用摄像头行为检测 | 提示 | 检测哪些代码存在使用摄像头行为 | |
使用麦克风行为检测 | 提示 | 检测哪些代码存在使用麦克风行为 | |
获取地理位置信息检测 | 提示 | 检测哪些代码存在获取地理位置信息行为 | |
获取通讯录信息检测 | 提示 | 检测哪些代码存在获取通讯录信息行为 | |
获取通话记录信息检测 | 提示 | 检测哪些代码存在获取通话记录信息行为 | |
获取设备信息检测 | 提示 | 检测哪些代码存在获取设备信息行为 | |
获取UDID设备标识检测 | 提示 | 检测哪些代码存在获取UDID设备标识行为 | |
获取网络信息检测 | 提示 | 检测哪些代码存在获取网络信息行为 | |
http明文传输检测 | 提示 | 检测哪些代码存在通过http明文传输信息的行为 | |
权限缺失可用性检测 | 提示 | 检测哪些代码存在权限缺失可用性的问题 | |
第三方SDK列表 | 提示 | 检测应用使用了哪些第三方SDK,并提示旧版SDK可能存在未修复安全风险,请及时更新SDK到最新版 | |
获取设备已安装应用信息检测 | 提示 | 检测获取设备已安装应用信息情况 | 安全提示 | 第三方库安全检测 | 提示 | 检测程序中存在哪些第三方库 |
自定义协议列表 | 提示 | 检测程序中存在哪些自定义协议列表 | |
应用加固检测 | 提示 | 检测程序中存在哪些加固 |
交付形式为《应用安全扫描报告-基础版》,报告包含扫描结果、漏洞及风险数量、检测类型、漏洞详情、隐私合规详情、安全提示、修复建议等信息。
报告可以登录官网控制台在线查看,也可以下载PDF版本到本地。
根据客户app情况来确定的。一般来说,5-30分钟即可查看报告。