安全分析报告: LSPatch v0.6

安全分数


安全分数 55/100

风险评级


等级

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

严重性分布 (%)


隐私风险

0

用户/设备跟踪器


调研结果

高危 0
中危 11
信息 2
安全 1
关注 0

中危 应用程序数据可以被备份

[android:allowBackup=true]
这个标志允许任何人通过adb备份你的应用程序数据。它允许已经启用了USB调试的用户从设备上复制应用程序数据。

中危 Service (org.lsposed.lspatch.manager.ModuleService) 未被保护。

[android:exported=true]
发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。

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

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

中危 Broadcast Receiver (androidx.profileinstaller.ProfileInstallReceiver) 受权限保护, 但是应该检查权限的保护级别。

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

中危 IP地址泄露

IP地址泄露


Files:
e4/v.java, line(s) 782
i4/c.java, line(s) 160,165,134,120,123
i4/f.java, line(s) 171
i4/g.java, line(s) 394
o4/a.java, line(s) 33,34,35,36,13,15,16,17,14,27,28,29,30,18,22,23,24,21,19,20
o4/b.java, line(s) 34,35,36,36,37,38,60,34,35,36,37,37,38,61,34,35,36,37,38,38,62,34,35,36,37,38,39,63,18,18,19,19,19,19,19,24,25,25,25,30,35,35,35,35,35,43,19,19,19,19,19,19,19,28,28,28,29,32,36,36,37,37,37,45,20,20,20,20,20,21,21,29,29,29,33,37,37,37,38,38,46,22,22,22,22,22,22,23,29,29,29,34,38,38,38,38,39,47,19,19,19,19,19,19,19,26,26,27,27,31,35,36,36,36,36,44,23,25,27,28,29,29,57,23,25,27,29,29,29,58,17,18,19,19,20,22,17,19,19,19,20,22,53,17,19,19,19,21,22,54,17,19,19,19,21,23,55,17,19,19,19,20,22,52,17,18,19,19,20,22,50,17,19,19,19,20,22,51
y/d1.java, line(s) 467,563

中危 应用程序使用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:
x3/b.java, line(s) 4,70

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

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


Files:
v4/r.java, line(s) 26,39

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

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

Files:
f0/f1.java, line(s) 23
w4/b.java, line(s) 74

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

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

Files:
u1/n.java, line(s) 9
u7/a.java, line(s) 3
u7/b.java, line(s) 4
v7/a.java, line(s) 3

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

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

Files:
de/robv/android/xposed/XSharedPreferences.java, line(s) 242
de/robv/android/xposed/XposedHelpers.java, line(s) 1200

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

从应用程序中识别出以下机密确保这些不是机密或私人信息
dbdb5cc8a6fd89b6f033a1095cb7d9e6
8a8c20d789b891cfb28212ec3d18ad6c

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

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

Files:
a/d.java, line(s) 189,185
a3/s.java, line(s) 17,16
b2/a.java, line(s) 190
b3/c.java, line(s) 38
b7/a.java, line(s) 2210,2281,1943,392,2893
b9/a.java, line(s) 44
c1/c.java, line(s) 3124,4968,4990,5005,3084,4932,1173
c9/a.java, line(s) 463
de/robv/android/xposed/XSharedPreferences.java, line(s) 199,133,143,358,377,435
de/robv/android/xposed/XposedBridge.java, line(s) 94,88
de/robv/android/xposed/XposedInit.java, line(s) 58,208,229,246,247,248,249,205,236
e3/d.java, line(s) 300
f0/y1.java, line(s) 481
f3/a.java, line(s) 64
f5/b.java, line(s) 36
f9/c.java, line(s) 76
g2/f.java, line(s) 562,657,693
g9/i.java, line(s) 101,107,109
g9/k.java, line(s) 20,31
h/e.java, line(s) 82,117
h/f.java, line(s) 143
i/f.java, line(s) 224,373
i/h.java, line(s) 456
i/l.java, line(s) 464
i2/b.java, line(s) 70
i2/d.java, line(s) 778
i2/f.java, line(s) 51
i2/g.java, line(s) 101,73
i2/i.java, line(s) 344,371
i2/m.java, line(s) 407,568,575,576,577,587,638,444,451,485
j/l3.java, line(s) 21
j/q1.java, line(s) 204,65,70,187
j/q2.java, line(s) 87,225,347,165,312,323,383,397
j/u.java, line(s) 58
j/u2.java, line(s) 33
j/w.java, line(s) 174
j/w1.java, line(s) 19
j4/b.java, line(s) 200
j8/c.java, line(s) 197,178,109,132
k5/c.java, line(s) 36,40
m2/c.java, line(s) 53
m2/e.java, line(s) 46
m8/a.java, line(s) 38
n3/n.java, line(s) 132,233
n3/p.java, line(s) 631
o2/m.java, line(s) 41,65,69
org/lsposed/hiddenapibypass/i.java, line(s) 60
org/lsposed/lspatch/loader/LSPApplication.java, line(s) 65,74,190,218,221,229,71,179,183,226,245,83,85,88,105,106,116,155,161
org/lsposed/lspatch/loader/SigBypass.java, line(s) 49,53,96,102
org/lsposed/lspatch/loader/util/XLog.java, line(s) 10,34,40,28,16,22
org/lsposed/lspatch/manager/ModuleService.java, line(s) 16
org/lsposed/lspatch/metaloader/LSPAppComponentFactoryStub.java, line(s) 62,92
org/lsposed/lspatch/service/LocalApplicationService.java, line(s) 70,49
org/lsposed/lspatch/service/RemoteApplicationService.java, line(s) 54,47,58
org/lsposed/lspatch/util/ModuleLoader.java, line(s) 82,111,50
org/lsposed/lspd/impl/LSPosedBridge.java, line(s) 53,49
org/lsposed/lspd/impl/LSPosedContext.java, line(s) 93,111,133,136,76,86,102,103,104,113,128,267,262
org/lsposed/lspd/util/LspModuleClassLoader.java, line(s) 108,237
org/lsposed/lspd/util/Utils.java, line(s) 17,21,41,45,33,37,25,29
p/w1.java, line(s) 55
p/y1.java, line(s) 235
p2/f.java, line(s) 41,46
p2/h.java, line(s) 53
p2/i.java, line(s) 53,102
p5/b.java, line(s) 232
pxb/android/arsc/ArscDumper.java, line(s) 36,13,15,19,23,27
pxb/android/arsc/ArscWriter.java, line(s) 73
pxb/android/axml/DumpAdapter.java, line(s) 27,30,32,34,37,39,42,44,46,48,55,57,59,61,77,85,87,88
q8/q0.java, line(s) 44,68
r0/e.java, line(s) 22
r4/b.java, line(s) 3054,3062,867,831
r5/d.java, line(s) 96,130
r5/e.java, line(s) 777
rikka/parcelablelist/BaseParcelableListSlice.java, line(s) 54
rikka/shizuku/ShizukuProvider.java, line(s) 46,50,114,122,34
s2/f.java, line(s) 22
s3/i.java, line(s) 98
s3/l.java, line(s) 93,167
s3/o.java, line(s) 30,42
s3/t.java, line(s) 126
s8/a.java, line(s) 99
u1/c0.java, line(s) 267,298
u5/g.java, line(s) 128
w2/c.java, line(s) 81
w2/g0.java, line(s) 76
w2/h1.java, line(s) 31
w2/i1.java, line(s) 32,44,51,60
w2/m1.java, line(s) 78,95,69
w2/o.java, line(s) 31,44,91,153,192,209,233
w2/q0.java, line(s) 152,133,151
w8/f.java, line(s) 52,57
w8/h.java, line(s) 16,23,29
w8/j.java, line(s) 60,74
w8/k.java, line(s) 19
x3/e.java, line(s) 47,156
x8/f.java, line(s) 9,15,20
x8/k.java, line(s) 43,89
y/d1.java, line(s) 675,472
y3/a.java, line(s) 57
z2/b.java, line(s) 38
z8/f.java, line(s) 123
z8/i.java, line(s) 86
z8/l.java, line(s) 94

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

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

Files:
c2/f.java, line(s) 4,47
q8/a0.java, line(s) 4,27
q8/j0.java, line(s) 4,77
s8/b.java, line(s) 5,75

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

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

安全评分: ( LSPatch 0.6)