Read the docs
TI-2026-24514 Aliases CVE-2026-31970

HTSlib BGZF index file reader has a heap buffer overflow

Priority LOW 32CWE-122Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Passive
Attack complexity
Low
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
None · High · Low
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

HTSlib is a library for reading and writing bioinformatics file formats. GZI files are used to index block-compressed GZIP [BGZF] files. In the GZI loading function, `bgzf_index_load_hfile()`, it was possible to trigger an integer overflow, leading to an under- or zero-sized buffer being allocated to store the index. Sixteen zero bytes would then be written to this buffer, and, depending on the result of the overflow the rest of the file may also be loaded into the buffer as well. If the function did attempt to load the data, it would eventually fail due to not reading the expected number of records, and then try to free the overflowed heap buffer. Exploiting this bug causes a heap buffer overflow. If a user opens a file crafted to exploit this issue, it could lead to the program crashing, or overwriting of data and heap structures in ways not expected by the program. It may be possible to use this to obtain arbitrary code execution. Versions 1.23.1, 1.22.2 and 1.21.1 include fixes for this issue. The easiest work-around is to discard any `.gzi` index files from untrusted sources, and use the `bgzip -r` option to recreate them.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00479 41st percentileScored 2026-11-07
Fix Fixed htslib (samtools): 1.21.1, 1.22.2

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
samtoolshtslibbefore 1.21.1; 1.22 to before 1.22.2; = 1.231.21.1, 1.22.2Patch availableCNA
  • htslib Vendorsamtools Affected before 1.21.1; 1.22 to before 1.22.2; = 1.23 Fixed in 1.21.1, 1.22.2 Patch available CNA

CPE configurations NVD · 2

CPEVersionsRoleVendor
cpe:2.3:a:htslib:htslib:*:*:*:*:*:*:*:*before 1.21; 1.22 to before 1.22.2VulnerableHtslib
cpe:2.3:a:htslib:htslib:1.23:*:*:*:*:*:*:*1.23VulnerableHtslib
  • cpe:2.3:a:htslib:htslib:*:*:*:*:*:*:*:* Versions before 1.21; 1.22 to before 1.22.2 Vulnerable ·Htslib
  • cpe:2.3:a:htslib:htslib:1.23:*:*:*:*:*:*:* Versions 1.23 Vulnerable ·Htslib

Remediation

  • Fix · CNA htslib (samtools) Fixed in 1.21.1, 1.22.2

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-31970
  2. 2026-10-16 EPSS moved to the 50th–90th percentile
  3. 2026-10-25 EPSS moved to the below the 50th percentile

References

  • TI-2022-05532 Creation of Temporary File in Directory with Insecure Permissions CVSS 3.1HIGH 7.8
  • TI-2026-24512 HTSlib CRAM decoder vulnerable to buffer overflow CVSS 4.0HIGH 8.8
  • TI-2026-24507 HTSlib CRAM reader has heap buffer overflow due to improper validation of input CVSS 4.0HIGH 8.8
  • TI-2026-24506 HTSlib CRAM reader has heap buffer overflow due to improper validation of input CVSS 4.0HIGH 8.8
  • TI-2026-24516 samtools mpileup has use-after-free leading to an invalid read CVSS 4.0MEDIUM 6.9
  • TI-2026-24511 HTSlib CRAM reader has out-of-bounds read due to improper validation of input CVSS 4.0MEDIUM 6.9
See all 13 →

Sources