Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain accounts table via DB access or backup
-
ExploitExtract unsalted SHA-1 password digests
-
ExecutionCrack offline with rainbow tables or GPU brute force
-
ImpactAuthenticate to JuggleIM admin console
Vulnerability Assessment
| Weakness |
CWE
|
| Exploitation Conditions | Exploitation is contingent on the attacker first obtaining the JuggleIM accounts table - specifically through direct database access or access to database backups - since the vulnerable artifact is the at-rest admin-console password hash produced by tools.SHA1 in services/accountservice.go (im-server/imserver-console ≤ 1.8.16). The limiting factors are substantial: an attacker needs prior read access to the database or its backups (not provided by this flaw alone), and must then succeed at offline cracking. Cracking is made trivial by the specific weaknesses here - SHA-1 is fast and the digests are UNSALTED, defeating per-account cost and enabling precomputed rainbow-table lookups. There is no required user interaction and no authentication to the hashing component itself, but absent a database/backup exposure the flaw is not directly reachable. |
| Impact | This is a moderate, conditional risk rather than an urgent internet-facing emergency. The input CVSS 4.0 vector (AV:N/AC:H/PR:N/UI:N/VC:H) yields 8.2, but the high score is driven largely by the network/no-privileges metrics while the AC:H (high attack complexity) and the description reveal the real gating factor: exploitation only matters AFTER an attacker has already obtained the accounts table via database access or backups. In other words, the weak unsalted SHA-1 hashing (CWE-916) is a post-compromise amplifier - it converts a database exposure into full admin-console credential compromise - not a standalone remote entry point. No EPSS score was provided, there is no CISA KEV listing, and no public exploit code was identified; the referenced hackmd write-up and GitHub source lines are a technical analysis of the flawed code (services/accountservice.go using tools.SHA1), not a weaponized exploit. The AV:N label is therefore somewhat optimistic for the overall attack: the password hashes themselves are not network-reachable without a prior breach, so defenders should treat this as 'defense-in-depth failure that worsens any DB leak' rather than 'remotely exploitable by anyone.' Priority should scale with how exposed the backing database/backups are. |
| Exploit ScenarioDerived | An attacker who gains read access to the JuggleIM database (via SQL injection elsewhere, a misconfigured/exposed instance, or a leaked/stolen backup) dumps the accounts table and finds admin console passwords stored as unsalted SHA-1 digests. Because the hashes are unsalted, the attacker cracks them offline using precomputed rainbow tables or GPU brute force and then logs into the admin console with the recovered credentials. No public exploit tool is required - only standard password-cracking utilities. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Weak password hashing in JuggleIM im-server and its imserver-console through 1.8.16 stores admin-console credentials as unsalted SHA-1 digests in the accounts table, allowing an attacker who first obtains the database or its backups to crack those passwords offline with precomputed rainbow tables or GPU brute force. The issue is conditional rather than directly network-reachable, because it requires prior read access to the database or backup files, and no public exploit identified at time of analysis. The independent assessment rates it a moderate, conditional risk with high attack complexity and confidentiality-only impact.
RemediationAI
No vendor-released patch was identified at time of analysis. Until an official fix is available, the primary compensating control is to prevent the accounts table from being read: restrict network and credential access to the JuggleIM database so only the application service can reach it, and enforce the same restriction on database backups, including encrypting backups at rest and tightly scoping who can restore them; the trade-off is operational overhead and potential disruption to administrative backup workflows. Force a reset of all admin-console passwords to long, high-entropy, unique values; this defeats precomputed rainbow-table lookups but does not fully stop targeted GPU brute force against weak passwords, so length and randomness matter. Where source changes are feasible, replace tools.SHA1 in services/accountservice.go with a salted adaptive KDF such as bcrypt, scrypt, or Argon2, and invalidate existing hashes on migration; this requires code changes plus a forced credential reset and is not a drop-in configuration toggle. Additional hardening includes limiting admin-console exposure to trusted networks and monitoring database and backup systems for unauthorized read activity. Advisory references: https://www.vulncheck.com/advisories/juggleim-im-server-through-1.8.16-weak-password-hashing-via-unsalted-sha-1 and https://github.com/juggleim/im-server.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is an instance of CWE-916 (Use of Password Hash With Insufficient Computational Effort) in JuggleIM's account service. Instead of a salted, adaptive password-hashing function such as bcrypt, scrypt, or Argon2, the code uses tools.SHA1 to produce the digest stored for admin-console accounts; the affected implementation is visible in imserver-console v1.0.10 (services/accountservice.go, line 95), and the seed SQL for im-server v1.8.16 (sql/imserver.sql, lines 3-15) references a default admin credential. Because SHA-1 is fast and the hashes are unsalted, identical passwords yield identical digests, per-account cracking cost is not increased, and precomputed rainbow tables become directly usable, though the flaw does not by itself expose the accounts table. The CPE cpe:2.3:a:juggleim:juggleim:*:*:*:*:*:*:*:* confirms the affected product family, and the reported CVSS 4.0 vector of 8.2 (AV:N/AC:H/PR:N/UI:N/VC:H/VI:N/VA:N) is consistent with a high-impact confidentiality weakness that requires a preceding, non-trivial condition. The CVSS vector indicates no authentication is required (PR:N) for the hashing component itself, but the real-world prerequisite identified in the independent assessment is prior database or backup read access, without which the vulnerable hash is not directly reachable; a public technical write-up on the default admin credential is also referenced.
Know when Juggleim 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
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Exploitation requires first obtaining the accounts table and then cracking SHA-1 hashes, so AC:H; it exposes only credentials (C:H, I:N, A:N) and needs no authentication to the hashing routine, so PR:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
JuggleIM im-server through 1.8.16 contains a weak password hashing vulnerability that stores admin console passwords as unsalted SHA-1 digests via tools.SHA1 in services/accountservice.go. Attackers who obtain the accounts table through database access or backups can crack console passwords using precomputed tables or GPU brute force.
Executive ViewAI
Organizations running JuggleIM im-server or imserver-console through 1.8.16 are exposed to a conditional but high-severity weakness in how administrator credentials are stored, meaning a database or backup exposure could let attackers recover admin passwords and gain control of the messaging platform. Leadership should care because compromise of the admin console can lead to unauthorized access to communications, configuration changes, and sensitive data, with added compliance and reputational risk. No public exploit identified at time of analysis, and the issue requires prior read access to the database or backups, but the absence of a vendor-released patch raises the urgency for compensating controls.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict read access to the accounts database and backups to the minimum necessary personnel; encrypt backups at rest and in transit; rotate all admin-console credentials and eliminate password reuse; enable MFA where supported; monitor database and backup access for anomalous reads or exfiltration; consider an application-level migration to bcrypt, Argon2, or another salted adaptive hashing scheme if supported; and segment the im-server and imserver-console from untrusted networks.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
EUVD-2026-102484
GHSA-53gf-xhq2-c3j8
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB