Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDeliver crafted Lottie animation JSON
-
ExploitParser builds cyclic precomposition reference graph
-
ExecutionTrigger uncontrolled recursion in BaseLayer.forModel/CompositionLayer
-
ImpactExhaust stack and crash host application (DoS)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Recursion depth limits
|
| Exploitation Conditions | The host application must parse an attacker-controlled Lottie animation JSON containing a cyclic precomposition reference graph; the recursion occurs in BaseLayer.forModel and CompositionLayer during model/layer-tree construction. The decisive limiting factor is input trust: exploitation requires the app to load untrusted/remote animation files - applications that render only bundled, trusted animations are not exposed. No authentication (PR:N) and no explicit user interaction beyond rendering are required, but delivery of the malicious JSON to the parser is a hard prerequisite; impact is limited to crashing/hanging the application (availability only). |
| Impact | The input CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, score 7.5) describes a purely availability-impacting, unauthenticated, network-reachable denial of service with no confidentiality or integrity effect, consistent with the CWE-674 (uncontrolled recursion) root cause. No EPSS score, KEV listing, or explicit POC flag was supplied in the input, so there is no public-exploit or active-exploitation signal to corroborate the high base score; the only exploitation-relevant artifact is a third-party security advisory (FFG0d) and a remediation PR. A key caveat: lottie-android is a client-side rendering library embedded in applications, so the 'network' attack vector only holds when the host application loads attacker-controlled animation JSON - the CVSS AV:N therefore reflects a worst-case data-delivery assumption rather than a directly listening network service, which should be verified against actual deployment. Realistically this is a moderate-priority, impact-limited (crash/hang only) DoS bug rather than a top-tier emergency: high CVSS driven entirely by A:H, but no privilege escalation, no code execution, and no confirmed in-the-wild use. Note also that the supplied source-code evidence is a fix in Samsung's rlottie (a C++ sibling project), not in airbnb/lottie-android itself - cross-ecosystem fix, so the Java/Kotlin patch status should be confirmed independently. |
| Exploit ScenarioDerived | An application using lottie-android loads an animation JSON from an untrusted source (e.g., a remote URL, user upload, or ad/content payload). The attacker supplies a Lottie file whose precomposition layers reference each other cyclically, so BaseLayer.forModel / CompositionLayer recurse without bound and exhaust the stack, crashing or hanging the host app. No authentication or user interaction beyond rendering the malicious animation is required; no public exploit code was identified in the provided data, though a third-party security advisory exists. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Denial of service in lottie-android 6.7.1 and earlier allows remote attackers to crash or hang applications by supplying a crafted Lottie animation JSON that contains a cyclic precomposition reference graph, which triggers uncontrolled recursion during layer model construction in BaseLayer.forModel and CompositionLayer. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, score 7.5) confirms unauthenticated, network-reachable availability impact with no confidentiality or integrity effect. No CISA KEV entry or public exploit code has been identified at time of analysis, but exploitation requires the host application to parse untrusted or remote Lottie files; applications rendering only bundled, trusted animations are not exposed.
RemediationAI
No vendor-released patch for lottie-android has been identified at time of analysis; the only patch data available is a PR/commit in Samsung's rlottie (PR #603) that introduces a maximum model tree depth of 32 and discards deeper content, which serves as a reference mitigation. Users should monitor the Airbnb lottie-android repository for updated releases and apply the first patched version beyond 6.7.1 when available. As compensating controls, validate and sanitize Lottie JSON inputs, reject or truncate animations exceeding a safe recursion depth (e.g., implement a depth limit similar to rlottie's kMaxModelTreeDepth), and avoid parsing untrusted animations directly in the main application process; run parsing in an isolated process or with a timeout to contain crashes. Applications that render only bundled, trusted animations are not exposed. For the rlottie fix, see https://github.com/Samsung/rlottie/pull/603. For the third-party advisory, see https://github.com/FFG0d/security-advisories/blob/main/advisories/CVE-2026-95179.md.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Lottie is a JSON-based animation format originally developed by Airbnb; lottie-android is the Android rendering library. The flaw resides in model construction, specifically in BaseLayer.forModel and CompositionLayer, where a cyclic precomposition reference graph causes unbounded recursion (CWE-674: uncontrolled recursion). This is a classic stack-exhaustion pattern: each precomposition reference re-enters model building without a depth guard, exhausting the call stack and crashing the process. The CPE string is not populated (n/a), and the ENISA EUVD entry (EUVD-2026-102129) lists affected versions as 'n/a n/a', so version specificity relies on the advisory text. A related fix in Samsung's rlottie C++ library (PR #603) adds a kMaxModelTreeDepth constant of 32 and a depth check in LottieParserImpl::parseGroupObject that discards deeper content with a warning, illustrating the recommended mitigation class for this vulnerability.
Know when Android 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:N/S:U/C:N/I:N/A:H
Crafted JSON can arrive over the network and needs no auth or interaction (AV:N/AC:L/PR:N/UI:N); impact is an application crash only, so C:N/I:N/A:H, scope unchanged.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
3DescriptionCVE.org
An issue in lottie-android 6.7.1 and earlier (and master) allows a remote attacker to cause a denial of service via a crafted Lottie animation JSON containing a cyclic precomposition reference graph that triggers uncontrolled recursion in BaseLayer.forModel and CompositionLayer.
Executive ViewAI
A high-severity denial-of-service flaw in the Airbnb lottie-android library (versions 6.7.1 and earlier) allows a crafted animation file to crash or hang any mobile application that renders it, with no authentication or user interaction required beyond the app loading the file. Only teams whose apps parse untrusted or remotely supplied Lottie animations are exposed - apps using bundled, trusted animations are not at risk - but for those teams this translates to user-facing outages, negative app store ratings, and potential loss of transaction or engagement revenue. No vendor patch or public exploit code has been identified at time of analysis, so exposure currently must be managed through configuration and input-handling controls.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict Lottie rendering to bundled/trusted animation assets and disable remote or user-supplied animation loading; enforce input validation, file-size limits, and precomposition-depth/complexity caps on animation JSON before parsing; execute parsing in an isolated process or thread with a watchdog timeout and graceful fallback so a hang or crash does not degrade the primary application; add crash/hang monitoring and alerting to detect attempted abuse; and prioritise remediation for apps whose core user journeys depend on untrusted Lottie content.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Adobe Flash Player before 13.0.0.292 and 14.x through 18.x before 18.0.0.160 on Windows and OS X and before 11.2.202.466
Integer underflow in the MPEG4Extractor::parseChunk function in MPEG4Extractor.cpp in libstagefright in mediaserver in A
Android 3.0 through 4.1.x on Disney Mobile, eAccess, KDDI, NTT DOCOMO, SoftBank, and other devices does not properly imp
Integer overflow in the SampleTable::setSampleToChunkParams function in SampleTable.cpp in libstagefright in Android bef
Apktool versions 2.9.1 and prior contain a path traversal vulnerability when processing Android APK files. Malicious APK
An elevation of privilege vulnerability in the Android system (art). Rated high severity (CVSS 7.8), this vulnerability
The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a
Use-after-free vulnerability in Adobe Flash Player before 13.0.0.292 and 14.x through 18.x before 18.0.0.160 on Windows
Use-after-free vulnerability in Adobe Flash Player before 13.0.0.292 and 14.x through 18.x before 18.0.0.160 on Windows
Android 1.6 Donut through 4.2 Jelly Bean does not properly check cryptographic signatures for applications, which allows
luni/src/main/java/java/io/ObjectInputStream.java in the java.io.ObjectInputStream implementation in Android before 5.0.
The Broadcom Wi-Fi driver in the kernel in Android 4.x before 4.4.4, 5.x before 5.1.1 LMY49G, and 6.x before 2016-02-01
EUVD-2026-102129
GHSA-qcq9-5r29-gg49
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB