CVE-2026-110974: Uncontrolled Recursion on Nested JSON Allows Denial of Service in android-json

Published Oct 22, 2026
·
Updated

The org.json parser in com.vaadin.external.google:android-json recurses once per nesting level with no depth limit: JSONTokener.nextValue() calls readArray() and readObject(), which call nextValue() again. A deeply nested JSON document, around 20 KB of nested arrays with the default thread stack, makes the JSONArray and JSONObject constructors throw a raw java.lang.StackOverflowError instead of a JSONException. Any application that parses untrusted JSON with this library can be made to fail the thread doing the parsing. The artifact is a 2013 repackage of third-party org.json classes, published once and never maintained, and no fixed version will be released.

Users of the affected version should apply the following mitigation.

Product version com.vaadin.external.google:android-json 0.0.20131108.vaadin1

Mitigation No fixed version will be released. Replace the artifact with an org.json implementation that limits the nesting depth, such as org.json:json 20231013 or later.

Artifacts Maven coordinates / Vulnerable versions / Fixed version com.vaadin.external.google:android-json / 0.0.20131108.vaadin1 / none

Affected Software

1 affected component
maven/com.vaadin.external.google/android-json=0.0.20131108.vaadin1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade org.json:json to a version that resolves this vulnerability.

    Fixed in 20231013

Event History

Oct 22, 2026
CVE Published
via MITRE·08:52 AM
Data Sourced
via MITRE·08:52 AM
RemedyDescriptionWeakness

Frequently Asked Questions

1

Who is exposed to this issue?

Any application using com.vaadin.external.google:android-json 0.0.20131108.vaadin1 to parse untrusted JSON is exposed. A maliciously deeply nested JSON document can cause the parsing thread to fail with java.lang.StackOverflowError.

2

What does an attacker need to exploit it?

An attacker needs to supply JSON that the application passes to this library for parsing. The payload can be a deeply nested document; the description notes that roughly 20 KB of nested arrays can exhaust the default thread stack.

3

Is a patch available for the affected artifact?

No. The artifact was published once and is no longer maintained, and no fixed version will be released.

4

What should be done if this dependency is in use?

Replace com.vaadin.external.google:android-json with an org.json implementation that enforces a nesting-depth limit, such as org.json:json 20231013 or later.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203