安全分数
安全分数 48/100
风险评级
等级
- A
- B
- C
- F
严重性分布 (%)
隐私风险
2
用户/设备跟踪器
调研结果
高危
2
中危
19
信息
2
安全
1
关注
0
高危 已启用远程WebView调试
已启用远程WebView调试 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x04c-Tampering-and-Reverse-Engineering.md#debugging-and-tracing Files: com/onesignal/o3.java, line(s) 353,12
高危 如果一个应用程序使用WebView.loadDataWithBaseURL方法来加载一个网页到WebView,那么这个应用程序可能会遭受跨站脚本攻击
如果一个应用程序使用WebView.loadDataWithBaseURL方法来加载一个网页到WebView,那么这个应用程序可能会遭受跨站脚本攻击 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05h-Testing-Platform-Interaction.md#static-analysis-7 Files: com/pichillilorenzo/flutter_inappwebview/InAppWebViewMethodHandler.java, line(s) 1029,6 com/pichillilorenzo/flutter_inappwebview/in_app_browser/InAppBrowserActivity.java, line(s) 359,17,18 com/pichillilorenzo/flutter_inappwebview/in_app_webview/FlutterWebView.java, line(s) 150,10,11
中危 应用程序存在Janus漏洞
应用程序使用了v1签名方案进行签名,如果只使用v1签名方案,那么它就容易受到安卓5.0-8.0上的Janus漏洞的攻击。在安卓5.0-7.0上运行的使用了v1签名方案的应用程序,以及同时使用了v2/v3签名方案的应用程序也同样存在漏洞。
中危 应用程序可以安装在有漏洞的已更新 Android 版本上
Android 4.4-4.4.4, [minSdk=19] 该应用程序可以安装在具有多个未修复漏洞的旧版本 Android 上。这些设备不会从 Google 接收合理的安全更新。支持 Android 版本 => 10、API 29 以接收合理的安全更新。
中危 应用程序已启用明文网络流量
[android:usesCleartextTraffic=true] 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。
中危 应用程序数据存在被泄露的风险
未设置[android:allowBackup]标志 这个标志 [android:allowBackup]应该设置为false。默认情况下它被设置为true,允许任何人通过adb备份你的应用程序数据。它允许已经启用了USB调试的用户从设备上复制应用程序数据。
中危 Broadcast Receiver (io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingReceiver) 受权限保护, 但是应该检查权限的保护级别。
Permission: com.google.android.c2dm.permission.SEND [android:exported=true] 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。
中危 Broadcast Receiver (com.onesignal.GcmBroadcastReceiver) 受权限保护, 但是应该检查权限的保护级别。
Permission: com.google.android.c2dm.permission.SEND [android:exported=true] 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。
中危 Activity (com.onesignal.NotificationOpenedActivityHMS) 未被保护。
存在一个intent-filter。 发现 Activity与设备上的其他应用程序共享,因此让它可以被设备上的任何其他应用程序访问。intent-filter的存在表明这个Activity是显式导出的。
中危 Broadcast Receiver (com.onesignal.BootUpReceiver) 未被保护。
存在一个intent-filter。 发现 Broadcast Receiver与设备上的其他应用程序共享,因此让它可以被设备上的任何其他应用程序访问。intent-filter的存在表明这个Broadcast Receiver是显式导出的。
中危 Broadcast Receiver (com.onesignal.UpgradeReceiver) 未被保护。
存在一个intent-filter。 发现 Broadcast Receiver与设备上的其他应用程序共享,因此让它可以被设备上的任何其他应用程序访问。intent-filter的存在表明这个Broadcast Receiver是显式导出的。
中危 Broadcast Receiver (com.google.firebase.iid.FirebaseInstanceIdReceiver) 受权限保护, 但是应该检查权限的保护级别。
Permission: com.google.android.c2dm.permission.SEND [android:exported=true] 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。
中危 Service (androidx.work.impl.background.systemjob.SystemJobService) 受权限保护, 但是应该检查权限的保护级别。
Permission: android.permission.BIND_JOB_SERVICE [android:exported=true] 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。
中危 高优先级的Intent (999)
[android:priority] 通过设置一个比另一个Intent更高的优先级,应用程序有效地覆盖了其他请求。
中危 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库
应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x04h-Testing-Code-Quality.md#injection-flaws-mstg-arch-2-and-mstg-platform-2 Files: b/p/a/g/a.java, line(s) 4,5,6,7,89 c/b/b/a/i/x/j/b0.java, line(s) 5,6,304 c/b/b/a/i/x/j/f0.java, line(s) 3,17 c/b/b/a/i/x/j/h0.java, line(s) 4,5,88 com/onesignal/j2.java, line(s) 6,7,8,9,10,474 com/onesignal/q3/i.java, line(s) 3,4,11 com/pichillilorenzo/flutter_inappwebview/credential_database/CredentialDatabaseHelper.java, line(s) 4,5,17
中危 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等
文件可能包含硬编码的敏感信息,如用户名、密码、密钥等 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#checking-memory-for-sensitive-data-mstg-storage-10 Files: b/c/b/b.java, line(s) 10 com/onesignal/i3.java, line(s) 322 com/onesignal/w0.java, line(s) 20 com/pichillilorenzo/flutter_inappwebview/credential_database/URLCredentialContract.java, line(s) 7,9 com/pichillilorenzo/flutter_inappwebview/types/URLCredential.java, line(s) 88
中危 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据
应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#external-storage Files: b/h/e/a.java, line(s) 74 b/h/e/b.java, line(s) 201 io/flutter/plugins/f/h.java, line(s) 110,119 io/flutter/plugins/share/b.java, line(s) 66
中危 不安全的Web视图实现。可能存在WebView任意代码执行漏洞
不安全的Web视图实现。可能存在WebView任意代码执行漏洞 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05h-Testing-Platform-Interaction.md#testing-javascript-execution-in-webviews-mstg-platform-5 Files: com/onesignal/o3.java, line(s) 272,271
中危 应用程序使用不安全的随机数生成器
应用程序使用不安全的随机数生成器 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#weak-random-number-generators Files: c/b/b/b/g/i/c.java, line(s) 17
中危 应用程序包含隐私跟踪程序
此应用程序有多个2隐私跟踪程序。跟踪器可以跟踪设备或用户,是终端用户的隐私问题。
中危 此应用可能包含硬编码机密信息
从应用程序中识别出以下机密确保这些不是机密或私人信息 "firebase_database_url" : "https://flyweb-2020.firebaseio.com" "google_api_key" : "AIzaSyDNKy8damDiZfaqCL6uZLBh0UmgluSDHC0" "google_crash_reporting_api_key" : "AIzaSyDNKy8damDiZfaqCL6uZLBh0UmgluSDHC0" b2f7f966-d8cc-11e4-bed1-df8f05be55ba c682b8144a8dd52bc1ad63 5eb5a37e-b458-11e3-ac11-000c2940e62c VGhpcyBpcyB0aGUgcHJlZml4IGZvciBCaWdJbnRlZ2Vy
信息 应用程序记录日志信息,不得记录敏感信息
应用程序记录日志信息,不得记录敏感信息 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#logs Files: b/a/k/a/a.java, line(s) 96 b/a/n/g.java, line(s) 117,150,227 b/h/e/a.java, line(s) 39 b/h/e/d/a.java, line(s) 41 b/h/e/d/b.java, line(s) 62 b/h/e/d/f.java, line(s) 187,200,211,82,91 b/h/f/c.java, line(s) 403,408 b/h/f/e.java, line(s) 75 b/h/f/f.java, line(s) 36,68 b/h/f/g.java, line(s) 48,106 b/h/f/j.java, line(s) 89,92 b/h/f/k.java, line(s) 91 b/h/j/f.java, line(s) 21 b/h/l/b.java, line(s) 35,47,59,73 b/h/m/b.java, line(s) 16 b/h/n/a0.java, line(s) 62,74,81,90 b/h/n/b.java, line(s) 55 b/h/n/b0/c.java, line(s) 143 b/h/n/f.java, line(s) 18,27 b/h/n/h.java, line(s) 13 b/h/n/s.java, line(s) 580 b/h/n/t.java, line(s) 18,29 b/h/n/v.java, line(s) 19,34,53,78,97,116,137 b/j/b/c.java, line(s) 392 b/l/a/a.java, line(s) 28 b/m/a/b.java, line(s) 30,39,64 b/n/a/a.java, line(s) 151,156,163,167,183,193 b/p/a/c.java, line(s) 32,35,47,25,39 b/q/b/c.java, line(s) 593,814,827,846 b/r/i0.java, line(s) 28,81 b/r/y.java, line(s) 33,42,44,81,94 b/s/a/a/h.java, line(s) 942 c/b/b/a/i/v/a.java, line(s) 6,10,14,22,26 c/b/b/b/b/a.java, line(s) 143 c/b/b/b/c/b.java, line(s) 25,41,67 c/b/b/b/c/d.java, line(s) 52,102,116,142,213,228,47,100,114,140,208,227,137,155,167,172,184 c/b/b/b/c/e.java, line(s) 21,20,20 c/b/b/b/c/i.java, line(s) 47,42 c/b/b/b/c/j.java, line(s) 89,128,170,84,126,148,166,198,242,258,297,149,199,243,259,298,118,178 c/b/b/b/c/s.java, line(s) 22 c/b/b/b/c/u.java, line(s) 28,42,20,34 c/b/b/b/c/v.java, line(s) 39,27,58 c/b/b/b/d/e.java, line(s) 50,63,68,167 c/b/b/b/d/j.java, line(s) 80,46,163,177,182,185 c/b/b/b/d/k.java, line(s) 34 c/b/b/b/d/q/a.java, line(s) 40,45 c/b/b/b/d/u.java, line(s) 11 c/b/b/b/d/v.java, line(s) 41 c/b/b/b/g/c/a6.java, line(s) 173 c/b/b/b/g/c/c.java, line(s) 58 c/b/b/b/g/c/f.java, line(s) 135 c/b/b/b/g/c/k.java, line(s) 16,35 c/b/b/b/g/c/l.java, line(s) 16 c/b/b/b/g/c/m.java, line(s) 25,49 c/b/b/b/g/c/m5.java, line(s) 47 c/b/b/b/g/c/w5.java, line(s) 69,87,91 c/b/b/b/g/f/o.java, line(s) 14 c/b/b/b/g/h/t.java, line(s) 26 c/b/b/b/g/i/c.java, line(s) 166,133,121,130,139,212,218 c/b/b/b/g/i/f.java, line(s) 65 c/b/b/b/g/i/m0.java, line(s) 18 c/b/b/b/g/l/d6.java, line(s) 43,81,86,89 c/b/b/b/g/l/f.java, line(s) 63 c/b/b/b/g/l/g5.java, line(s) 56,71 c/b/b/b/g/l/i.java, line(s) 16 c/b/b/b/j/b/a.java, line(s) 90,101,115,119 c/b/b/b/k/a.java, line(s) 100,136,75 c/b/b/b/m/c.java, line(s) 9,16,27,34,8,15,23,24,40,41,47,48 c/b/b/c/l/h.java, line(s) 48 c/b/b/c/n/a.java, line(s) 187 c/b/b/c/w/d.java, line(s) 135,168 c/b/b/c/x/b.java, line(s) 25 c/b/b/c/z/g.java, line(s) 395 c/d/a/a.java, line(s) 169,158 c/d/a/c.java, line(s) 70,59 c/d/a/d.java, line(s) 26,15 com/amolg/flutterbarcodescanner/BarcodeCaptureActivity.java, line(s) 266,279 com/amolg/flutterbarcodescanner/FlutterBarcodeScannerPlugin.java, line(s) 158,173,266 com/amolg/flutterbarcodescanner/camera/CameraSourcePreview.java, line(s) 68,35,39,162,166 com/baseflow/location_permissions/LocationPermissionsPlugin.java, line(s) 80,83,182,185,259,275,278,343,165,270 com/onesignal/JobIntentService.java, line(s) 192,197,235 com/onesignal/a2.java, line(s) 1574,1580,1594,1576,1572,1578 com/onesignal/flutter/f.java, line(s) 177 com/onesignal/g.java, line(s) 12 com/onesignal/r3/c.java, line(s) 61 com/pichillilorenzo/flutter_inappwebview/JavaScriptBridgeInterface.java, line(s) 76 com/pichillilorenzo/flutter_inappwebview/ServiceWorkerManager.java, line(s) 47 com/pichillilorenzo/flutter_inappwebview/Util.java, line(s) 206,190 com/pichillilorenzo/flutter_inappwebview/chrome_custom_tabs/CustomTabsHelper.java, line(s) 82 com/pichillilorenzo/flutter_inappwebview/content_blocker/ContentBlockerHandler.java, line(s) 207,272 com/pichillilorenzo/flutter_inappwebview/in_app_browser/InAppBrowserActivity.java, line(s) 272,353 com/pichillilorenzo/flutter_inappwebview/in_app_browser/InAppBrowserManager.java, line(s) 126 com/pichillilorenzo/flutter_inappwebview/in_app_webview/DisplayListenerProxy.java, line(s) 38 com/pichillilorenzo/flutter_inappwebview/in_app_webview/FlutterWebView.java, line(s) 49,140 com/pichillilorenzo/flutter_inappwebview/in_app_webview/InAppWebView.java, line(s) 1280 com/pichillilorenzo/flutter_inappwebview/in_app_webview/InAppWebViewChromeClient.java, line(s) 1032,1056,213,546,589,641,696,756,817,885,948 com/pichillilorenzo/flutter_inappwebview/in_app_webview/InAppWebViewClient.java, line(s) 130,219,314,399,454,535,568,629 com/pichillilorenzo/flutter_inappwebview/in_app_webview/InAppWebViewRenderProcessClient.java, line(s) 35,67 com/pichillilorenzo/flutter_inappwebview/in_app_webview/InputAwareWebView.java, line(s) 60,68,96,143 d/a/b.java, line(s) 9,13,20,24 io/flutter/plugins/a/b.java, line(s) 53,74,22,65,71 io/flutter/plugins/a/c.java, line(s) 181,170 io/flutter/plugins/d/k.java, line(s) 56 io/flutter/plugins/d/l.java, line(s) 161 io/flutter/plugins/d/o.java, line(s) 22 io/flutter/plugins/d/p.java, line(s) 96,123 io/flutter/plugins/firebase/messaging/FlutterFirebaseMessagingBackgroundService.java, line(s) 20,57,71,40,51 io/flutter/plugins/firebase/messaging/FlutterFirebaseMessagingReceiver.java, line(s) 14 io/flutter/plugins/firebase/messaging/n.java, line(s) 13 io/flutter/plugins/firebase/messaging/o.java, line(s) 126,163,76,79,118 io/flutter/plugins/h/a.java, line(s) 74 io/flutter/plugins/h/e.java, line(s) 259 io/flutter/plugins/h/g.java, line(s) 51,59,79,107 io/flutter/plugins/urllauncher/a.java, line(s) 58,47 io/flutter/plugins/urllauncher/c.java, line(s) 12,30,45
信息 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它
此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x04b-Mobile-App-Security-Testing.md#clipboard Files: io/flutter/plugin/editing/b.java, line(s) 4,68,77 io/flutter/plugin/platform/d.java, line(s) 6,197
安全 此应用程序使用SSL Pinning 来检测或防止安全通信通道中的MITM攻击
此应用程序使用SSL Pinning 来检测或防止安全通信通道中的MITM攻击 https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05g-Testing-Network-Communication.md#testing-custom-certificate-stores-and-certificate-pinning-mstg-network-4 Files: h/k0/e.java, line(s) 90,89,88,88