CVE-2026-88054

Source
https://cve.org/CVERecord?id=CVE-2026-88054
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-88054.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-88054
Aliases
  • GHSA-f6h7-cqr4-6fx4
Downstream
Published
2026-09-10T17:39:54Z
Modified
2026-09-12T08:07:33Z
Severity
  • 6.9 (Medium) CVSS_V4 - CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N CVSS Calculator
Summary
Tesseract: Denial of service via empty-stack dereference in Plumbing/Series at model load
Details

Tesseract is an open source OCR engine. In version 5.5.3 and earlier, Plumbing::DeSerialize in src/lstm/plumbing.cpp rejects excessively large network stacks but accepts a zero-length stack for NT_SERIES, NT_PARALLEL, or NT_REVERSED layers in a crafted .traineddata model. During LSTMRecognizer initialization in src/lstm/lstmrecognizer.cpp, CacheXScaleFactor(XScaleFactor()) reaches Series::CacheXScaleFactor in src/lstm/series.cpp, which dereferences stack_[0] on the empty vector and invokes a virtual method through an invalid Network pointer. This causes a deterministic crash and denial of service at model load. No fixed release is available as of this review.

Database specific
{
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
        "CWE-125",
        "CWE-824"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/88xxx/CVE-2026-88054.json"
}
References

Affected packages

Git / github.com/tesseract-ocr/tesseract

Affected ranges

Type
GIT
Repo
https://github.com/tesseract-ocr/tesseract
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Database specific
Show details
{
    "extracted_events": [
        {
            "introduced": "0"
        },
        {
            "last_affected": "5.5.3"
        }
    ],
    "source": [
        "AFFECTED_FIELD",
        "REFERENCES"
    ]
}

Affected versions

1.*
1.03
1.04
1.04b
2.*
2.00
2.01
2.02
2.03
2.04
3.*
3.00
3.01
3.02.02
3.03-rc1
3.04.00
3.05.00dev
4.*
4.0.0
4.0.0-alpha
4.0.0-beta.1
4.0.0-beta.3
4.0.0-beta.4
4.0.0-rc3
4.0.0-rc4
4.00.00alpha
4.00.00dev
4.1.0-rc1
5.*
5.0.0
5.0.0-alpha
5.0.0-alpha-20201224
5.0.0-alpha-20201231
5.0.0-alpha-20210401
5.0.0-beta-20210916
5.0.0-rc1
5.0.0-rc2
5.0.0-rc3
5.0.1
5.1.0
5.2.0
5.3.0
5.3.0-rc1
5.3.1
5.3.2
5.3.3
5.3.4
5.4.0
5.4.0-rc1
5.4.0-rc2
5.4.1
5.5.0
5.5.1
5.5.2
5.5.3

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-88054.json"
vanir_signatures
[
    {
        "deprecated": false,
        "digest": {
            "line_hashes": [
                "258537122134984682208804771031359520231",
                "110212321735512951597145114429682695837",
                "103444331921693883673816784988195841480",
                "94567939029304892192157192805406604937"
            ],
            "threshold": 0.9
        },
        "id": "CVE-2026-88054-4685971c",
        "signature_type": "Line",
        "signature_version": "v1",
        "source": "https://github.com/tesseract-ocr/tesseract/commit/552771236b0d80cbdb0c7dd856120fa21a4672e5",
        "target": {
            "file": "src/ccmain/tessedit.cpp"
        }
    },
    {
        "deprecated": false,
        "digest": {
            "function_hash": "164385902769592234980565436960277735521",
            "length": 506
        },
        "id": "CVE-2026-88054-a4e5f023",
        "signature_type": "Function",
        "signature_version": "v1",
        "source": "https://github.com/tesseract-ocr/tesseract/commit/552771236b0d80cbdb0c7dd856120fa21a4672e5",
        "target": {
            "file": "src/lstm/plumbing.cpp",
            "function": "Plumbing::DeSerialize"
        }
    },
    {
        "deprecated": false,
        "digest": {
            "line_hashes": [
                "192914806808253293124435264712683859117",
                "4050315567552585687908019195635512374",
                "231949050499091548991046095629584414189",
                "21672120500222972354062729542871880294"
            ],
            "threshold": 0.9
        },
        "id": "CVE-2026-88054-abdf8a46",
        "signature_type": "Line",
        "signature_version": "v1",
        "source": "https://github.com/tesseract-ocr/tesseract/commit/552771236b0d80cbdb0c7dd856120fa21a4672e5",
        "target": {
            "file": "src/lstm/plumbing.cpp"
        }
    }
]
vanir_signatures_modified
"2026-09-12T08:07:33Z"