Skip to main content

hosp_order CVE-2026-96552

| EUVDEUVD-2026-85626 LOW
Missing Cryptographic Step (CWE-325)
2026-09-23 cna@vuldb.com GHSA-rwxj-v6pm-xj2c
1.3
CVSS 4.0 · Vendor: vuldb
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain stored password hash table
  2. Delivery
    Identify unsalted MD5 digests
  3. Exploit
    Apply rainbow tables / GPU cracking
  4. Execution
    Recover plaintext passwords
  5. Impact
    Reuse for account takeover

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Cryptographic step completeness
Exploitation Conditions

Exploitation is not self-contained: an attacker must FIRST gain access to the stored password hashes (via a separate vulnerability, database compromise, or backup leak), because the flaw is that MD5.getMD5 stores user passwords as unsalted MD5 digests rather than exposing any remotely-triggerable primitive. This is why the CVSS vector uses AC:H (difficult) and PR:L. The limiting factor is high - no impact until the hash store is exfiltrated; on its own the weakness only lowers the cost of cracking already-stolen hashes. No fixed release exists due to the rolling-release model, so remediation requires the operator to change the hashing code (add salt / adopt a strong KDF like bcrypt/argon2).

Impact

This is a genuinely low-priority finding, and the signals agree. The CVSS 4.0 base score is 1.3 (Low), with vector AV:N/AC:H/PR:L/UI:N and only VC:L (low confidentiality impact, no integrity or availability). VulDB's exploit-maturity flag is E:P (proof-of-concept) and a POC is referenced via GitHub issue #123, but POC existence is NOT active exploitation - there is no CISA KEV listing and no EPSS score provided. The core issue (CWE-325, unsalted one-way MD5 hashing of user passwords in MD5.getMD5) is a design/crypto-hygiene weakness rather than a directly exploitable primitive: it only has value AFTER an attacker has already obtained the stored password hashes through some other vector, at which point unsalted MD5 makes offline rainbow-table/precomputed-hash cracking trivial. This dependency is exactly why VulDB assigns AC:H ('a high degree of complexity is needed... exploitability is described as difficult'). Note a minor internal tension: the description says 'the attack may be initiated remotely' (AV:N) yet the weakness is not remotely triggerable on its own - AV:N here reflects that the vulnerable web app is network-facing, not that unsalted hashing is a remote exploit. Overall: low real-world risk, defense-in-depth hardening rather than an urgent patch item.

Exploit ScenarioDerived

An attacker who has separately obtained the application's user-password table (e.g. via SQL injection, a leaked backup, or the hard-coded DB credentials tracked in sibling CVE-2026-96548) finds passwords stored as unsalted MD5 digests. Because no per-user salt is applied, the attacker runs precomputed rainbow tables or GPU brute-force against the digests and recovers plaintext passwords far faster than salted storage would allow. A proof-of-concept was published in GitHub issue #123, but no active exploitation is reported.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 23, 2026

Unsalted MD5 password hashing in sfturing hosp_order (code through commit 627f426331da8086ce8fff2017d65b1ddef384f8) leaves stored user credentials cheaply crackable if the hash store is ever exposed. The defect is not a remotely reachable primitive: per the assessed vector (CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N) an attacker with low privileges must first obtain the password digests - through a separate vulnerability, a database compromise, or a backup leak - before the missing salt provides any advantage, which is why impact is limited and complexity is high. Publicly available exploit code exists that demonstrates the weak hashing, but there is no confirmed active exploitation (no CISA KEV listing), and the project has not responded to the issue report, so no vendor-released patch is identified at time of analysis.

RemediationAI

No vendor-released patch is identified at time of analysis - the project has not responded to the issue report at https://github.com/sfturing/hosp_order/issues/123 and publishes no versioned releases, so operators must remediate in their own fork. Replace the MD5.getMD5 call path in ssm_pro/src/main/java/cn/sfturing/utils/MD5.java with a salted, memory-hard KDF such as bcrypt (cost 12+), scrypt, or Argon2id, storing the per-user salt and parameters alongside the digest; because existing rows hold unsalted MD5 values, plan a transparent migration that verifies the legacy MD5 value against the supplied password on next successful login and immediately re-hashes it with the new algorithm, understanding that until every account has logged in, legacy hashes remain crackable and must be protected as secrets. Supporting controls, with their trade-offs: restrict database and backup read access to the minimum necessary roles (limits the prerequisite exfiltration step but does not fix the hashing); force credential rotation and reuse checks for all accounts after any suspected dump (disruptive to users but invalidates already-cracked hashes); and add monitoring/alerting on bulk reads of the user table (detective only, easily bypassed by a patient attacker). Because exploitation requires prior access to the hash store, patching the hashing routine plus tightening database and backup access addresses the realistic attack chain; there is no network-level workaround for a storage-layer weakness. Consult https://vuldb.com/vuln/408954/cti and the repository for updates on the unresolved upstream report.

Affected VersionsENISA

hosp_order 627f426331da8086ce8fff2017d65b1ddef384f8

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

The affected code is the Java utility class cn.sfturing.utils.MD5 in ssm_pro/src/main/java/cn/sfturing/utils/MD5.java, part of the SSM (Spring + Spring MVC + MyBatis) backend of the hosp_order hospital ordering application. The reported weakness maps to CWE-325 (Missing Cryptographic Step): the password handler applies a single, unsalted MD5 pass over user credentials, so no per-user salt and no work factor are introduced anywhere in the storage path. MD5 is a fast, collision-broken digest designed for integrity checks, not password storage; without a salt, identical passwords yield identical digests, enabling precomputed rainbow-table lookups and cross-account correlation, and GPU-driven brute force makes short or dictionary passwords recoverable in seconds to hours. Because the flaw lives in the hashing routine rather than in an exposed endpoint, the CPE/version data for the project is effectively unresolvable - hosp_order follows a rolling-release model and the advisory lists only the repository commit 627f426331da8086ce8fff2017d65b1ddef384f8 as the affected revision, so no discrete vulnerable or fixed version range can be enumerated.

Know when Java 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

Vendor (vuldb) PRIMARY 1.3 LOW
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P
vuln.today AI 3.1 LOW

AC:H and PR:L because the flaw only aids cracking of already-obtained hashes (not a standalone remote trigger); C:L for eventual password recovery; no integrity or availability impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (vuldb).

CVSS VectorVendor: vuldb

Attack Vector
Network
Attack Complexity
High
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A vulnerability was identified in sfturing hosp_order up to 627f426331da8086ce8fff2017d65b1ddef384f8. The affected element is the function MD5.getMD5 of the file ssm_pro/src/main/java/cn/sfturing/utils/MD5.java of the component User Password Handler. The manipulation leads to one-way hash without salt. The attack may be initiated remotely. A high degree of complexity is needed for the attack. The exploitability is described as difficult. The exploit is publicly available and might be used. This product uses a rolling release model to deliver continuous updates. As a result, specific version information for affected or updated releases is not available. The project was informed of the problem early through an issue report but has not responded yet.

Threat Intelligence Overview

EPSS Score
0.2%
Top 96% exploitable
Prevalence
Rare
obscure single-developer GitHub hospital-order app, no enterprise footprint
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

6
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +6
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy