{"dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": {"cveId": "CVE-2026-85725", "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "state": "PUBLISHED", "assignerShortName": "GitHub_M", "dateReserved": "2026-09-04T14:45:10.648Z", "datePublished": "2026-09-22T16:16:36.326Z", "dateUpdated": "2026-09-22T16:16:36.326Z"}, "containers": {"cna": {"title": "LightRAG: Plaintext Passwords Compared Without Constant-Time Function", "problemTypes": [{"descriptions": [{"cweId": "CWE-208", "lang": "en", "description": "CWE-208: Observable Timing Discrepancy", "type": "CWE"}]}], "metrics": [{"cvssV3_1": {"attackComplexity": "HIGH", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 5.9, "baseSeverity": "MEDIUM", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "privilegesRequired": "NONE", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N", "version": "3.1"}}], "references": [{"name": "https://github.com/HKUDS/LightRAG/security/advisories/GHSA-c759-cx9p-mrwq", "tags": ["x_refsource_CONFIRM"], "url": "https://github.com/HKUDS/LightRAG/security/advisories/GHSA-c759-cx9p-mrwq"}, {"name": "https://github.com/HKUDS/LightRAG/pull/3423", "tags": ["x_refsource_MISC"], "url": "https://github.com/HKUDS/LightRAG/pull/3423"}, {"name": "https://github.com/HKUDS/LightRAG/commit/89849c3ed0e0380345a6b5bade027cfb9a5bf32c", "tags": ["x_refsource_MISC"], "url": "https://github.com/HKUDS/LightRAG/commit/89849c3ed0e0380345a6b5bade027cfb9a5bf32c"}, {"name": "https://github.com/HKUDS/LightRAG/releases/tag/v1.5.5", "tags": ["x_refsource_MISC"], "url": "https://github.com/HKUDS/LightRAG/releases/tag/v1.5.5"}], "affected": [{"vendor": "HKUDS", "product": "LightRAG", "versions": [{"version": "< 1.5.5", "status": "affected"}]}], "providerMetadata": {"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M", "dateUpdated": "2026-09-22T16:16:36.326Z"}, "descriptions": [{"lang": "en", "value": "LightRAG provides simple and fast retrieval-augmented generation. Prior to 1.5.5, verify_password in lightrag/api/passwords.py compares plaintext AUTH_ACCOUNTS password values with Python's == operator. The comparison can return after the first mismatching byte, creating response-time differences based on password length and matching prefixes. A network attacker with sufficiently low-latency access can repeatedly query the /login endpoint and use the timing oracle to recover a plaintext-configured password character by character. Deployments using bcrypt-prefixed password values are not affected by this comparison path. This issue is fixed in version 1.5.5."}], "source": {"advisory": "GHSA-c759-cx9p-mrwq", "discovery": "UNKNOWN"}}}}