安全防护能力
3.2.1 . C层代码动态调试风险
检测目的 检测应用是否存在C层代码动态调试风险。
风险等级 高
威胁描述 Android C 层代码动态调试漏洞是指在程序运行过程中,恶意程序或者人工可以通过动态调试技术,对程序进行内存调试跟踪,可以窃取目标进程的数据信息,从而获取用户的隐私数据
信息。
检测结果 存在风险
解决方案 代码层修复方案:通过代码实时监测应用关键函数的进程、端口、信号是否异常,如有异常行为,则做后续防动态调试处理建议使用专业安全加固方案的防动态调试功能,防止应用被动
态调试。
3.2.2 . 动态注入攻击风险
检测目的 检测应用是否存在动态注入攻击风险。
风险等级 高
威胁描述 Android动态代码注入是不修改源程序只修改目标进程的寄存器、内存值等就能控制程序实现既定目标的一种方法。通过动态注入,攻击者可以劫持目标进程函数、窃取目标进程数据、篡改目标进程数据等,从而监控程序运行、获取敏感信息等。
常见的动态注入,可以获取登录账号、密码等。
检测结果 存在风险
解决方案 代码层修复方案:通过代码对应用内存文件进行监控,如发生内存操作事件时,判断动态注入来源,如来源异常,则做后续防动态注入处理。
建议使用专业安全加固方案的防内存代码注入功能,防止应用
被动态注入攻击。
3.3 . 组件风险
3.3.1 . Activity最小化特权风险
检测目的 检测应用Activity组件权限设置是否满足最小化特权要求。
风险等级 中
威胁描述 Activity的最小化特权是指组件只能自身调用,其他应用无权访问,即组件不导出。Activity组件设置导出权限,则该组件能够被外部的其他组件直接调用,这样就可能导致泄露隐私数据或者应用程序崩溃等风险。Activity被恶意应用调用,可能有以下威胁描述:修改程序的状态或者数据;被调用的Activity可能返回隐私信息给恶意应用,造成数据泄露;可能
使应用程序崩溃,造成拒绝服务等漏洞。
检测结果 存在风险
检测详情 第1处file:AndroidManifest.xml method:
code:<activity xmlns:android="http://schemas.android.com/apk/res/andr oid" android:theme="@android:01030010" android:name="com.jsysh.mm.wxapi.WXPayEntryActivity" android:exported="true" android:launchMode="1"/>
第2处file:AndroidManifest.xml method:
code:<activity xmlns:android="http://schemas.android.com/apk/res/andr oid" android:theme="@android:01030010" android:name="com.alipay.sdk.app.PayResultActivity" android:exported="true" android:launchMode="3" android:configChanges="0x000004e0"/>
第3处file:AndroidManifest.xml method:
code:<activity xmlns:android="http://schemas.android.com/apk/res/andr oid" android:theme="@android:01030010" android:name="com.alipay.sdk.app.AlipayResultActivity"
android:exported="true" android:launchMode="2"/>
解决方案 开发者自查,设置AndroidManifest.xml文件中Activity组件 EXPORTED属性为false,对于必须导出的组件必须限制于授权用户或者特定应用组件,并且尽量不包含任何的Intent
Filter。
3.3.2 . WebView File域同源策略绕过漏洞
检测目的 检测应用是否存在WebView File域同源策略绕过漏洞。
风险等级 高
威胁描述 应用程序一旦使用WebView,同时支持File域,并打开了对JavaScript的支持,就能利用JavaScript的延时执行,绕过File协议的同源检查,并能够访问应用程序的私有文件,导致
敏感信息泄露。
检测结果 存在风险
检测详情 第1处file:io.dcloud.share.ShareAuthorizeView.java method:
code:第2处
file:io.dcloud.common.adapter.ui.webview.SysWebView.ja va
method: code: 第3处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 2.java
method: code: 第4处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$7. java
method: code: 第5处
file:io.dcloud.feature.ad.dcloud.d$a$a.java method:
code:第6处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent.ja va
method: code: 第7处
file:io.dcloud.feature.ad.dcloud.d.java method:
code:第8处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$2. java
method: code: 第9处
file:io.dcloud.WebviewActivity$b$b.java method:
code: 第10处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$5. java
method: code: 第11处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 4.java
method: code: 第12处
file:io.dcloud.common.DHInterface.IDCloudWebviewClient Listener.java
method: code: 第13处
file:io.dcloud.WebviewActivity.java method:
code: 第14处 file:io.dcloud.feature.gg.dcloud.ADWebView$1.java method:
code: 第15处
file:io.dcloud.feature.gg.dcloud.ADWebView$1$1.java method:
code: 第16处
file:com.alipay.sdk.widget.e$c.java method:
code: 第17处
file:io.dcloud.feature.ad.dcloud.d$a.java method:
code: 第18处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 7.java
method: code: 第19处
file:io.dcloud.ads.activity.WebViewActivity$a.java method:
code: 第20处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$6. java
method: code: 第21处
file:io.dcloud.ads.activity.WebViewActivity$b$a.java method:
code: 第22处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 9.java
method: code: 第23处
file:io.dcloud.ads.activity.WebViewActivity.java method:
code: 第24处
file:io.dcloud.WebviewActivity$c.java method:
code: 第25处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 3.java
method: code: 第26处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 10.java
method: code: 第27处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$3. java
method: code:第28处file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 6.java
method: code: 第29处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent. java
method: code: 第30处
file:io.dcloud.common.adapter.ui.AdaWebview.java method:
code: 第31处
file:com.alipay.sdk.widget.e.java method:
code: 第32处
file:io.dcloud.common.adapter.ui.AdaUniWebView.java method:
code: 第33处
file:io.dcloud.common.DHInterface.IWebview.java method:
code: 第34处
file:com.alipay.sdk.widget.c.java method:
code: 第35处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$8. java
method: code: 第36处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 1.java
method: code: 第37处
file:io.dcloud.feature.gg.dcloud.ADWebView.java method:
code: 第38处
file:io.dcloud.WebviewActivity$a.java method:
code: 第39处
file:io.dcloud.ads.activity.WebViewActivity$b.java method:
code: 第40处
file:io.dcloud.WebviewActivity$b$a.java method:
code: 第41处
file:io.dcloud.WebviewActivity$b.java method:
code: 第42处file:io.dcloud.common.adapter.ui.webview.WebJsEvent$4. java
method: code: 第43处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 5.java
method: code: 第44处
file:io.dcloud.common.adapter.ui.webview.WebLoadEvent$ 8.java
method: code: 第45处
file:io.dcloud.feature.gg.dcloud.ADWebView$1$2.java method:
code: 第46处
file:com.alipay.sdk.widget.e$d.java method:
code: 第47处
file:io.dcloud.common.adapter.ui.webview.WebJsEvent$1. java
method:
code:
解决方案 1.对于不需要使用File协议的应用,禁用File协议,显式设置 webView.getSettings().setAllowFileAccess(false) 。 2.对于需要使用File协议的应用,禁止File协议调用JavaScript,显式设置
webView.getSettings().setJavaScriptEnabled(false)。
3.5.2 . StrandHogg漏洞
检测目的 检测应用是否存在StrandHogg漏洞。
风险等级 高
威胁描述 StrandHogg是一个存在于Android多任务系统中的应用漏洞。此漏洞利用APP清单文件AndroidManifest.xml中android:taskAffinity的属性设置,使安装在Android设备上的恶意应用可以伪装成该设备上的任意其他应用程序,包括需要特权的任意系统应用程序。当用户点击正常应用图标时,恶意程序可以拦截劫持这个任务,并伪装成正常应用程序的界面
,从而窃取用户的敏感数据。同时恶意应用程序还可以冒充正常应用向用户请求权限,包括SMS、照片、麦克风和GPS等,从而允许攻击者访问短信和通讯录、查看相册、窃听并跟踪受害
者等。
检测结果 存在风险
检测详情
解决方案 建议AndroidManifest.xml文件中“android:taskAffinity”属性值设置为空,即
android:taskAffinity=""。
3.6 . 源文件安全
3.6.1 . Java代码未加壳风险
检测目的 检测应用程序中Java代码是否加壳。
风险等级 高
威胁描述 Java代码加壳即在Java代码外面包裹上另外一段代码,保护里面的Java代码不被非法修改或反编译。Java文件未进行加壳保护,可能面临被反编译的风险。攻击者通过baksmali/apktool/dex2jar等反编译工具得到应用程序的代码
,导致代码逻辑泄露、重要数据加密代码逻辑泄露等。
检测结果 存在风险
检测详情
解决方案 建议使用专业应用安全加固方案,对APK包中的classes.dex文
件进行保护,防止应用被反编译。
3.6.2 . so文件未加固风险
检测目的 检测应用程序中的so文件是否进行加固。
风险等级 高
威胁描述 so文件为APK中包含的动态链接库文件,Android利用NDK技术将C/C++语言实现的核心代码编译为so库文件供Java层调用。so文件被破解可能导致应用的核心功能代码和算法泄露。攻击者利用核心功能与算法可轻易抓取到客户端的敏感数据,并对
其解密,导致用户的隐私泄露或直接财产损失。
检测结果 存在风险
检测详情 第1处
file:lib/armeabi-v7a/lib39285EFA.so method:
code:第2处
file:lib/armeabi-v7a/libbreakpad-core.so method:
code:第3处
file:lib/armeabi-v7a/libdcblur.so method:
code:第4处
file:lib/armeabi-v7a/libpl_droidsonroids_gif.so method:
code:
解决方案 建议使用专业安全加固方案,对APK中的SO文件进行加固保护
。
3.6.3 . H5文件加固检测
检测目的 检测应用资源文件中的H5文件是否加固。
风险等级 高
威胁描述 应用中如果存在明文存储的H5资源文件,则会泄露页面基本布局和一些重要的信息,如登录界面、支付界面等。攻击者可篡改H5资源文件,可能植入钓鱼页面或者恶意代码,导致用户账号、密码、支付密码等敏感信息泄露。通过H5代码暴露相关活动的业务逻辑,可能被黑产团队用来刷红包、薅羊毛等,造成
经济损失。
检测结果 存在风险
检测详情 第1处file:assets/data/dcloud_error.html method:
code:
解决方案 建议使用专业安全加固方案,对应用中的H5文件进行加固保护
。
3.6.4 . 资源文件泄露风险
检测目的 检测应用中的资源文件是否存在被查看分析风险。
风险等级 中
威胁描述 APK中包含多种类型的资源文件,例如图片、ICON、H5文件等
,直接对APK进行解压缩就可以查看APK中的资源文件,窃取应用图标,篡改H5文件,植入钓鱼页面或者恶意代码,造成用户
的敏感信息泄露。
检测结果 存在风险
检测详情 第1处file:assets/res/HBuilder.png method:
code:第2处
file:assets/res/dcloud_prograss_snow1.png method:
code:第3处
file:assets/res/point.png method:
code:第4处
file:assets/apps/H55A84283/www/androidPrivacy.json method:
code:第5处
file:assets/apps/H55A84283/www/manifest.json method:
code:第6处
file:assets/supplierconfig.json method:
code:第7处
file:assets/data/dcloud_control.xml method:
code:第8处
file:assets/data/dcloud_url.json method:
code:第9处
file:assets/data/dcloud_properties.xml method:
code:
解决方案 使用专业的安全加固方案,对资源文件进行加密处理,保证文
件在存储过程中为密文。
1 个回复
Umao
请问你怎么解决的,大佬