Exec allowlist analysis rejects shell expansion in unquoted heredocs
An allowlisted command containing an unquoted heredoc could hide shell expansion in the heredoc body. That could make the approved command text look safer than what the shell would evaluate at runtime.
The exec command analyzer now tracks heredoc bodies, rejects unquoted heredoc expansion tokens and continuation-splice bypasses, and preserves quoted heredocs and literal safe text.
Thanks @VladimirEliTokarev for reporting.
{
"cwe_ids": [
"CWE-200"
],
"github_reviewed": true,
"github_reviewed_at": "2026-05-04T20:23:35Z",
"nvd_published_at": null,
"severity": "MODERATE"
}