安全分析报告: PrivateLink VPN v1.1.7

安全分数


安全分数 52/100

风险评级


等级

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

严重性分布 (%)


隐私风险

6

用户/设备跟踪器


调研结果

高危 1
中危 32
信息 2
安全 2
关注 3

高危 应用程序包含隐私跟踪程序

此应用程序有多个6隐私跟踪程序。跟踪器可以跟踪设备或用户,是终端用户的隐私问题。

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

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

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

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

中危 Activity (com.privatelink.vpnshield.page.BootActivity) 未被保护。

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

中危 Activity (com.privatelink.vpnshield.page.MainActivity) 未被保护。

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

中危 Activity设置了TaskAffinity属性

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

中危 Service (com.privatelinkvpnshield.openvpnshield.core.OpenVPNService) 受权限保护, 但是应该检查权限的保护级别。

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

中危 Service (com.privatelinkvpnshield.openvpnshield.api.ExternalOpenVPNService) 未被保护。

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

中危 Activity (com.privatelinkvpnshield.openvpnshield.api.GrantPermissionsActivity) 未被保护。

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

中危 Activity (com.privatelinkvpnshield.openvpnshield.api.ConfirmDialog) 未被保护。

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

中危 Broadcast Receiver (com.privatelinkvpnshield.openvpnshield.OnBootReceiver) 未被保护。

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

中危 Service (com.privatelinkvpnshield.openvpnshield.core.keepVPNAlive) 受权限保护, 但是应该检查权限的保护级别。

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

中危 Activity设置了TaskAffinity属性

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

中危 Activity (com.privatelinkvpnshield.openvpnshield.LaunchVPN) 未被保护。

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

中危 Activity设置了TaskAffinity属性

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

中危 Activity-Alias (com.privatelinkvpnshield.openvpnshield.api.ConnectVPN) 未被保护。

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

中危 Activity-Alias (com.privatelinkvpnshield.openvpnshield.api.DisconnectVPN) 未被保护。

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

中危 Activity-Alias (com.privatelinkvpnshield.openvpnshield.api.PauseVPN) 未被保护。

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

中危 Activity-Alias (com.privatelinkvpnshield.openvpnshield.api.ResumeVPN) 未被保护。

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

中危 Activity (com.facebook.CustomTabActivity) 未被保护。

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

中危 Service (androidx.work.impl.background.systemjob.SystemJobService) 受权限保护, 但是应该检查权限的保护级别。

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

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

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

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

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

中危 高优先级的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:
a6/f.java, line(s) 4,30
a6/i.java, line(s) 4,23
a6/o.java, line(s) 4,5,72
d2/b.java, line(s) 4,31
d9/a.java, line(s) 10,831
i1/g.java, line(s) 3,33
o2/i.java, line(s) 5,25
p4/p.java, line(s) 4,42
s7/d3.java, line(s) 6,7,8,9,159
s7/i.java, line(s) 6,7,64
s7/i3.java, line(s) 4,65
s7/w5.java, line(s) 20,21,2169
y5/a.java, line(s) 8,75
z5/c.java, line(s) 8,70
z5/h.java, line(s) 5,28
z5/i.java, line(s) 5,114

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

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


Files:
i8/l.java, line(s) 629
y1/t.java, line(s) 62

中危 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:
m6/o.java, line(s) 49
q4/e.java, line(s) 169
q7/b0.java, line(s) 337
s7/b6.java, line(s) 223
y4/l.java, line(s) 31

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

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

Files:
e5/k0.java, line(s) 361,362,369,370
f0/j.java, line(s) 79
n2/o.java, line(s) 693
r3/f.java, line(s) 64,65,64

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

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

Files:
ba/b.java, line(s) 61
i7/c.java, line(s) 120
j9/g.java, line(s) 191
l7/f.java, line(s) 23
o3/g.java, line(s) 73,75,78,81
wb/o.java, line(s) 162
y9/e.java, line(s) 441

中危 IP地址泄露

IP地址泄露


Files:
com/privatelinkvpnshield/openvpnshield/core/OpenVPNService.java, line(s) 225,228
v7/l.java, line(s) 99
wb/a0.java, line(s) 1294,942
wb/b0.java, line(s) 47

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

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

Files:
d9/g.java, line(s) 7
ga/b.java, line(s) 4
ga/c.java, line(s) 14
ha/b.java, line(s) 13
ha/h.java, line(s) 14
ha/m.java, line(s) 16
i/l0.java, line(s) 31
m6/o.java, line(s) 8
n5/b.java, line(s) 14
o3/g.java, line(s) 13
s7/b6.java, line(s) 32
sc/a.java, line(s) 3
sc/b.java, line(s) 3
tc/a.java, line(s) 3

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

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

Files:
u3/j.java, line(s) 43
w3/f.java, line(s) 40
w3/g0.java, line(s) 97
w3/y.java, line(s) 91
xb/a.java, line(s) 39

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

从应用程序中识别出以下机密确保这些不是机密或私人信息
AdMob广告平台的=> "com.google.android.gms.ads.APPLICATION_ID" : "@string/m1162AdmobId"
"auth_pwquery" : "Password"
"com.google.firebase.crashlytics.mapping_file_id" : "ab20306c05f64ca7998c126f8aee2640"
"google_api_key" : "AIzaSyBbEA7YBwz1go0NGdLZb8W5uknX65d9gBI"
"google_crash_reporting_api_key" : "AIzaSyBbEA7YBwz1go0NGdLZb8W5uknX65d9gBI"
"m1162FacebookToken" : "e729103fe366f9121584ec3fdfaa4dfb"
"password" : "Password"
"settings_auth" : "Authentication/Encryption"
"state_auth" : "Authenticating"
df6b721c8b4d3b6eb44c861d4415007e5a35fc95
9b8f518b086098de3d77736f9458a3d2f6f95a37
B3EEABB8EE11C2BE770B684D95219ECB
c103703e120ae8cc73c9248622f3cd1e
2438bce1ddb7bd026d5ff89f598b3b5e5bb824b3
a4b7452e2ed8f5f191058ca7bbfd26b0d3214bfc
c56fb7d591ba6704df047fd98f535372fea00211
cc2751449a350f668590264ed76692694a80308a
8a3c4b262d721acd49a4bf97d5213199c86fa2b9
470fa2b4ae81cd56ecbcda9735803434cec591fa
49f946663a8deb7054212b8adda248c6

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

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

Files:
a0/b.java, line(s) 78,122,131
a0/e.java, line(s) 51
a0/f.java, line(s) 38
a0/i.java, line(s) 342,402,405
a0/m.java, line(s) 803,1286,1722,1728,1729,1730,1737,1777,1783,1784,1785,1792,1853,925,939,1054,1376,1667
a3/a.java, line(s) 131,110
a4/g.java, line(s) 53,52
a4/i.java, line(s) 101,100
a4/m.java, line(s) 86,94,106,114,141,87,95,109,117,142
a5/a.java, line(s) 133,198
aa/c.java, line(s) 173,378
ac/c.java, line(s) 29,47
ac/d.java, line(s) 30,45
ac/f.java, line(s) 94,104
b5/b.java, line(s) 43
b7/e.java, line(s) 69,131,138
b7/f.java, line(s) 99,37,109,152,160,165,169,182,190
b7/h.java, line(s) 35
b7/i.java, line(s) 404,406,280,293,334,401,66,84
b7/k.java, line(s) 37
b7/n.java, line(s) 50
b7/r.java, line(s) 74,78,52
b7/u.java, line(s) 48,51,65
ba/b.java, line(s) 54,65
c/d.java, line(s) 171,184
c0/e.java, line(s) 33,34
c3/l.java, line(s) 123,237
c4/c.java, line(s) 78,79
ca/c.java, line(s) 245,250,83,93,236,238
com/privatelink/vpnshield/page/BootActivity.java, line(s) 160,173
com/privatelink/vpnshield/page/ProfferActivity.java, line(s) 74
com/privatelinkvpnshield/openvpnshield/api/ConfirmDialog.java, line(s) 112
com/sdk/pro/common/AdController.java, line(s) 169,195,207,223,233,493,138,152,370
d/j.java, line(s) 208,217,321,457,466
d1/p.java, line(s) 90,108
d2/c.java, line(s) 28
d2/d.java, line(s) 173
d4/b.java, line(s) 58,57,67,97,98
d4/c.java, line(s) 42,43
d4/h0.java, line(s) 96,119,150,95,118,149
d4/i.java, line(s) 21,27,22,28
d4/k.java, line(s) 23,30,144,154,169,182,205,235,243,248,257,260,265,272,22,29,143,153,166,181,204,234,238,247,256,259,264,271
d4/o.java, line(s) 102,477,756,101,432,476,506,567,657,686,706,722,733,755,776,788,464,519,593
d4/q.java, line(s) 23,27,24,28
d4/u.java, line(s) 93,99,105,111,117,124,130,154,166,94,100,106,112,118,125,131,167,155
d4/z.java, line(s) 49,58,72,50,59,73,74,75,78
d7/e.java, line(s) 275,483
d7/q.java, line(s) 279,334
d9/a.java, line(s) 216,391,471,476,518,526,532,539,735,751,949,950,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,740,801,100,101,130,131,390,433,517,524,531,538,560,666,734,750,793,561,667,869,925
d9/d.java, line(s) 32
d9/h.java, line(s) 67
e0/f.java, line(s) 49
e5/d0.java, line(s) 32
e5/e0.java, line(s) 373,382,390
e5/o0.java, line(s) 94
e7/d0.java, line(s) 112,120
e7/e.java, line(s) 312,161,167,172,181,342
e7/e0.java, line(s) 66
e7/g0.java, line(s) 39,54
e7/h.java, line(s) 75
e7/j0.java, line(s) 39,46
e7/q.java, line(s) 84,87,90,93,96,99,110,113,116,119,165,175
e7/t.java, line(s) 20
f/h.java, line(s) 96,103
f/j.java, line(s) 184
f0/g.java, line(s) 75
f4/a.java, line(s) 53,119,136,142,147,61,120,137,143,148
f4/g.java, line(s) 50
f4/j.java, line(s) 46,47
f9/a.java, line(s) 32,31,36
f9/c.java, line(s) 134,141,207,220,361,368,375
fa/c.java, line(s) 223,222,188,195,214
g1/b.java, line(s) 125
g1/c.java, line(s) 192,200,246,258,270,282,294,306,318,330,337,348,360,343
g1/g.java, line(s) 190,280,287,349,441,461,475,482,675,885,937,957,971,1005,1022,1082,1129,1132,1171,1202,1209,1224,1237,1248,1279,1297,1305,1310,1356,1380,1398,1404,1466,1471,1477,1500,1532,1538,1544,1627,44,211,323,335,878,1447,1490,1493,1564,1573
g9/b.java, line(s) 49,50
g9/c.java, line(s) 18,10,24,30
h0/q.java, line(s) 52,74,82
h2/o.java, line(s) 276
h4/m.java, line(s) 49,50
h4/n.java, line(s) 267,308,281,266,277,280,307,314,329,278,316,318,330
h4/s.java, line(s) 162,163
h4/t.java, line(s) 112,119,113,120
h7/a.java, line(s) 71,81
h9/c.java, line(s) 70
ha/b.java, line(s) 121,79
ha/m.java, line(s) 168,165
i/c.java, line(s) 848,357,358
i/d0.java, line(s) 367,369
i/e0.java, line(s) 667,1213,1924,1926,1928,1061,1070,1080,1089,1096,1108,1117,766,846,849,1387,1399,1799
i/l.java, line(s) 417,252,261
i/l0.java, line(s) 119,402,89,560,90,561
i/q.java, line(s) 37
i/r.java, line(s) 11
i/y.java, line(s) 105
i0/f.java, line(s) 37,42
i0/g.java, line(s) 37
i0/h.java, line(s) 53
i0/i.java, line(s) 41
i0/j.java, line(s) 48,112
i1/a.java, line(s) 60,88,97,106,61,89,98,107
i1/a0.java, line(s) 164,267,163,266,672,673
i1/f.java, line(s) 314,100,101
i1/g.java, line(s) 48,49
i1/g0.java, line(s) 77,91,78,92
i1/i1.java, line(s) 41,40
i1/j.java, line(s) 44,45
i1/j1.java, line(s) 16
i1/k.java, line(s) 29,42,30,43
i1/l.java, line(s) 196,204,212,220,293,436,689,718,802,822,841,846,867,889,911,923,932,964,980,993,197,205,213,221,294,437,440,442,445,690,719,720,725,727,732,803,823,842,847,868,890,912,924,933,965,986,999
i1/l1.java, line(s) 25,48,73,26,49,74
i1/m1.java, line(s) 63,73,83,64,74,84
i1/n0.java, line(s) 25,26
i1/o.java, line(s) 23,22
i1/q.java, line(s) 93,104,106,224,250,92,101,223,249
i1/r0.java, line(s) 1131,1132,1140,1148,323,401,548,633,643,657,675,705,759,808,830,837,852,865,995,1154,1161,1266,1272,324,402,549,634,644,658,676,706,764,809,831,838,853,868,996,1155,1162,1267,1273
i1/u0.java, line(s) 31,56,63,30,38,49,55,62,107,110,39,50,108,111
i1/x0.java, line(s) 51,63,181,340,385,431,478,548,587,611,624,738,763,768,802,848,976,1005,48,62,178,328,337,384,430,462,475,545,584,610,623,662,737,762,767,799,845,864,957,973,1002,1051,329,463,663,878,958,1052
i4/e.java, line(s) 97,100,104,108,140,143,146,149,152
i7/c.java, line(s) 33
i8/l.java, line(s) 112,128,136,178,717,643,644,497
i9/b.java, line(s) 10,9
ia/o.java, line(s) 95,111,134,145,168,51
ia/s.java, line(s) 45,82,51,88,97,112
j0/d.java, line(s) 30,33,36,72,74,76,112,118
j1/c.java, line(s) 34,55,54
j4/g.java, line(s) 464,24,256,281
j7/a.java, line(s) 132,851,131,125
j9/g.java, line(s) 32,59,140,195,136
j9/h.java, line(s) 19,18
j9/i.java, line(s) 64,71,72,147
j9/l.java, line(s) 115,251,272,314,341,542,631,737,851,806,824,114,141,250,271,313,335,340,389,424,541,576,584,591,598,603,630,639,648,735,796,801,826,840,850,142,390,425,577,585,592,599,640,649,797,802,841,310,320,331,439,602,604,678,690,750,763,793,829
j9/n.java, line(s) 37,59,60,33
j9/o.java, line(s) 80,109,92,114,116,118,70,79,108,71,86
j9/p.java, line(s) 173
j9/q.java, line(s) 37,54,61,28,32,57,36,53,60
j9/s.java, line(s) 31,37,44,30,36,43
j9/t.java, line(s) 50,51,72
k/j.java, line(s) 88,147,161,169
k/k.java, line(s) 183
k4/f.java, line(s) 37,38
k8/d.java, line(s) 107,141
k9/b.java, line(s) 33,71
k9/d.java, line(s) 114,141,42,113,140,69,120
k9/j.java, line(s) 30,54,108
ka/d.java, line(s) 82
ka/e.java, line(s) 20
ka/f.java, line(s) 114
kb/n.java, line(s) 207
l/i.java, line(s) 442
l/o.java, line(s) 552
l3/c.java, line(s) 256,262
l7/b.java, line(s) 91,76
l7/d.java, line(s) 68,76,609,638,103,113,140,178,259,604,159,73,162,192,195,256,278,322,381,417,432,440,450,545
l7/f.java, line(s) 107,130
l8/a.java, line(s) 18
l9/p0.java, line(s) 1007
m/b0.java, line(s) 50,54
m/b4.java, line(s) 31
m/h1.java, line(s) 20
m/j.java, line(s) 136,280,364,375,320,324
m/j2.java, line(s) 268,63,68,251
m/j3.java, line(s) 86,263,419,176,183,293,307,385,400
m/k3.java, line(s) 33
m/l1.java, line(s) 95,104,214
m/n0.java, line(s) 59,64,69,74
m/p2.java, line(s) 22
m/t0.java, line(s) 64
m/w.java, line(s) 82
m/x3.java, line(s) 129,223
m/y.java, line(s) 202
m0/p.java, line(s) 22
m5/b.java, line(s) 121
m6/i2.java, line(s) 122,319,121
n0/a.java, line(s) 320,331,336,342,344,789,363,788
n2/g.java, line(s) 48,57,62,67,74,85,95,106,113,145,150,159,165,171,181,188
n2/o.java, line(s) 973,975,1147,181,848,983,985,1041,1043,1144,1155,1051,1053,1158
n5/c0.java, line(s) 53
n5/u.java, line(s) 880,862,879
n5/z.java, line(s) 46
n7/f.java, line(s) 42
n8/e.java, line(s) 1517
n8/g.java, line(s) 126
n9/a.java, line(s) 126,131
n9/b.java, line(s) 143,225,454,230,93,142,224,453,94,411,425
nb/d.java, line(s) 27,30
o1/c.java, line(s) 97,102,109,113,128,153
o2/m.java, line(s) 110,265,257,262,109,245,250,264,246,251
o3/c.java, line(s) 18,27
o9/c.java, line(s) 80,79
p4/c.java, line(s) 79,84,90
p4/k0.java, line(s) 299,302,305
p4/p.java, line(s) 406
p4/r.java, line(s) 219,222
p4/x.java, line(s) 102
p6/c0.java, line(s) 61,44,60,45
p6/f0.java, line(s) 17,19,25,31
p9/b.java, line(s) 48,35,60,111,132,47,71,120,72,121
q0/a1.java, line(s) 20,31
q0/c.java, line(s) 84
q0/m0.java, line(s) 79
q0/m1.java, line(s) 95
q0/q.java, line(s) 31,44,91,156,202,223,247
q0/t1.java, line(s) 31
q0/u1.java, line(s) 32,44,51,60
q0/x0.java, line(s) 228,205,227
q0/y1.java, line(s) 80,99,71
q4/j.java, line(s) 63,88,98,106,121,150
q4/k.java, line(s) 136
q4/y.java, line(s) 129,149
q7/b0.java, line(s) 170,177,201,169,176
q7/d.java, line(s) 159,171,178,187,206,415,345,533,547,346,534,548,275
q7/f.java, line(s) 40,44,57
q7/l.java, line(s) 11
qc/k.java, line(s) 1625,1765,1741
r3/f.java, line(s) 500,536
r3/m.java, line(s) 42
r3/n.java, line(s) 25
r3/r.java, line(s) 45,54,163,187
s3/d.java, line(s) 83,93,124,130,84,125,96,131
s3/e.java, line(s) 71
s7/f6.java, line(s) 39
s7/h3.java, line(s) 163
s7/w5.java, line(s) 365,382,364,726,2784,5964,6247
t3/d.java, line(s) 217,245,214,244
t3/e.java, line(s) 145,162,167,144,161,166,186
t4/j.java, line(s) 65,75,119
t4/k.java, line(s) 89,91,106
tb/f.java, line(s) 43
u0/u.java, line(s) 16,15
u2/h.java, line(s) 967,977,968,978
u4/g.java, line(s) 184,429
u7/a.java, line(s) 112,117
v/d.java, line(s) 390
v0/d.java, line(s) 34
v1/a.java, line(s) 264
v1/e.java, line(s) 694,704
v3/c.java, line(s) 65,106,141,64,105,140
v6/e.java, line(s) 292,1522,1527,1529,157,291,1521
vc/f0.java, line(s) 558,572,582,606,618
w3/j0.java, line(s) 44,137,43,127,136,128
w3/m.java, line(s) 523,128,171,522,292
w3/n.java, line(s) 159,160
w3/q.java, line(s) 12,62
w4/b.java, line(s) 53
w8/e.java, line(s) 20
w8/g.java, line(s) 230,248,74,78,84,87,154
wb/a0.java, line(s) 314,1569,1575,1581,1587,1593,1553,786,796
wb/f0.java, line(s) 53,60,63,57,50
wb/y.java, line(s) 145,131,133,225,237,259,287,299
x/e.java, line(s) 846,886,943,978,1013
x0/e.java, line(s) 318
x1/e1.java, line(s) 188
x1/o0.java, line(s) 817
x1/y.java, line(s) 154,122
x1/z0.java, line(s) 42
x3/g.java, line(s) 73,164,81,172
x3/h.java, line(s) 47,62,138,176,46,61,95,98,104,137,148,151,165,175,178,68,96,105,149,166
x7/b.java, line(s) 35
y1/i.java, line(s) 81,180
y1/n.java, line(s) 27,39
y1/o.java, line(s) 62
y1/t.java, line(s) 135,138,143
y4/f.java, line(s) 28
y4/h.java, line(s) 66
y4/k.java, line(s) 66
y4/l.java, line(s) 65
y5/a.java, line(s) 276,311,275
y9/e.java, line(s) 492,542,498,544,550,497,574
z5/c.java, line(s) 97,96
z5/i.java, line(s) 495,496
zb/d.java, line(s) 41
zb/f.java, line(s) 24

信息 应用程序可以写入应用程序目录。敏感信息应加密

应用程序可以写入应用程序目录。敏感信息应加密


Files:
c5/b.java, line(s) 83,83
p4/b.java, line(s) 12,12
p4/f0.java, line(s) 12,12
p4/k0.java, line(s) 136,136
w4/h.java, line(s) 234,234

安全 此应用程序可能具有Root检测功能

此应用程序可能具有Root检测功能
https://github.com/MobSF/owasp-mstg/blob/master/Document/0x05j-Testing-Resiliency-Against-Reverse-Engineering.md#testing-root-detection-mstg-resilience-1

Files:
d1/p.java, line(s) 60
j9/g.java, line(s) 178,178,181

安全 此应用程序使用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:
a3/d.java, line(s) 16,16
pb/y.java, line(s) 27,17

关注 应用程序可能与位于OFAC制裁国家 (中国) 的服务器 (admob-gmats.uc.r.appspot.com) 通信。

{'ip': '185.151.204.70', 'country_short': 'HK', 'country_long': '中国', 'region': '香港', 'city': '香港', 'latitude': '22.285521', 'longitude': '114.157692'}

关注 应用程序可能与位于OFAC制裁国家 (中国) 的服务器 (firebase-settings.crashlytics.com) 通信。

{'ip': '185.151.204.70', 'country_short': 'CN', 'country_long': '中国', 'region': '北京', 'city': '北京', 'latitude': '39.907501', 'longitude': '116.397102'}

关注 应用程序可能与位于OFAC制裁国家 (中国) 的服务器 (app.adjust.cn) 通信。

{'ip': '47.104.30.117', 'country_short': 'CN', 'country_long': '中国', 'region': '山东', 'city': '青岛', 'latitude': '36.098610', 'longitude': '120.371941'}

安全评分: ( PrivateLink VPN 1.1.7)