安全分析报告: 狐狸跨区排位工具 v1.0.5

安全分数


安全分数 51/100

风险评级


等级

  1. A
  2. B
  3. C
  4. F

严重性分布 (%)


隐私风险

0

用户/设备跟踪器


调研结果

高危 1
中危 16
信息 3
安全 1
关注 0

高危 应用程序使用带PKCS5/PKCS7填充的加密模式CBC。此配置容易受到填充oracle攻击。

应用程序使用带PKCS5/PKCS7填充的加密模式CBC。此配置容易受到填充oracle攻击。
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
com/stardust/autojs/engine/encryption/ScriptEncryption.java, line(s) 80,94,122
org/autojs/autojspro/v8/api/datastore/Datastore.java, line(s) 878,892

中危 应用程序已启用明文网络流量

[android:usesCleartextTraffic=true]
应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。

中危 Service (com.stardust.notification.NotificationListenerService) 受权限保护, 但是应该检查权限的保护级别。

Permission: android.permission.BIND_NOTIFICATION_LISTENER_SERVICE [android:exported=true]
发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。

中危 Activity设置了TaskAffinity属性

(com.stardust.autojs.core.permission.PermissionRequestActivity)
如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名

中危 Activity设置了TaskAffinity属性

(com.stardust.autojs.core.activity.StartForResultActivity)
如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名

中危 Content Provider (rikka.shizuku.ShizukuProvider) 受权限保护, 但是应该检查权限的保护级别。

Permission: android.permission.INTERACT_ACROSS_USERS_FULL [android:exported=true]
发现一个 Content Provider被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。

中危 Broadcast Receiver (com.stardust.autojs.core.timing.receiver.StaticBroadcastReceiver) 未被保护。

存在一个intent-filter。
发现 Broadcast Receiver与设备上的其他应用程序共享,因此让它可以被设备上的任何其他应用程序访问。intent-filter的存在表明这个Broadcast Receiver是显式导出的。

中危 应用程序使用不安全的随机数生成器

应用程序使用不安全的随机数生成器
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#weak-random-number-generators

Files:
com/stardust/automator/test/TestUiObject.java, line(s) 8
g4/a.java, line(s) 3
g4/b.java, line(s) 3
h4/a.java, line(s) 4
j$/util/concurrent/ThreadLocalRandom.java, line(s) 11
x4/b.java, line(s) 4
x4/e.java, line(s) 3

中危 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据

应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#external-storage

Files:
com/stardust/autojs/core/pref/Pref.java, line(s) 46
com/stardust/pio/PFiles.java, line(s) 329,333,333,337,337,505
com/stardust/pio/PFilesKt.java, line(s) 26

中危 应用程序创建临时文件。敏感信息永远不应该被写进临时文件

应用程序创建临时文件。敏感信息永远不应该被写进临时文件


Files:
com/stardust/pio/PFiles.java, line(s) 133

中危 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库

应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04h-Testing-Code-Quality.md#injection-flaws-mstg-arch-2-and-mstg-platform-2

Files:
com/stardust/autojs/core/database/Database.java, line(s) 7,8,9,10,285,286,289,290
com/stardust/autojs/core/database/IntentTaskDatabase.java, line(s) 6,7,21,27
com/stardust/autojs/core/database/ModelDatabase.java, line(s) 5,6,109,143,227
com/stardust/autojs/core/database/TimedTaskDatabase.java, line(s) 6,7,22,28,31
com/stardust/autojs/core/pref/PrefContentProvider.java, line(s) 7,8,38
net/grandcentrix/tray/provider/TrayDBHelper.java, line(s) 5,6,32,50,51

中危 SHA-1是已知存在哈希冲突的弱哈希

SHA-1是已知存在哈希冲突的弱哈希
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
q6/e.java, line(s) 364
s/o.java, line(s) 240

中危 MD5是已知存在哈希冲突的弱哈希

MD5是已知存在哈希冲突的弱哈希
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
f/k.java, line(s) 98,114

中危 不安全的Web视图实现。可能存在WebView任意代码执行漏洞

不安全的Web视图实现。可能存在WebView任意代码执行漏洞
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05h-Testing-Platform-Interaction.md#testing-javascript-execution-in-webviews-mstg-platform-5

Files:
com/stardust/autojs/core/web/InjectableWebClient.java, line(s) 102,104
com/stardust/widget/EventWebView.java, line(s) 698,846,872,899,925,690,838,864,891,917

中危 可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息

可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05h-Testing-Platform-Interaction.md#static-analysis-6

Files:
com/stardust/autojs/core/web/InjectableWebClient.java, line(s) 105,104
com/stardust/widget/EventWebView.java, line(s) 694,842,868,895,921,690,838,864,891,917

中危 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等

文件可能包含硬编码的敏感信息,如用户名、密码、密钥等
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#checking-memory-for-sensitive-data-mstg-storage-10

Files:
e6/a.java, line(s) 247
h0/q.java, line(s) 94

中危 此应用可能包含硬编码机密信息

从应用程序中识别出以下机密确保这些不是机密或私人信息
"key_dont_show_main_activity" : "key_dont_show_main_activity"
"key_enable_accessibility_service_by_root" : "key_enable_accessibility_service_by_root"
"key_print_java_stack_trace" : "key_print_java_stack_trace"
"key_foreground_service" : "key_foreground_service"
"key_stable_mode" : "key_stable_mode"
"library_roundedimageview_authorWebsite" : "https://github.com/vinc3m1"
"tray__authority" : "legacyTrayAuthority"
"key_use_volume_control_running" : "key_use_volume_control_running"
c5385f1454322b2bf60ff9ea87a863fa
bd576375c6d3e043ad851b4f97628185
4e58948ac5fd82f9e3c330825c609cec
7a9076d6d94e62c13d641aa71f19ae8e
5ae9573c2ca4033f1e56f860a322a21e
bf8d0efd614a29a7d6226a702ed487fd
ac5fd82f9e3c330825c609cec
3015bad3e9c15185579316d78ec15abf
2a85805aeafee834a713627759dc324d
eeaebc3522097e33e089b509da98e898
ec6702b12797ddcb8c715fb85028eef2
904457d0ec9762027ffcb42f669a1d53
26d3cd86cf1a863343bb5b16920a59a2
1e015d177062c6f5ccbc81db6a04c9b7
61680806d85ffce775d32159ef368edf
2893767dcbca7980a31f87ad7f785fb3
15758fde5753ff46cbd780582f057dc5
a67f4aa372b5e45170790ed96481d439
0de7da6cd35bbfb99ca3ddc470ccb55e
0a4fd5d5accf385b8d5f382d7abcfea7
15a24de203d02ad8e30da74b59d7d422
6704a5f0e824369e2952c6417db87d66

信息 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它

此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04b-Mobile-App-Security-Testing.md#clipboard

Files:
com/stardust/autojs/core/console/d.java, line(s) 4,40,41
t2/d.java, line(s) 4,31

信息 应用程序记录日志信息,不得记录敏感信息

应用程序记录日志信息,不得记录敏感信息
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#logs

Files:
c1/a.java, line(s) 41
com/afollestad/materialdialogs/MaterialDialog.java, line(s) 1696
com/makeramen/roundedimageview/RoundedImageView.java, line(s) 218,238
com/stardust/autojs/AutoJs.java, line(s) 212
com/stardust/autojs/ScriptService.java, line(s) 271,292,260,286,262,268,290,297
com/stardust/autojs/core/activity/ActivityInfoProvider.java, line(s) 110
com/stardust/autojs/core/console/log4j/LogCatAppender.java, line(s) 71,74,53,56,62,65,82,84
com/stardust/autojs/core/timing/TaskSchedulerImpl.java, line(s) 295
com/stardust/autojs/core/ui/inflater/DynamicLayoutInflater.java, line(s) 123
com/stardust/autojs/core/util/CrashHandler.java, line(s) 101,120
com/stardust/autojs/core/web/SafeWebkitCookieManagerProxy.java, line(s) 114,170
com/stardust/autojs/execution/RunnableScriptExecution.java, line(s) 93
com/stardust/autojs/inrt/CrashReportActivity.java, line(s) 84
com/stardust/autojs/shell/RootAutomator2Server.java, line(s) 56
com/stardust/autojs/workground/WrapContentLinearLayoutManager.java, line(s) 26
com/stardust/automator/UiObject.java, line(s) 416
com/stardust/view/accessibility/AccessibilityNotificationObserver.java, line(s) 94,147
com/stardust/view/accessibility/OnKeyListener.java, line(s) 40
d0/a.java, line(s) 296
d4/e.java, line(s) 1251,1245,1249,1256
d7/a.java, line(s) 63,91,141,164,213
e0/d.java, line(s) 169,197
e0/e.java, line(s) 107,127,142
g0/a.java, line(s) 96
h0/a0.java, line(s) 47
h0/j.java, line(s) 125,475,502
h0/k.java, line(s) 134
h0/m.java, line(s) 24
h0/r.java, line(s) 147
h7/d.java, line(s) 107,122,129
h7/f.java, line(s) 20
i0/c.java, line(s) 213
i0/i.java, line(s) 150,185
i0/j.java, line(s) 47,49,58,105,113,122,141,145,161,172,162
j0/e.java, line(s) 48,80,92,102,125,81,105,126
j0/j.java, line(s) 69
j2/k.java, line(s) 126,151,115,140,117,123,142,148
k0/a.java, line(s) 49,48
l0/c.java, line(s) 16
l0/d.java, line(s) 41
l0/f.java, line(s) 97
l0/t.java, line(s) 88,89
l0/u.java, line(s) 39
l5/d.java, line(s) 43
l5/i.java, line(s) 299,304,314,323
me/zhanghai/android/materialprogressbar/HorizontalProgressDrawable.java, line(s) 113
me/zhanghai/android/materialprogressbar/MaterialProgressBar.java, line(s) 137,145
n/a.java, line(s) 168,696
n0/a.java, line(s) 78
net/grandcentrix/tray/core/TrayLog.java, line(s) 9,20
net/grandcentrix/tray/provider/TrayContract.java, line(s) 34
o0/d.java, line(s) 15
o0/j.java, line(s) 20,23
o0/k.java, line(s) 173,187,251,270,277,291,297
o0/n.java, line(s) 53,63,59,69
o0/r.java, line(s) 62,66,70,74,78,83,87,99,108,100
o0/z.java, line(s) 79,86,91
o1/b.java, line(s) 156
o5/b.java, line(s) 74,104,264,68,98,253,72,79,102,109,255,261
org/autojs/autojspro/v8/PlutoJS.java, line(s) 324,313,315,321
org/opencv/android/BaseLoaderCallback.java, line(s) 109,123
org/opencv/android/Camera2Renderer.java, line(s) 66,79,105,110,116,126,154,162,185,189,193,242,265,268,271,274,77,96,134,143,160,177,200,237,260,280
org/opencv/android/CameraBridgeViewBase.java, line(s) 88,284,285,289,262
org/opencv/android/CameraGLRendererBase.java, line(s) 171,225,236,251,261,180,330,338,343,351
org/opencv/android/CameraGLSurfaceView.java, line(s) 50,57
org/opencv/android/CameraRenderer.java, line(s) 20
org/opencv/android/FpsMeter.java, line(s) 63
org/opencv/android/JavaCamera2View.java, line(s) 103,121,243,247,259,284,292,306,311,316,386,421,426,431,108,119,237,264,273,290,297,323,353,365,381,401,406
org/opencv/android/StaticHelper.java, line(s) 23,39
q2/b.java, line(s) 50
rikka/shizuku/ShizukuRemoteProcess.java, line(s) 46
s0/a.java, line(s) 137,149,154,159
s0/d.java, line(s) 17,18
s0/j.java, line(s) 42,43
u0/e.java, line(s) 38,68,87,69,88
u0/n.java, line(s) 72,73
u0/o.java, line(s) 238,239,250
u0/r.java, line(s) 77,84,78,85
u4/a.java, line(s) 47,42
u5/g.java, line(s) 10,15
u6/g.java, line(s) 138
v/h.java, line(s) 269,275,278
x0/h.java, line(s) 27,396
y0/d$b.java, line(s) 43,90,91
y0/i.java, line(s) 53,97,98
y2/a.java, line(s) 25

信息 此应用侦听剪贴板更改。一些恶意软件也会监听剪贴板更改

此应用侦听剪贴板更改。一些恶意软件也会监听剪贴板更改
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04b-Mobile-App-Security-Testing.md#clipboard

Files:
com/stardust/autojs/runtime/api/Events.java, line(s) 32,4
y1/a.java, line(s) 6,3

安全 此应用程序没有隐私跟踪程序

此应用程序不包括任何用户或设备跟踪器。在静态分析期间没有找到任何跟踪器。

安全评分: ( 狐狸跨区排位工具 1.0.5)