CVE-2026-82579: AshAi tool loop never terminates when all tool calls are filtered out, enabling denial of service

Published Aug 31, 2026
·
Updated

Loop with Unreachable Exit Condition (Infinite Loop) vulnerability in ash-project ashai allows an attacker who can influence a model's output to hang the tool loop and drive unbounded, repeated model requests.

AshAi.ToolLoop classifies a model response of :toolcalls, then filters the calls through normalizetoolcalls/2 and unprocessedtoolcalls/2. Both can empty the list: a call missing a valid name, or one reusing a toolcallid that already has a result in history, is dropped. With an empty list the loop appended nothing and recursed with a byte-identical message list, so the conversation never advanced and the same request was re-sent every iteration. Under the supported maxiterations: :infinity this never terminated; otherwise it exhausted the full budget. Prompt-injected content can make the model re-emit a spent toolcallid. The fix treats an empty post-filter list as terminal.

This issue affects ashai: from 0.6.0 before 1.0.0.

Affected Software

1 affected component
ash-project/ash_ai>=0.6.0<1.0.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade ash-project ash_ai to a version that resolves this vulnerability.

    Fixed in 1.0.0
  2. Configuration

    Update AshAi.ToolLoop logic so that after normalize_tool_calls/2 and unprocessed_tool_calls/2 filtering, an empty post-filter list is treated as a terminal condition (stop recursing) instead of re-sending the same request indefinitely.

    AshAi.ToolLoop terminal condition when post-filter tool calls list is empty = terminate

Event History

Aug 31, 2026
CVE Published
via MITRE·01:07 AM
Data Sourced
via MITRE·01:07 AM
DescriptionWeakness

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203