Severity by source
AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
AV:N because malicious deck is fetched/shared over network and exfiltrates remotely; UI:R because user must import the deck; C:H for arbitrary file read; no integrity or availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2Blast Radius
ecosystem impact- 1 pypi packages depend on aqt (1 direct, 0 indirect)
Ecosystem-wide dependent count for version 25.9.4.
DescriptionCVE.org
Anki is a program for creating and reviewing flashcards. Prior to 25.09.4, Anki's webview-based pages communicate with the Rust backend using an internal localhost API, and user scripts included via iframes in the editor can access this API despite protections intended to block reviewer and editor scripts. A malicious imported card package with an embedded iframe can use exposed API methods such as getImageForOcclusion to read arbitrary files accessible to the Anki process and exfiltrate them over the network. This issue is fixed in version 25.09.4.
AnalysisAI
Arbitrary file read and exfiltration in Anki prior to 25.09.4 allows a remote attacker to access sensitive files on a victim's system by distributing a maliciously crafted card package (.apkg). The root cause is an origin validation failure (CWE-346) in Anki's internal localhost API, which fails to block iframe-embedded scripts from accessing privileged backend methods such as getImageForOcclusion. Exploitation requires the victim to import the malicious deck; no public exploit code or CISA KEV listing has been identified at time of analysis.
Technical ContextAI
Anki's UI is built on a webview architecture where frontend pages communicate with a Rust backend over an internal localhost HTTP API. The editor supports iframes, and the application relies on origin-based restrictions to prevent reviewer and editor scripts from accessing sensitive API endpoints. CWE-346 (Origin Validation Error) identifies the root cause: the API does not adequately enforce origin checks, allowing iframe content - even from a third-party-controlled card package - to call privileged methods. The affected CPE is cpe:2.3:a:ankitects:anki:*:*:*:*:*:*:*:*, covering all Anki versions prior to 25.09.4 across platforms.
RemediationAI
Vendor-released patch: 25.09.4. Users should upgrade to Anki 25.09.4 immediately, available from https://github.com/ankitects/anki/releases/tag/25.09.4 and through official distribution channels. The upstream fix is documented in commit b2b68d829e853da51b5de8aad6c13b53e90bc20d. If immediate upgrade is not possible, avoid importing Anki deck packages (.apkg files) from untrusted or anonymous sources until patched, as this is the primary delivery mechanism for exploitation. There is no known configuration-level workaround that disables iframe support without degrading core editor functionality. Restricting outbound network access for the Anki process via host-based firewall rules would prevent file exfiltration but would not block the initial file read or address the root vulnerability.
An arbitrary script execution vulnerability exists in the MPV functionality of Ankitects Anki 24.04. Rated high severity
An reflected XSS vulnerability exists in the handling of invalid paths in the Flask server in Ankitects Anki 24.04. Rate
An vulnerability in the handling of Latex exists in Ankitects Anki 24.04. Rated medium severity (CVSS 6.5), this vulnera
A blocklist bypass vulnerability exists in the LaTeX functionality of Ankitects Anki 24.04. Rated medium severity (CVSS
An issue was discovered in Ankitects Anki through 25.02. Rated medium severity (CVSS 6.1), this vulnerability is remotel
Cross-origin request forgery against Anki's local HTTP server allows a malicious website to trigger unauthorized side-ef
Same weakness CWE-346 – Origin Validation Error
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-42113