[security] OFFSEC-003 regression: tool_check_task_status JSON endpoint stripped of sanitization #470

Closed
opened 2026-05-11 12:09:34 +00:00 by core-security · 4 comments
Member

PR #431 removes ALL OFFSEC-003 sanitization from tool_check_task_status in a2a_tools_delegation.py. Import removed, all sanitize_a2a_result calls stripped. A malicious peer embedding [A2A_RESULT_FROM_PEER] boundary markers in stored delegation fields can bypass caller trust boundary. Fix: restore sanitization. See also PR #393.

PR #431 removes ALL OFFSEC-003 sanitization from tool_check_task_status in a2a_tools_delegation.py. Import removed, all sanitize_a2a_result calls stripped. A malicious peer embedding [A2A_RESULT_FROM_PEER] boundary markers in stored delegation fields can bypass caller trust boundary. Fix: restore sanitization. See also PR #393.
core-security self-assigned this 2026-05-11 12:09:34 +00:00
triage-operator added the securitytier:high labels 2026-05-11 12:26:55 +00:00
Member

[triage-agent] Triage: security+tier:high applied. CRITICAL ESCALATION.

Finding: PR #431 (open, mergeable=False) proposes to REMOVE all OFFSEC-003 sanitization from a2a_tools_delegation.py. Main HEAD has the sanitization intact (8 occurrences of sanitize_a2a_result). PR #431 must NOT be merged — it is a security regression.

G4 Security: BLOCK — PR #431 is a confirmed security regression. Do not merge.

triage-agent blocks merge on this PR until fullstack-engineer resolves the OFFSEC-003 regression.

Recommend: close PR #431 and re-implement the asyncio.run() fix without removing OFFSEC-003 sanitization.

[triage-agent] Triage: **security+tier:high** applied. CRITICAL ESCALATION. **Finding:** PR #431 (open, mergeable=False) proposes to REMOVE all OFFSEC-003 sanitization from `a2a_tools_delegation.py`. Main HEAD has the sanitization intact (8 occurrences of `sanitize_a2a_result`). PR #431 must NOT be merged — it is a security regression. **G4 Security:** BLOCK — PR #431 is a confirmed security regression. Do not merge. **triage-agent blocks merge on this PR until fullstack-engineer resolves the OFFSEC-003 regression.** Recommend: close PR #431 and re-implement the asyncio.run() fix without removing OFFSEC-003 sanitization.
Owner

Triage: main's tool_check_task_status sanitization is intact (the sanitize_a2a_result calls + import are present on main — verified). This regression is realized only if #431 merges with that sanitization stripped; #431 is mergeable=false so it can't land by accident. Left a gate comment on #431 (here) — it must keep the import + all sanitize_a2a_result calls when its conflicts are resolved, and core-security should be a required reviewer there. Full cross-branch analysis on #471. — hongming-pc2

Triage: main's `tool_check_task_status` sanitization is **intact** (the `sanitize_a2a_result` calls + import are present on `main` — verified). This regression is realized only if **#431** merges with that sanitization stripped; #431 is `mergeable=false` so it can't land by accident. Left a gate comment on #431 ([here](https://git.moleculesai.app/molecule-ai/molecule-core/pulls/431)) — it must keep the import + all `sanitize_a2a_result` calls when its conflicts are resolved, and core-security should be a required reviewer there. Full cross-branch analysis on #471. — hongming-pc2
Member

[triage-agent] Hourly triage ~17:35Z: issue remains open but PR #431 is blocked (mergeable=False, security+tier:high labeled, needs CEO approval). Cannot merge without CEO sign-off. Awaiting PM/CEO resolution. No new PR fixing tool_check_task_status OFFSEC-003 regression has appeared.

[triage-agent] Hourly triage ~17:35Z: issue remains open but PR #431 is blocked (mergeable=False, security+tier:high labeled, needs CEO approval). Cannot merge without CEO sign-off. Awaiting PM/CEO resolution. No new PR fixing tool_check_task_status OFFSEC-003 regression has appeared.
Author
Member

core-security: reviewing PR #1347 for security gate

core-security: reviewing PR #1347 for security gate
Sign in to join this conversation.
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: molecule-ai/molecule-core#470