|
本帖最后由 suyunhao 于 2023-1-10 15:54 编辑
- 检测点名称 返回键屏蔽
- 检测目的 检测应用是否存在检测是否屏蔽掉返回键漏洞
- 危害描述 可能导致无法退出应用
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件:
- classes3.dex/com/uzmap/pkg/uzmodules/browser/BrowserActivity.java
- 问题代码上下文:
- public void onBackPressed()
- {
- XBrowserLayout localXBrowserLayout =
- this.mBrowserLayout;
- if (localXBrowserLayout == null) {
- return;
- }
- if (!localXBrowserLayout.onPageBack()) {
- finish();
- 6
- }
- }
- 修复建议 建议不要屏蔽系统返回键
复制代码
- 检测点名称 PendingIntent安全检测风险
- 检测目的 检测应用是否存在PendingIntent安全检测风险漏洞
- 危害描述 恶意用户劫持修改Intent的内容
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件:
- classes2.dex/com/deepe/f/b/a.smali
- 问题代码上下文:
- if-lt v11, v14, :cond_4
- invoke-static {v10, v4, v0, v12},
- Landroid/app/PendingIntent;-
- >getBroadcast(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent;
- move-result-object v0
- 修复建议 禁止使用一个空Intent去构造PendingIntent,构造
- PendingIntent的Intent一定要设置ComponentName或者action
复制代码
- 检测点名称 秘钥硬编码
- 检测目的 检测应用是否存在秘钥硬编码漏洞
- 危害描述 可能导致加密算法被破解
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件:
- classes2.dex/com/deepe/c/g/b.smali
- 问题代码上下文:
- const-string v0, "Mzk2YTAyMWNkMjkzazI4MQ=="
- sget-object v1, Lcom/deepe/c/g/b;-
- >a:Ljava/lang/String;
- invoke-direct {v0, p1, v1},
- Ljavax/crypto/spec/SecretKeySpec;-
- ><init>([BLjava/lang/String;)V
- new-instance p1, Ljavax/crypto/spec/IvParameterSpec;
- 修复建议 将密钥进行加密或变形后存储
复制代码
- 检测点名称 Intent Scheme URL攻击漏洞
- 检测目的 检测应用是否存在Intent Scheme URL攻击漏洞
- 危害描述 攻击者通过构造特殊格式的URL直接向系统发送意图,启动应
- 用的Activity组件或者发送异常数据,导致应用的敏感信息
- 泄露或者应用崩溃。
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件:
- classes3.dex/com/uzmap/pkg/uzcore/uzmodule/a/c.java
- 问题代码上下文:
- {
- try
- {
- localObject2 = Intent.parseUri(str, 0);
- }
- catch (URISyntaxException localURISyntaxException)
- {
- 修复建议 如果使用了Intent.parseUri方法,那么必须对获取的intent
- 进行严格过滤,intent至少包含addCategory(“android.intent.category.BROWSABLE”),setComponent(null),setSelector(null)3个策略;对于外部来源的intent要进行严格
- 过滤,也可设立白名单。
复制代码
- 检测点名称 动态注册Receiver权限缺失风险
- 检测目的 检测应用是否存在动态注册Receiver权限缺失风险漏洞
- 危害描述 可能导致拒绝服务、信息泄漏等问题
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件
- classes3.dex/com/uzmap/pkg/uzapp/UPExtraBridge.java
- 问题代码上下文
- paramA = new IntentFilter("android.intent.action.DOWNLOAD_COMPLETE");
- paramA.addAction("android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED");
- paramA.addAction("android.intent.action.VIEW_DOWNLOADS");
- paramContext.registerReceiver(localDownloadReceiver,
- paramA);
- 8
- }
- public void onReceive(Context paramContext, Intent
- paramIntent)
- 修复建议 静态注册BroadcastReceiver,同时设置exported为false
复制代码
- 检测点名称 zip文件目录遍历漏洞
- 检测目的 检测应用是否存在zip文件目录遍历漏洞漏洞
- 危害描述 攻击者可构造zip文件来改变文件位置,造成文件被替换的风
- 险
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件
- 10
- classes2.dex/com/deepe/b/f/b.smali
- 问题代码上下文
- check-cast v1, Ljava/util/zip/ZipEntry;
- invoke-virtual {v1}, Ljava/util/zip/ZipEntry;->getName()Ljava/lang/String;
- move-result-object v7
- 修复建议 对含有的上级目录字符串(../)上级目录做过滤
复制代码
- 检测点名称 Activity组件暴露风险
- 检测目的 检测应用是否存在Activity组件暴露的风险
- 危害描述 攻击者通过构造恶意数据针对导出Activity组件实施越权攻
- 击
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件
- AndroidManifest.xml
- 问题代码上下文
- <activity android:exported="true" android:launchMode="singleTop" android:name="com.suyunhao.fxh.wxapi.WXPayEntryActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"/>
- 修复建议 如果应用的activity组件不必要导出,或者组件配置了
- intent filter标签,建议显示设置组件的“android:exported”属性为false,如果组件必须要提供给外部应用使
- 用,建议对组件进行权限控制
复制代码
- 检测点名称 WebView忽略SSL证书
- 检测目的 检测应用是否存在WebView忽略SSL证书的现象
- 危害描述 存在应用克隆攻击的风险
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件
- classes3.dex/com/uzmap/pkg/uzcore/i/c$1.smali
- 问题代码上下文
- .method public a(ILjava/lang/String;)V
- .locals 0
- const/4 p2, -0x1
- if-ne p1, p2, :cond_0
- iget-object p1, p0, Lcom/uzmap/pkg/uzcore/i/c$1;->b:Landroid/webkit/SslErrorHandler;
- invoke-virtual {p1}, Landroid/webkit/SslErrorHandler;->proceed()V
- goto :goto_0
- :cond_0
- const/4 p2, -0x2
- if-ne p1, p2, :cond_1
- iget-object p1, p0, Lcom/uzmap/pkg/uzcore/i/c$1;->b:Landroid/webkit/SslErrorHandler;
- invoke-virtual {p1}, Landroid/webkit/SslErrorHandler;->cancel()V
- :cond_1
- :goto_0
- return-void
- .end method
- 修复建议 严格判断服务器端和客户端的证书校验
复制代码
- 检测点名称 TrustManager校验风险
- 检测目的 检测在 SSL 验证中,自定义 SSL x509 TrustManager 是否存
- 在信任任意证书漏洞
- 危害描述 存在中间人攻击的风险
- 危险等级 高危
- 测评结果 存在风险
- 示例 文件
- classes2.dex/com/lidroid/xutils/http/client/DefaultSSLSocketFactory$1.smali
- 12
- 问题代码上下文
- .method public checkServerTrusted([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V
- .locals 0
- .annotation system Ldalvik/annotation/Throws;
- value = {
- Ljava/security/cert/CertificateException;
- }
- .end annotation
- return-void
- .end method
- 修复建议 利用X509TrustManager子类中的checkServerTrusted和
- checkClientTrusted函数,校验证书的合法性
复制代码
- 检测点名称 会话安全
- 检测目的 检测应用是否存在会话安全漏洞
- 危害描述 没有使用服务端的Session机制的话则可能造成服务端储存的
- 数据被无权限访问风险
- 危险等级 中危
- 测评结果 存在风险
- 示例 文件
- classes3.dex/com/uzmap/pkg/uzmodules/uzWx/utils/Util.java
- 修复建议 建议增加Session机制
复制代码- 检测点名称 Intent隐式调用
- 检测目的 检测应用是否存在Intent隐式调用漏洞
- 危害描述 使用隐式的Intent调用时存在被劫持的风险
- 危险等级 中危
- 测评结果 存在风险
- 示例 文件
- classes3.dex/com/uzmap/pkg/uzsocket/b/c.smali
- 问题代码上下文
- "UPns Service onCreate"
- sget-object v0, Lcom/uzmap/pkg/uzsocket/b/a;->c:Ljava/lang/String;
- invoke-direct {v2, v0}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- iget-object v0, p0, Lcom/uzmap/pkg/uzsocket/b/c;->f:Ljava/lang/String;
- 修复建议 建议使用显式Intent来处理敏感信息
复制代码
- 检测点名称 SD卡读写检测
- 检测目的 检测应用是否存在SD卡读写检测漏洞
- 危害描述 可能泄漏敏感信息
- 危险等级 中危
- 测评结果 存在风险
- 示例 文件
- classes3.dex/com/uzmap/pkg/uzkit/UZUtility.java
- 问题代码上下文
- public static String getCameraStoragePath()
- {
- Object localObject = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM), "Camera");
- if (!((File)localObject).exists()) {
- ((File)localObject).mkdirs();
- }
- 修复建议 如无必要,不对敏感信息进行持久话存储;如有必要,建议
- 存储在应用私有目录并进行加密存储
复制代码
- 检测点名称 不安全的浏览器调用漏洞
- 检测目的 检测应用是否存在不安全的浏览器调用漏洞
- 危害描述 可能导致浏览器被恶意篡改
- 危险等级 中危
- 测评结果 存在风险
- 示例 文件
- classes3.dex/com/uzmap/pkg/uzcore/i/b/e.smali
- 问题代码上下文
- .method public constructor <init>(Landroid/content/Context;Z)V
- .locals 2
- invoke-direct {p0, p1}, Landroid/webkit/WebView;-><init>(Landroid/content/Context;)V
- const/4 v0, 0x0
- 修复建议 建议在应用调用外部浏览器时对引擎版本进行检测,当发现
- 调用Chrome V8引擎并且版本低于4.2时停止调用外部浏览器
- 并且提示用户对调用的系统浏览器进行升级或者修改系统默
- 认的浏览器
复制代码
|
|