CVE-2017-9228

CRITICALNVD 9.89.8
EchelonGraph scoreMEDIUM confidence

“—” beside the score: it is equal to NVD's CVSS score.

Score 9.8 from GitHub Security Advisory (severity: CRITICAL) published 2022-05-14. NVD baseline CVSS 9.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: EPSS, GitHub Security Advisory, NVD CVSS v3

Also known asEUVD-2017-18166 (ENISA EUVD) · GHSA-qc5j-7652-9f34 (GitHub Security Advisories)Source: ENISA EUVD

9.8EG
EchelonGraph verdictPlan a fixRemediate within your standard update timelines (the SSVC decision on this page).
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 6.3%CVSS: 9.8Exploit: None knownExposed services: Not assessed

A fix is available — apply it.

An issue was discovered in Oniguruma 6.2.0, as used in Oniguruma-mod in Ruby through 2.4.1 and mbstring in PHP through 7.1.5. A heap out-of-bounds write occurs in bitset_set_range() during regular expression compilation due to an uninitialized variable from an incorrect state transition. An incorrect state transition in parse_char_class() could create an execution path that leaves a critical local variable uninitialized until it's used as an index, resulting in an out-of-bounds write memory corruption.

CVSS v3
9.8
EG Score
9.8CRITICALmedium confidence
EG Risk
47
EG Risk 47/100

EG Risk is EchelonGraph's 0–100 priority score. It fuses impact severity (EG Severity, the CVSS base score, never the KEV-floored or EPSS-lifted EG Score) with real-world exploitation and automatability, under weights EchelonGraph set by hand, so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner.

How it’s computed (value × EchelonGraph’s weight)
Severity98% × 45%
Impact severity (EG Severity): CVSS 9.8 of 10. Never the KEV-floored or EPSS-lifted EG Score.
Exploitation6.3% × 40%
FIRST EPSS: the 30-day exploitation probability when EchelonGraph scored this CVE.
Automatability0% × 15%
CISA's BOD 26-04 default: no one has published Automatable for this CVE, and CISA treats it as “no” for a CVE not in KEV.
SSVC (CISA's decision table, applied by EchelonGraph): Track at low or medium mission impact; Track* at high (mission-essential systems).
Exploitation none (no CISA value, KEV listing or exploit code on record) · Automatable no (CISA's BOD 26-04 default) · Technical impact total (CISA's BOD 26-04 default). EchelonGraph holds no SSVC assessment of this CVE from CISA: none of these inputs is from Vulnrichment. EchelonGraph applied CISA's decision table to them; CISA publishes SSVC inputs and the table, not a decision for each CVE.
Action: A fix is available. Apply it within your standard update timelines.
EPSS PROB
6.3%
EPSS %ILE
93rd
KEV
Not listed

What the EG score is made of (scorer v4.0: the three questions the 0–10 score mixes, published apart · methodology)

The EG score (9.8): severity, escalated by confirmed exploitation. This CVE's 9.8 is its impact severity (EG Severity), not escalated.

EG Severity
9.8 CRITICALCVSS-B, impact only: no KEV listing, EPSS or EG-KEV tier raises it.GitHub Security Advisory CVSS
EG Likelihood
6.3% within 30 daysSource: FIRST EPSS (model v2026.06.15, score date 2026-11-12). FIRST's exploitation probability, not an EchelonGraph model.
Confirmed exploitation
None on record (CISA KEV, EG-KEV Tier 1)Reported apart from the likelihood: an observed fact, not a probability.
EG Priority
SSVC Track at medium mission impactTrack at low or medium mission impact; Track* at high (mission-essential systems).CISA BOD 26-04: 14 days if the affected system is publicly exposed; Fix on system upgrade if it is not.Each input and its source, and whom BOD 26-04 binds: the SSVC and BOD 26-04 blocks below.

SSVC (CISA's decision table, applied by EchelonGraph)Track at low or medium mission impact; Track* at high (mission-essential systems).

A fix is available. Apply it within your standard update timelines.

Exploitation none (no CISA value, KEV listing or exploit code on record) · Automatable no (CISA's BOD 26-04 default) · Technical impact total (CISA's BOD 26-04 default). EchelonGraph holds no SSVC assessment of this CVE from CISA: none of these inputs is from Vulnrichment. EchelonGraph applied CISA's decision table to them; CISA publishes SSVC inputs and the table, not a decision for each CVE. Mission impact is CISA's Mission & Well-being decision point, and only you can judge it. CISA's table makes it high when Mission Prevalence is Essential — the vulnerable component "directly provides capabilities that constitute at least one MEF for at least one entity" (MEF: mission essential function) — or when Public Well-Being Impact is Irreversible: "multiple fatalities are likely", the cyber-physical system "is likely lost or destroyed", "extreme or serious externalities" are imposed on other parties, or social systems such as elections or the financial grid "are destabilized and potentially collapse". CISA's decision table

BOD 26-04 (CISA's remediation timeline, Table 1)14 days if the affected system is publicly exposed; Fix on system upgrade if it is not.

The score's inputs: In CISA KEV no (CISA's KEV catalog) · Automatable no (CISA's BOD 26-04 default) · Technical impact total (CISA's BOD 26-04 default). Where an input reads “CISA's BOD 26-04 default”, no one has published it for this CVE, and CISA's implementation guidance says: “If “Automatable” and “Technical Impact” information items about a CVE ID are not available and the CVE ID is not in the KEV Catalog, CISA will treat its values as “no” and “total,” respectively, until CISA or a third party provides metadata about the CVE ID. CISA will always provide the Vulnrichment data for a CVE ID listed in the KEV Catalog.” Whether your system is publicly exposed is yours to answer. BOD 26-04 binds US Federal Civilian Executive Branch agencies; for anyone else it is CISA's published timeline, a reference rather than an obligation. The directive · how EchelonGraph applies it

Published

May 24, 2017

Last Modified

June 17, 2026

Advisory Details (3)

Auto-updated Oct 17, 2026
Patch available. Sources: redhat, github_commit.
Web page

Heap corruption in next_state_val() due to uninitialized local variable · Issue #60 · kkos/oniguruma · GitHub

https://github.com/kkos/oniguruma/issues/60
GitHub commit Patch Available

commit 3b63d12038c8 (kkos/oniguruma)

Patch available: kkos/oniguruma v6.7.1 (contains commit 3b63d12038c8)

https://github.com/kkos/oniguruma/commit/3b63d12038c8d8fc278e81c942fa9bec7c704c8b
Red HatMentions a patch (unverified)
https://access.redhat.com/errata/RHSA-2018:1296

Patch Availability(3)

Vendor / EcosystemFix (by version range) / PatchReleasedSource
ubuntuphp5-cgi (5.3.10-1ubuntu3.28) @ precise2026-11-12ubuntu
ubuntuphp5-xsl (5.5.9+dfsg-1ubuntu4.22) @ trusty2026-11-12ubuntu
redhatrh-php70-php-0:7.0.27-1.el72018-05-03redhat

Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.

Affected Packages

(13 across 10 ecosystems)
Alpine:v3.5(2)
PackageVulnerable rangeFix by version rangeDependents
php5—
  • every version up to 5.6.31-r0: fixed in 5.6.31-r0
—
php7—
  • every version up to 7.0.21-r0: fixed in 7.0.21-r0
—
Alpine:v3.6(2)
PackageVulnerable rangeFix by version rangeDependents
php5—
  • every version up to 5.6.31-r0: fixed in 5.6.31-r0
—
php7—
  • every version up to 7.1.9-r0: fixed in 7.1.9-r0
—
Alpine:v3.7(2)
PackageVulnerable rangeFix by version rangeDependents
php5—
  • every version up to 5.6.31-r0: fixed in 5.6.31-r0
—
php7—
  • every version up to 7.1.7-r0: fixed in 7.1.7-r0
—
Alpine:v3.4(1)
PackageVulnerable rangeFix by version rangeDependents
php5—
  • every version up to 5.6.31-r0: fixed in 5.6.31-r0
—
Alpine:v3.8(1)
PackageVulnerable rangeFix by version rangeDependents
php5—
  • every version up to 5.6.31-r0: fixed in 5.6.31-r0
—
Debian:11(1)
PackageVulnerable rangeFix by version rangeDependents
libonig—
  • every version up to 6.1.3-2: fixed in 6.1.3-2
—
Debian:12(1)
PackageVulnerable rangeFix by version rangeDependents
libonig—
  • every version up to 6.1.3-2: fixed in 6.1.3-2
—
Debian:13(1)
PackageVulnerable rangeFix by version rangeDependents
libonig—
  • every version up to 6.1.3-2: fixed in 6.1.3-2
—
Debian:14(1)
PackageVulnerable rangeFix by version rangeDependents
libonig—
  • every version up to 6.1.3-2: fixed in 6.1.3-2
—
Debian:7(1)
PackageVulnerable rangeFix by version rangeDependents
libonig5.9.1-1
  • every version up to 5.9.1-1+deb7u1: fixed in 5.9.1-1+deb7u1
—

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

All Vendor Advisories

(3)

Every vendor that published an advisory referencing this CVE — pulled from our cve_vendor_advisories aggregation. Click any row for the vendor's original advisory page.

Data Freshness Timeline

(refreshed 20× in last 7d / 86× in last 30d)

Each row is a time one of our pipelines fetched, updated or re-scored this CVE. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed its CVE.org record (CNA or CISA ADP). An arrow marks a change the record states ("CVSS v3 → 9.1"); EPSS and GHSA rows show the values recorded at that time, not what changed (EPSS values are rounded; hover one for the exact figures). "EchelonGraph re-scored" is our own recompute of this CVE's score, not an update from a source, and is not counted in the refreshes above. Most recent first.

Showing the most recent 100 of 330 rows on record for this CVE.

A repeat, a row identical to one the same pipeline wrote less than 10 seconds earlier, is not a separate refresh and is not counted. None are among the latest 100 rows. The 230 oldest rows on record are not shown and were not checked, so the counts can still include repeats.

  1. 2026-11-13 06:09 UTCEchelonGraph re-scored
  2. 2026-11-13 06:09 UTCVendor advisory
  3. 2026-11-13 06:09 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  4. 2026-11-12 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  5. 2026-11-12 04:27 UTCEchelonGraph re-scored
  6. 2026-11-12 04:27 UTCVendor advisory
  7. 2026-11-12 04:27 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  8. 2026-11-11 16:29 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  9. 2026-11-11 02:48 UTCEchelonGraph re-scored
  10. 2026-11-11 02:48 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  11. 2026-11-10 16:31 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  12. 2026-11-10 00:54 UTCEchelonGraph re-scored
  13. 2026-11-10 00:54 UTCVendor advisory
  14. 2026-11-10 00:54 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  15. 2026-11-09 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  16. 2026-11-08 23:16 UTCEchelonGraph re-scored
  17. 2026-11-08 23:16 UTCVendor advisory
  18. 2026-11-08 23:16 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  19. 2026-11-08 16:30 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  20. 2026-11-07 21:37 UTCEchelonGraph re-scored
  21. 2026-11-07 21:37 UTCVendor advisory
  22. 2026-11-07 21:37 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  23. 2026-11-07 16:31 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  24. 2026-11-06 19:59 UTCEchelonGraph re-scored
  25. 2026-11-06 19:59 UTCVendor advisory
Show 75 more
  1. 2026-11-06 19:59 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  2. 2026-11-06 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  3. 2026-11-05 18:22 UTCEchelonGraph re-scored
  4. 2026-11-05 18:22 UTCVendor advisory
  5. 2026-11-05 18:22 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  6. 2026-11-05 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  7. 2026-11-04 16:43 UTCEchelonGraph re-scored
  8. 2026-11-04 16:43 UTCVendor advisory
  9. 2026-11-04 16:43 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  10. 2026-11-04 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  11. 2026-11-03 16:34 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  12. 2026-11-03 15:04 UTCEchelonGraph re-scored
  13. 2026-11-03 15:04 UTCVendor advisory
  14. 2026-11-03 15:04 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  15. 2026-11-02 18:55 UTCOSV refresh
  16. 2026-11-02 16:34 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  17. 2026-11-02 13:26 UTCEchelonGraph re-scored
  18. 2026-11-02 13:26 UTCVendor advisory
  19. 2026-11-02 13:26 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  20. 2026-11-01 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  21. 2026-11-01 11:48 UTCEchelonGraph re-scored
  22. 2026-11-01 11:48 UTCVendor advisory
  23. 2026-11-01 11:48 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  24. 2026-10-31 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  25. 2026-10-31 10:08 UTCEchelonGraph re-scored
  26. 2026-10-31 10:08 UTCVendor advisory
  27. 2026-10-31 10:08 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  28. 2026-10-30 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  29. 2026-10-30 08:25 UTCEchelonGraph re-scored
  30. 2026-10-30 08:25 UTCVendor advisory
  31. 2026-10-30 08:25 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  32. 2026-10-29 16:28 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  33. 2026-10-29 06:48 UTCEchelonGraph re-scored
  34. 2026-10-29 06:48 UTCVendor advisory
  35. 2026-10-29 06:47 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  36. 2026-10-28 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  37. 2026-10-28 05:06 UTCEchelonGraph re-scored
  38. 2026-10-28 05:06 UTCVendor advisory
  39. 2026-10-28 05:06 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  40. 2026-10-27 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  41. 2026-10-27 03:28 UTCEchelonGraph re-scored
  42. 2026-10-27 03:28 UTCVendor advisory
  43. 2026-10-27 03:28 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  44. 2026-10-26 16:26 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  45. 2026-10-25 21:43 UTCVendor advisory
  46. 2026-10-25 21:43 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  47. 2026-10-25 19:29 UTCEchelonGraph re-scored
  48. 2026-10-25 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  49. 2026-10-24 19:50 UTCEchelonGraph re-scored
  50. 2026-10-24 19:50 UTCVendor advisory
  51. 2026-10-24 19:50 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  52. 2026-10-24 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  53. 2026-10-23 18:13 UTCEchelonGraph re-scored
  54. 2026-10-23 18:13 UTCVendor advisory
  55. 2026-10-23 18:12 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  56. 2026-10-23 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  57. 2026-10-22 16:30 UTCEchelonGraph re-scored
  58. 2026-10-22 16:30 UTCVendor advisory
  59. 2026-10-22 16:30 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  60. 2026-10-22 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  61. 2026-10-21 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  62. 2026-10-21 14:51 UTCEchelonGraph re-scored
  63. 2026-10-21 14:51 UTCVendor advisory
  64. 2026-10-21 14:51 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  65. 2026-10-20 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  66. 2026-10-20 13:14 UTCEchelonGraph re-scored
  67. 2026-10-20 13:14 UTCVendor advisory
  68. 2026-10-20 13:13 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  69. 2026-10-19 16:26 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  70. 2026-10-19 11:35 UTCEchelonGraph re-scored
  71. 2026-10-19 11:35 UTCVendor advisory
  72. 2026-10-19 11:34 UTCGHSA enrichmentGHSA-qc5j-7652-9f34 · GitHub severity CRITICAL · GitHub CVSS 9.8
  73. 2026-10-18 16:27 UTCEPSS rescoreEPSS 6.3% · 93rd percentile
  74. 2026-10-18 09:19 UTCEchelonGraph re-scored
  75. 2026-10-18 09:19 UTCVendor advisory

Frequently asked(5)

What is CVE-2017-9228?
CVE-2017-9228 is a critical-severity vulnerability; its CVE record was published on May 24, 2017. An issue was discovered in Oniguruma 6.2.0, as used in Oniguruma-mod in Ruby through 2.4.1 and mbstring in PHP through 7.1.5. A heap out-of-bounds write occurs in bitset_set_range() during regular expression compilation due to an uninitialized variable from an incorrect state transition. An…
When was CVE-2017-9228 made public?
CVE-2017-9228 was made public on May 24, 2017: that is the date its CVE record's CNA, MITRE Corporation, gives for when the vulnerability was made public. The CVE record itself was published on May 24, 2017. EchelonGraph's copy of the record carries a last-modified date of June 17, 2026; the record at its source may have been updated since.
Is CVE-2017-9228 actively exploited?
CVE-2017-9228 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 6.3% probability of exploitation in the next 30 days (93rd percentile of EPSS-scored CVEs).
What is the CVSS score of CVE-2017-9228?
CVE-2017-9228 has a CVSS v3 base score of 9.8 (NVD).
How do I remediate CVE-2017-9228?
A fix for CVE-2017-9228 is available: update to the fixed version the vendor names in its advisory.

Dependency Blast Radius

See which npm, PyPI, Go, and Maven packages are affected by CVE-2017-9228

Explore →

Is Your Infrastructure Affected by CVE-2017-9228?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.