安全分析报告: Express v4.12025.4.214244

安全分数


安全分数 49/100

风险评级


等级

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

严重性分布 (%)


隐私风险

0

用户/设备跟踪器


调研结果

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

高危 Activity (com.ZKzwH.wUlTpv.MainActivity) 容易受到StrandHogg 2.0的攻击

已发现活动存在 StrandHogg 2.0 栈劫持漏洞的风险。漏洞利用时,其他应用程序可以将恶意活动放置在易受攻击的应用程序的活动栈顶部,从而使应用程序成为网络钓鱼攻击的易受攻击目标。可以通过将启动模式属性设置为“singleInstance”并设置空 taskAffinity (taskAffinity="") 来修复此漏洞。您还可以将应用的目标 SDK 版本 (28) 更新到 29 或更高版本以在平台级别修复此问题。

高危 Activity (com.ZKzwH.wUlTpv.MainAliasActivity) 容易受到StrandHogg 2.0的攻击

已发现活动存在 StrandHogg 2.0 栈劫持漏洞的风险。漏洞利用时,其他应用程序可以将恶意活动放置在易受攻击的应用程序的活动栈顶部,从而使应用程序成为网络钓鱼攻击的易受攻击目标。可以通过将启动模式属性设置为“singleInstance”并设置空 taskAffinity (taskAffinity="") 来修复此漏洞。您还可以将应用的目标 SDK 版本 (28) 更新到 29 或更高版本以在平台级别修复此问题。

高危 应用程序使用带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/example/fcmexpr/Z2CF8EmQfoD5kUnE.java, line(s) 18

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

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

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

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

中危 Activity-Alias (com.ZKzwH.wUlTpv.MainAliasActivity) 未被保护。

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

中危 Broadcast Receiver (com.ZKzwH.wUlTpv.InstallReceiver) 未被保护。

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

中危 Service (com.example.fcmexpr.keepalive.KeepAliveJobService) 受权限保护, 但是应该检查权限的保护级别。

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

中危 Service (com.example.fcmexpr.keepalive.FirebaseMessagingKeepAliveService) 未被保护。

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

中危 Broadcast Receiver (com.example.fcmexpr.keepalive.KeepAliveReceiver) 未被保护。

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

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

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

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

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

中危 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:
R24bu8kbgiGYi4RH/Of5bMdpBTKMFyzGM.java, line(s) 111
com/example/fcmexpr/Z2CF8EmQfoD5kUnE.java, line(s) 19
qtxiUHHbVNLGX5Wd/RJp4M3zvFtnuMZOR.java, line(s) 51

中危 应用程序使用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:
l3d0mAc2dmPpt5wR/DAsBrME1bmNQrNis.java, line(s) 5,6,80,122,142,355,566,638,741,772
l3d0mAc2dmPpt5wR/PaNr3RJqjR8WUkxn.java, line(s) 4,5,135

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

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


Files:
qtxiUHHbVNLGX5Wd/exxEIfkSA3s8tPyh.java, line(s) 41

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

从应用程序中识别出以下机密确保这些不是机密或私人信息
"google_api_key" : "AIzaSyBBjczkQvwZQjBb3otPihdIyR-3rlA5C0w"
"google_app_id" : "1:469967176169:android:d67d8d7454d4439dbc8b78"
"google_crash_reporting_api_key" : "AIzaSyBBjczkQvwZQjBb3otPihdIyR-3rlA5C0w"
44DhRjPJrQeNDqomajQjBvdD39UiQvoeh67ABYSWMZWEWKCB3Tzhvtw2jB9KC3UARF1gsBuhvEoNEd2qSDz76BYEPYNuPKD

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

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

Files:
BPjR57f2M7g4pOQI/DAsBrME1bmNQrNis.java, line(s) 49
BPjR57f2M7g4pOQI/QfWsemL4XEnvxDkS.java, line(s) 42
BPjR57f2M7g4pOQI/cX4yzBalPMhR1PkB.java, line(s) 49
BPjR57f2M7g4pOQI/crP4tIcJxeiduPvE.java, line(s) 239,348
BPjR57f2M7g4pOQI/ijLF13irjUx0p2YM.java, line(s) 249,458
CygoTxVu74yQQIto/Of5bMdpBTKMFyzGM.java, line(s) 31,52,66
CygoTxVu74yQQIto/RJp4M3zvFtnuMZOR.java, line(s) 53,66,134,137
CygoTxVu74yQQIto/ZFsKRySXD8GS5j0b.java, line(s) 16,13,13
CygoTxVu74yQQIto/cX4yzBalPMhR1PkB.java, line(s) 28,35,27,34
CygoTxVu74yQQIto/exxEIfkSA3s8tPyh.java, line(s) 80,93,114,191,206,286,79,92,113,190,205,285,110,130,142,213,234,326
CygoTxVu74yQQIto/iQqEDeSeSf5AW19T.java, line(s) 23
CygoTxVu74yQQIto/ijLF13irjUx0p2YM.java, line(s) 35,116,200,34,86,115,129,199,229,252,281,87,130,230,253,282,42,159
CygoTxVu74yQQIto/s0f7Y3XWXiicyIOX.java, line(s) 45,44
DAsBrME1bmNQrNis/fC2tHWhacACTT0JQ.java, line(s) 34,33
ExJWxr9mmPOcG2vI/Z2CF8EmQfoD5kUnE.java, line(s) 17,36,50,9,16,35,42,43,49,10
F2iJw1GgHEueX5SS/CM4ZsDCexUojhcVS.java, line(s) 45,50
F2iJw1GgHEueX5SS/PaNr3RJqjR8WUkxn.java, line(s) 36
F2iJw1GgHEueX5SS/QfWsemL4XEnvxDkS.java, line(s) 26
F2iJw1GgHEueX5SS/RvVamdWZeQQ5X3s3.java, line(s) 101
F2iJw1GgHEueX5SS/Z2CF8EmQfoD5kUnE.java, line(s) 18
F2iJw1GgHEueX5SS/ZWM1ojiqcm6tQHRk.java, line(s) 40
F2iJw1GgHEueX5SS/aHsTDwxhs4FU3QnM.java, line(s) 29
F2iJw1GgHEueX5SS/exxEIfkSA3s8tPyh.java, line(s) 259,277,391,397,401,407
F2iJw1GgHEueX5SS/iQqEDeSeSf5AW19T.java, line(s) 67,70,99,102,105,36,41
F2iJw1GgHEueX5SS/kTx6ee0Vu12J5B5J.java, line(s) 54
F2iJw1GgHEueX5SS/yZ9anf7Ntp6zYCYV.java, line(s) 37
FhVvcrj9cPYToVA4/exxEIfkSA3s8tPyh.java, line(s) 164,292,295,118,119,370,376
Fzhb9wS8tO5AeNaY/L85Mdjrec8nOnOEG.java, line(s) 458
GOfN6OKPborrUW0T/L85Mdjrec8nOnOEG.java, line(s) 1028,1032
GV5ODkuvXWiciP0j/ZWM1ojiqcm6tQHRk.java, line(s) 53,86
GV5ODkuvXWiciP0j/aHsTDwxhs4FU3QnM.java, line(s) 661,760,660
GV5ODkuvXWiciP0j/pdHNSK7SSktWR0Pc.java, line(s) 116,142,453,465,472,481,133,330,349
GV5ODkuvXWiciP0j/svUBa5WwJYjwVfP6.java, line(s) 48,57,66,80,94,109,129
Gpo3jgCThx1UOMQD/Z2CF8EmQfoD5kUnE.java, line(s) 132,211,124,226
Jsk31iaalOq58msi/L85Mdjrec8nOnOEG.java, line(s) 33,40,43,52,86
Jsk31iaalOq58msi/V03QOBJhqRI1X9dW.java, line(s) 250
K40LPb6fXGEbYmGB/whlVjxyszd7A57M8.java, line(s) 326
LwNG4Eqt5c6pijDe/iresN7S3CPImmMzP.java, line(s) 50,69,78
PhVJs4inTwlYbgLM/Z2CF8EmQfoD5kUnE.java, line(s) 129,69,199
PkYkKHMCdvahyMm2/ZFsKRySXD8GS5j0b.java, line(s) 37,44,47,64,69,74,79,84,92
R24bu8kbgiGYi4RH/AURXusfL1GJT1Vs3.java, line(s) 60,70,96,108,148,152,170,206,239,251,264
R24bu8kbgiGYi4RH/FnIMnrxywMa8qiw0.java, line(s) 40
R24bu8kbgiGYi4RH/G1zHO8f3N33uGOK2.java, line(s) 92,91
R24bu8kbgiGYi4RH/GOfN6OKPborrUW0T.java, line(s) 42,56,82,160,81,122,122,154,175,188,204
R24bu8kbgiGYi4RH/GV5ODkuvXWiciP0j.java, line(s) 104,51,95,96,103,52,35
R24bu8kbgiGYi4RH/Of5bMdpBTKMFyzGM.java, line(s) 65
R24bu8kbgiGYi4RH/PkYkKHMCdvahyMm2.java, line(s) 92,113,117,125,138,154,172,100,105,162,88,112,116,124,137,153,171,61
R24bu8kbgiGYi4RH/Um4abQGguSM68d2U.java, line(s) 45,50,198,203,346,44,49,126,197,52,182,190,201,241,250,268,306,361
R24bu8kbgiGYi4RH/Uu1UQtqyHexYxALm.java, line(s) 70
R24bu8kbgiGYi4RH/eSMEs8nFau1vXz0r.java, line(s) 34,33
R24bu8kbgiGYi4RH/fKzKtkCQKohrApU7.java, line(s) 89,88,76,80,82
R24bu8kbgiGYi4RH/g1WIMEyxuRqMdHnp.java, line(s) 35
R24bu8kbgiGYi4RH/h1vYL2ORXx3GkSoc.java, line(s) 41,54,63,84,128,68,71,74,113,116,40,53,83,127
R24bu8kbgiGYi4RH/nPrVlNHv7zeRAu7K.java, line(s) 119,140,143,102,114,231,241,263,282,289,305
R24bu8kbgiGYi4RH/psMEdJyf4BcuBWFy.java, line(s) 79,94,36,84,78,91
R24bu8kbgiGYi4RH/qLG7QyJ8k94thGs5.java, line(s) 67,67
R24bu8kbgiGYi4RH/utgCL2EdspBqhCG7.java, line(s) 80,99,120
R24bu8kbgiGYi4RH/wqpyGvta2ro5RQhG.java, line(s) 39,49,84,78,119,67,67,81,95,99
R24bu8kbgiGYi4RH/zqqvYjCpJc6DgeMJ.java, line(s) 26,25
RI1hyqJWB1qs0efo/exxEIfkSA3s8tPyh.java, line(s) 118,144,151,158,196,211
Sebe7WQNBWZynSZs/nPrVlNHv7zeRAu7K.java, line(s) 144,211
XDCVQIjPjNk6TesO/RJp4M3zvFtnuMZOR.java, line(s) 28
ZWM1ojiqcm6tQHRk/exxEIfkSA3s8tPyh.java, line(s) 137,145,104
ZifnQGxb4QQIw194/fKzKtkCQKohrApU7.java, line(s) 233
aHsTDwxhs4FU3QnM/exxEIfkSA3s8tPyh.java, line(s) 413
com/ZKzwH/wUlTpv/MainActivity.java, line(s) 112,114,174,177
com/ZKzwH/wUlTpv/exxEIfkSA3s8tPyh.java, line(s) 146
com/example/fcmexpr/keepalive/KeepAliveServiceMediaPlayback.java, line(s) 94
com/example/fcmexpr/keepalive/WjBM7uKHe9l1NFOG.java, line(s) 46,248,324,463,958,37,646,786
com/example/fcmexpr/keepalive/gZnAMy3BPt8kwBVU.java, line(s) 33,41
com/example/fcmexpr/miner/L85Mdjrec8nOnOEG.java, line(s) 103,98
com/example/fcmexpr/miner/Z2CF8EmQfoD5kUnE.java, line(s) 100,157,343,68,159,346
fC2tHWhacACTT0JQ/KWrLFepehIWytTn5.java, line(s) 140,49,61,73,123,272
fC2tHWhacACTT0JQ/Of5bMdpBTKMFyzGM.java, line(s) 165,187
fC2tHWhacACTT0JQ/PaNr3RJqjR8WUkxn.java, line(s) 155
fC2tHWhacACTT0JQ/Um4abQGguSM68d2U.java, line(s) 48
fC2tHWhacACTT0JQ/g1WIMEyxuRqMdHnp.java, line(s) 59
fC2tHWhacACTT0JQ/gZnAMy3BPt8kwBVU.java, line(s) 71,116,125,388
fC2tHWhacACTT0JQ/m73VonsLSgho0QCz.java, line(s) 321,200,205,212,256,365
fC2tHWhacACTT0JQ/svUBa5WwJYjwVfP6.java, line(s) 86
fKzKtkCQKohrApU7/exxEIfkSA3s8tPyh.java, line(s) 135,179,215
fgfpqkDnYMCzn56t/RJp4M3zvFtnuMZOR.java, line(s) 87,98
iQqEDeSeSf5AW19T/ZFsKRySXD8GS5j0b.java, line(s) 41,81
iQqEDeSeSf5AW19T/ZifnQGxb4QQIw194.java, line(s) 165
iQqEDeSeSf5AW19T/fC2tHWhacACTT0JQ.java, line(s) 47,52
iQqEDeSeSf5AW19T/mTeqREdpglm9zrzy.java, line(s) 61
iQqEDeSeSf5AW19T/tg4zKSkMuzWPWbMR.java, line(s) 54,194
ijLF13irjUx0p2YM/exxEIfkSA3s8tPyh.java, line(s) 84
ijLF13irjUx0p2YM/fC2tHWhacACTT0JQ.java, line(s) 158
ijLF13irjUx0p2YM/nPrVlNHv7zeRAu7K.java, line(s) 30
lC8HubVVVU6SKSob/crP4tIcJxeiduPvE.java, line(s) 132
m73VonsLSgho0QCz/tg4zKSkMuzWPWbMR.java, line(s) 31
qLG7QyJ8k94thGs5/DAsBrME1bmNQrNis.java, line(s) 33
qtxiUHHbVNLGX5Wd/RJp4M3zvFtnuMZOR.java, line(s) 55,95
rHC0c092YBD9Ha4o/crP4tIcJxeiduPvE.java, line(s) 286,242,246,209
s0f7Y3XWXiicyIOX/crP4tIcJxeiduPvE.java, line(s) 51,88
uC5tuX2tv0FcSkHI/exxEIfkSA3s8tPyh.java, line(s) 52
uQ4j493v7wh7KlMn/RJp4M3zvFtnuMZOR.java, line(s) 43
wrZitfxVTOVi1cg6/L85Mdjrec8nOnOEG.java, line(s) 81,166,173
wrZitfxVTOVi1cg6/YTN56mhlWwB2hPqD.java, line(s) 42
wrZitfxVTOVi1cg6/ZFsKRySXD8GS5j0b.java, line(s) 22
wrZitfxVTOVi1cg6/ijLF13irjUx0p2YM.java, line(s) 23
wrZitfxVTOVi1cg6/iresN7S3CPImmMzP.java, line(s) 27
wrZitfxVTOVi1cg6/mTeqREdpglm9zrzy.java, line(s) 77,120,126,135,138
y3iFq29top3RALHN/RJp4M3zvFtnuMZOR.java, line(s) 53
zYM8IfHoeQFbfE1A/Z2CF8EmQfoD5kUnE.java, line(s) 96,100

安全 Firebase远程配置已禁用

Firebase远程配置URL ( https://firebaseremoteconfig.googleapis.com/v1/projects/469967176169/namespaces/firebase:fetch?key=AIzaSyBBjczkQvwZQjBb3otPihdIyR-3rlA5C0w ) 已禁用。响应内容如下所示:

{
    "state": "NO_TEMPLATE"
}

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

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

安全评分: ( Express 4.12025.4.214244)