Xxyopen novel through 3.5.0 contains a weak password hashing vulnerability that allows attackers to recover plaintext passwords because UserServiceImpl.register() stores unsalted MD5 digests in user_info.password. Attackers who obtain the password column through a database leak or backup exposure can crack hashes with precomputed tables or GPU brute force and reuse credentials.
{
"cna_assigner": "VulnCheck",
"cwe_ids": [
"CWE-916"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/110xxx/CVE-2026-110104.json"
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-110104.json"
[
{
"deprecated": false,
"digest": {
"line_hashes": [
"56099671504372354517768152191897376978",
"142448649225651592232449818414072903711",
"224919776169991478922614743013747057562",
"51275458508038979269447385129703310068",
"179483586002032425675274286263827876563",
"21352932886832434416640675461897768268",
"32073621272666628192178757795640107061",
"256964412734369335856345935733661721579",
"246349448903627111728113792868317487965",
"167801772419139885881161800420019931225",
"283349861433145000441912214303096128466",
"219621319150188036178789136565925094928"
],
"threshold": 0.9
},
"id": "CVE-2026-110104-5ba0ff17",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/201206030/novel/commit/b2c034004883a9f3c69f8da4689d897cb054491a",
"target": {
"file": "src/main/java/io/github/xxyopen/novel/controller/front/HomeController.java"
}
}
]
"2026-10-15T07:07:25Z"