安全分析报告: Video Downloader v74.0

安全分数


安全分数 57/100

风险评级


等级

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

严重性分布 (%)


隐私风险

3

用户/设备跟踪器


调研结果

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

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

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

中危 Activity (com.fane.videodownloader.FilesActivity) 未被保护。

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

中危 Activity (com.fane.videodownloader.WebDownloadActivity) 未被保护。

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

中危 Service (com.ms.MyService) 未被保护。

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

中危 Broadcast Receiver (com.google.firebase.iid.FirebaseInstanceIdReceiver) 受权限保护, 但是应该检查权限的保护级别。

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

中危 Content Provider (com.yandex.metrica.PreloadInfoContentProvider) 未被保护。

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

中危 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被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。

中危 应用程序使用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:
com/yandex/metrica/impl/ob/A8.java, line(s) 6,20
com/yandex/metrica/impl/ob/B8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0144b.java, line(s) 7,25
com/yandex/metrica/impl/ob/C0274g8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0298h8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0322i8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0345j8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0369k8.java, line(s) 3,9
com/yandex/metrica/impl/ob/C0393l8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0417m8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0441n8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0465o8.java, line(s) 3,9
com/yandex/metrica/impl/ob/C0489p8.java, line(s) 3,9
com/yandex/metrica/impl/ob/C0513q8.java, line(s) 4,10
com/yandex/metrica/impl/ob/C0536r8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0560s8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0584t8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0608u8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0632v8.java, line(s) 3,9
com/yandex/metrica/impl/ob/C0656w8.java, line(s) 3,9
com/yandex/metrica/impl/ob/C0680x8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C0704y8.java, line(s) 6,22
com/yandex/metrica/impl/ob/C0728z8.java, line(s) 3,8
com/yandex/metrica/impl/ob/C8.java, line(s) 3,8
com/yandex/metrica/impl/ob/D8.java, line(s) 3,8
com/yandex/metrica/impl/ob/E7.java, line(s) 5,50
com/yandex/metrica/impl/ob/E8.java, line(s) 3,8
com/yandex/metrica/impl/ob/F7.java, line(s) 6,60
com/yandex/metrica/impl/ob/F8.java, line(s) 3,8
com/yandex/metrica/impl/ob/G7.java, line(s) 7,261
com/yandex/metrica/impl/ob/G8.java, line(s) 3,10
com/yandex/metrica/impl/ob/H8.java, line(s) 3,9
com/yandex/metrica/impl/ob/I8.java, line(s) 3,8
com/yandex/metrica/impl/ob/K8.java, line(s) 3,10
com/yandex/metrica/impl/ob/L8.java, line(s) 3,8
com/yandex/metrica/impl/ob/M8.java, line(s) 3,11
com/yandex/metrica/impl/ob/N8.java, line(s) 3,9
com/yandex/metrica/impl/ob/O8.java, line(s) 3,9
com/yandex/metrica/impl/ob/P8.java, line(s) 3,9
com/yandex/metrica/impl/ob/Q7.java, line(s) 4,27
com/yandex/metrica/impl/ob/Q8.java, line(s) 3,9
com/yandex/metrica/impl/ob/R8.java, line(s) 3,10
d1/a.java, line(s) 4,5,6,7,43
k4/b3.java, line(s) 6,7,8,9,160
k4/g7.java, line(s) 4,50
k4/i.java, line(s) 6,7,189
k4/j.java, line(s) 4,5,42
k4/t6.java, line(s) 21,22,1702
l2/c0.java, line(s) 4,5,83
l2/q.java, line(s) 3,28
l2/w.java, line(s) 5,6,110

中危 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:
com/yandex/metrica/impl/ob/H.java, line(s) 54
l5/b.java, line(s) 70
o5/t.java, line(s) 92
x3/a.java, line(s) 20

中危 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:
com/yandex/metrica/impl/ob/Cl.java, line(s) 62
com/yandex/metrica/impl/ob/Gl.java, line(s) 418
k4/a7.java, line(s) 286
w2/r.java, line(s) 35

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

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

Files:
com/yandex/metrica/impl/ob/C0318i4.java, line(s) 85
com/yandex/metrica/impl/ob/C0712yg.java, line(s) 502
com/yandex/metrica/impl/ob/D4.java, line(s) 117
com/yandex/metrica/impl/ob/yn.java, line(s) 18

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

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

Files:
com/ms/MyService.java, line(s) 34
k4/a7.java, line(s) 35
r5/p.java, line(s) 10
v6/a.java, line(s) 3
v6/b.java, line(s) 3
w2/r.java, line(s) 9
w6/a.java, line(s) 3

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

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

Files:
com/fane/videodownloader/FileListActivity.java, line(s) 138
y1/e.java, line(s) 34

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

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


Files:
l5/c.java, line(s) 49

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

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

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

从应用程序中识别出以下机密确保这些不是机密或私人信息
AdMob广告平台的=> "com.google.android.gms.ads.APPLICATION_ID" : "@string/ADMOB_APPLICATION_ID"
"google_api_key" : "AIzaSyDpnYEFKIFgcPwMP3QcydpPCrNg9THqz9w"
"google_crash_reporting_api_key" : "AIzaSyDpnYEFKIFgcPwMP3QcydpPCrNg9THqz9w"
4e610cd2-753f-4bfc-9b05-772ce8905c5e
67bb016b-be40-4c08-a190-96a3f3b503d3
e44a8b69c7d76049d312caec6fb8a01b60982d8f
e4250327-8d3c-4d35-b9e8-3c1720a64b91
6c5f504e-8928-47b5-bfb5-73af8d8bf4b4
B3EEABB8EE11C2BE770B684D95219ECB
20799a27-fa80-4b36-b2db-0f8141f24180
49f946663a8deb7054212b8adda248c6
01528cc0-dd34-494d-9218-24af1317e1ee
7d962ba4-a392-449a-a02d-6c5be5613928
c103703e120ae8cc73c9248622f3cd1e
296112e4-6263-4554-9032-3a3d5bcc6848
0e5e9c33-f8c3-4568-86c5-2e4f57523f72

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

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

Files:
a3/l.java, line(s) 31,33,39,45,58,60,66,72,85,87,93,136,106,108,114,120
b4/b.java, line(s) 71,92
b7/p0.java, line(s) 113,119,114,120
c0/r.java, line(s) 33
c1/c.java, line(s) 23,27
c2/b.java, line(s) 62,63,99,100
c2/d.java, line(s) 158,159
com/fane/videodownloader/FileListActivity.java, line(s) 107,133
com/fane/videodownloader/FilesActivity.java, line(s) 134,138
com/fane/videodownloader/SplashActivity.java, line(s) 45
com/lama/AppOpenManager.java, line(s) 52,62,138,151,169,189,258,325,92
com/lama/RemoteConfig.java, line(s) 90,107,145,152
com/lama/d.java, line(s) 27
com/lama/f.java, line(s) 70,76,78
com/lama/g.java, line(s) 25,35,91,99,123,129,156,181,191,65,111
com/lama/h.java, line(s) 42
com/lama/i.java, line(s) 27,41,74
com/lama/j.java, line(s) 70,185,75,200
com/lama/k.java, line(s) 23,38
com/ms/MyService.java, line(s) 396,400,436,440,541,382
com/yandex/metrica/gpllibrary/a.java, line(s) 59,67,74
com/yandex/metrica/impl/ob/C0292h2.java, line(s) 36,32,80,84
com/yandex/metrica/impl/ob/Cf.java, line(s) 83
com/yandex/metrica/impl/ob/If.java, line(s) 109
com/yandex/metrica/impl/ob/Jf.java, line(s) 737
com/yandex/metrica/impl/ob/R1.java, line(s) 121
com/yandex/metrica/impl/ob/T2.java, line(s) 182
d1/b.java, line(s) 72,249
d3/e.java, line(s) 49,65,73,127
d4/g.java, line(s) 38
e0/a.java, line(s) 57
f/d.java, line(s) 98
f/i.java, line(s) 76,128,90,100,123,141
f1/a.java, line(s) 39
f2/k.java, line(s) 45,56,76,91,96,101,106,111
g/a.java, line(s) 55
g0/b.java, line(s) 42
g0/b0.java, line(s) 30
g0/e0.java, line(s) 249,268,80,92,99,108,47,240
g0/m.java, line(s) 31,44,91,156
g0/w.java, line(s) 940,894,939,429
g1/b.java, line(s) 288,300
g1/f.java, line(s) 893
h7/c.java, line(s) 491
i0/d.java, line(s) 89,102,65
i2/a.java, line(s) 10,17,9,16
j/b.java, line(s) 151,196,210,218,405
j0/f.java, line(s) 59,68
j2/a.java, line(s) 62,58
j5/e.java, line(s) 283,488
k0/b.java, line(s) 41
k1/h.java, line(s) 21,23,32,34,43,45,54,56
k2/d.java, line(s) 99,98
k4/h3.java, line(s) 203
k4/h7.java, line(s) 72
k4/t6.java, line(s) 451,468,450,763,2279,5690,5962
l/b0.java, line(s) 138
l/c0.java, line(s) 56,71,95,117,344
l/e.java, line(s) 156
l/f.java, line(s) 107
l/f0.java, line(s) 104,274,404,203,367,382,443,457
l/g0.java, line(s) 33
l/k0.java, line(s) 90,109,115
l/q0.java, line(s) 97,192
l/r.java, line(s) 95,178,187,310
l/t0.java, line(s) 24
l/z.java, line(s) 436,202,207,214,313,419
l1/a.java, line(s) 33,39,45
l2/g.java, line(s) 27
l2/w.java, line(s) 373,372
l5/b.java, line(s) 63,74
m4/a.java, line(s) 112,117
m5/c.java, line(s) 270,273,86,96,255,261
n4/a.java, line(s) 99,198,269,277,114,122,215
o5/e.java, line(s) 864,1093,1096,82,93,114,146,186,200,208,216,226,236,255,275,540,859
o5/g.java, line(s) 110,109,122,71,99,103,105
o5/g0.java, line(s) 35,45,34,44
o5/h0.java, line(s) 34
o5/i0.java, line(s) 43,61,104,100,144,37,37,55,55,103,119,123
o5/j.java, line(s) 66,65
o5/j0.java, line(s) 21
o5/m.java, line(s) 30,84,112,121,103,106,124,130,133,29,83,111
o5/m0.java, line(s) 190,209,218,228,237,172,69,69
o5/n.java, line(s) 41,55,40,54,27,52
o5/n0.java, line(s) 50,68,115,167,44,44,65,65,114,161,180,193,210
o5/p0.java, line(s) 26,25
o5/r0.java, line(s) 54,58,66,75,99,127,149,107,112,131,53,57,65,74,96,126,148,86
o5/t.java, line(s) 105,57,102
o5/u.java, line(s) 47,27,30,40,46,41
o5/v.java, line(s) 325,76,334,38,324,97,162,180,260,303,313,331
o5/w.java, line(s) 79,67,96
o5/z.java, line(s) 54
o7/h.java, line(s) 88,90
p3/b.java, line(s) 37,50,119,122
p3/c.java, line(s) 87,104,86,103,126
p3/f.java, line(s) 45,61,93,44,60,92,57,73,112
p3/h.java, line(s) 16,13,13
p3/o.java, line(s) 32,64,31,63,75,97,128,148,156,76,98,129,149,157,38
p3/p.java, line(s) 22
p3/r.java, line(s) 28,35,27,34
p3/u.java, line(s) 38,37
p3/v.java, line(s) 47,29,68
p7/d.java, line(s) 50
q3/c0.java, line(s) 36,39,60
q3/e.java, line(s) 67,137,144
q3/f.java, line(s) 99,36,113,183,191,218,238
q3/i.java, line(s) 37
q3/j.java, line(s) 216,218,109,141,150,213,42
q3/l.java, line(s) 34
q3/t.java, line(s) 36
q3/x.java, line(s) 100,104,39
q4/e.java, line(s) 80,404,428,133,144,166,237,320
r5/g.java, line(s) 106,112,108
s3/d.java, line(s) 270,479
s3/u.java, line(s) 280,390
s3/w.java, line(s) 46
s5/i.java, line(s) 33
s5/k.java, line(s) 48,80
t3/b.java, line(s) 174,204,270,274,280,289
t3/e.java, line(s) 76
t3/g0.java, line(s) 60
t3/n0.java, line(s) 122,138
t3/r0.java, line(s) 46
t3/s.java, line(s) 80,83,87,91,95,99,111,115,118,121,174,184
t3/v.java, line(s) 16
t3/x0.java, line(s) 40,45
t3/z0.java, line(s) 23
u/n.java, line(s) 132,160,166,192,299,309,331,339,128,159,165,191,298,308,330,338,147,169,205,288
u0/a.java, line(s) 206
u5/c.java, line(s) 17,25,35,45,51
u5/g.java, line(s) 55
u5/h.java, line(s) 78
v3/b.java, line(s) 148,939,956,975
v5/o.java, line(s) 26
w2/s2.java, line(s) 424,435
w3/a.java, line(s) 75,86
x/i.java, line(s) 24
x3/d.java, line(s) 13
x3/k.java, line(s) 32,31,25
x3/l.java, line(s) 58,70
x4/k.java, line(s) 66
y/d.java, line(s) 52,57
y/e.java, line(s) 50
y/f.java, line(s) 56
y/g.java, line(s) 43
y/h.java, line(s) 55,263
y/m.java, line(s) 85
y0/g.java, line(s) 76,83,231,327
y0/h.java, line(s) 92
y2/o.java, line(s) 91,117
z/a.java, line(s) 110,119,136,146
z/d.java, line(s) 27,59,117
z1/a.java, line(s) 29,88
z1/x.java, line(s) 22,91,67,69,73
z2/f.java, line(s) 74,73
z2/f1.java, line(s) 19,21,27,33
z2/g.java, line(s) 281,290
z2/h0.java, line(s) 174,192
z2/j.java, line(s) 94
z2/k.java, line(s) 28
z2/l.java, line(s) 42
z3/a.java, line(s) 162

安全 此应用程序使用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:
o7/c.java, line(s) 82,81,80
o7/d.java, line(s) 116,106,128,114,114
o7/g.java, line(s) 81,80,79,79
o7/h.java, line(s) 263,251,261,261

安全 此应用程序可能具有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:
com/yandex/metrica/impl/ob/X1.java, line(s) 17
z2/h0.java, line(s) 152

安全评分: ( Video Downloader 74.0)