Fix: Validate zipEntry directories during extension asset decompression (#1407)

This commit is contained in:
Edge At Zero
2025-05-27 08:45:20 +08:00
committed by GitHub
parent ec870759cf
commit d0f79ca473

View File

@@ -240,7 +240,7 @@ object Extension {
ZipInputStream(apkFile.inputStream()).use { zipInputStream ->
var zipEntry = zipInputStream.nextEntry
while (zipEntry != null) {
if (zipEntry.name.startsWith("assets/")) {
if (zipEntry.name.startsWith("assets/") && !zipEntry.isDirectory) {
val assetFile = File(assetsFolder, zipEntry.name)
assetFile.parentFile.mkdirs()
FileOutputStream(assetFile).use { outputStream ->