Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malicious .apkg with iframe payload
-
DeliveryDistribute deck via community site or phishing
-
ExploitVictim imports deck into Anki
-
ExecutionIframe bypasses origin validation on localhost API
-
PersistCall getImageForOcclusion or similar API to read local files
-
ImpactExfiltrate file contents to attacker server
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
|
| Exploitation Conditions | The victim must actively import a malicious Anki card package (.apkg) - this is the required user interaction step reflected in CVSS UI:R. The attacker must embed a crafted iframe within a card that calls the exposed internal localhost API. Exploitation is constrained to files readable by the OS user account running Anki; it does not grant root or SYSTEM-level access beyond the process's own permissions. The vulnerability requires no authentication, no special network position, and no non-default Anki configuration - any installation of Anki prior to 25.09.4 with default settings is vulnerable upon import of a malicious deck. The critical limiting factor is the social engineering step: the victim must be convinced to import the deck. |
| Impact | The CVSS 3.1 score of 6.5 (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N) reflects a realistic threat model: no attacker privileges or special configuration required, but a user interaction step (importing the malicious deck) limits automated exploitation. The Confidentiality impact is High, meaning an attacker can read arbitrary files accessible to the Anki process, including documents, credentials, SSH keys, and browser profiles depending on OS permissions. No EPSS probability data was provided in the input. No CISA KEV listing exists, and no public POC exploit code has been identified, indicating this is not currently under widespread active exploitation. The social engineering surface is non-trivial - Anki's large user community regularly shares and imports deck packages from community repositories, making malicious deck distribution a plausible and low-friction attack vector. Scope is unchanged (S:U), so compromise does not directly pivot to other systems, but exfiltration over the network makes this a meaningful data-theft risk for individual users. |
| Exploit ScenarioDerived | An attacker publishes a malicious Anki deck package (.apkg) - disguised as a legitimate study resource - to a community sharing site or delivers it via phishing. When a victim imports the deck, an embedded iframe loads and calls the unprotected internal localhost API method getImageForOcclusion or similar endpoints to read sensitive files (e.g., SSH private keys, stored credentials) from the victim's filesystem and transmits them to an attacker-controlled server via outbound HTTP. No public POC exploit code has been identified at time of analysis, but the described attack path is straightforward given the documented API exposure. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 07, 2026
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.
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.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in pypi, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
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.
Know when Anki gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
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
1DescriptionCVE.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.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
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
Arbitrary code execution in Anki versions before 25.02.5 allows a crafted shared deck to drop a malicious executable nam
Arbitrary command execution in Anki versions before 25.02.5 on Windows occurs when a victim imports a crafted shared dec
An issue was discovered in Ankitects Anki through 25.02. Rated medium severity (CVSS 6.1), this vulnerability is remotel
Anki versions before 25.02.6 fail to confine media filenames referenced by sound/video tags to the media folder, so a cr
Cross-origin request forgery against Anki's local HTTP server allows a malicious website to trigger unauthorized side-ef
EUVD-2026-42113
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB