Cloak PBKDF2 field ignores the configured iteration count and runs only :size rounds
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| danielberkompas | cloak_ecto | unaffected |
|
||||||
| danielberkompas | cloak_ecto | unaffected |
|
||||||
| danielberkompas | cloak | unaffected |
|
||||||
| danielberkompas | cloak | unaffected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Danielberkompas | Cloak |
|
||||||||||||
| Danielberkompas | Cloak |
|
||||||||||||
| Danielberkompas | Cloak Ecto |
|
||||||||||||
| Danielberkompas | Cloak Ecto |
|
Vendor Workaround
Override dump/1 in the field module that uses Cloak.Ecto.PBKDF2, so that it calls :pbkdf2.pbkdf2/5 with the configured :iterations and :size. Then recompute all stored hashes, because the existing values no longer match.
No CVSS v3.1
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.245% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Use of Password Hash With Insufficient Computational Effort vulnerability in danielberkompas cloak_ecto and danielberkompas cloak allows an attacker who holds the hashed values and the configured secret to brute-force low-entropy plaintexts much faster than configured. The dump/1 callback that Cloak.Ecto.PBKDF2 (Cloak.Fields.PBKDF2 in cloak before the Ecto code moved to cloak_ecto) injects into a field module calls :pbkdf2.pbkdf2/4 with config[:size] in the iteration-count position. The :iterations setting is validated but never used. With the cloak_ecto defaults (iterations: 600_000, size: 32) each hash runs 32 PBKDF2 rounds instead of 600,000, so offline guessing of values such as email addresses costs about 18,750 times less than configured. This issue affects cloak_ecto: from 1.0.0-alpha.0 onward; cloak: from 0.7.0 before 1.0.0-alpha.0. | |
| Title | Cloak PBKDF2 field ignores the configured iteration count and runs only :size rounds | |
| First Time appeared |
Danielberkompas
Danielberkompas cloak Danielberkompas cloak Ecto |
|
| Weaknesses | CWE-916 | |
| CPEs | cpe:2.3:a:danielberkompas:cloak:*:*:*:*:*:*:*:* cpe:2.3:a:danielberkompas:cloak_ecto:*:*:*:*:*:*:*:* |
|
| Vendors & Products |
Danielberkompas
Danielberkompas cloak Danielberkompas cloak Ecto |
|
| References |
|
|
| Metrics |
cvssV4_0
|