Found by us. Fixed by them.

Vulnerabilities discovered during engagements and disclosed upstream under coordinated disclosure. Vendor names withheld where fixes are still rolling out.

2026
YEG-2026-021CI runner iam:PassRole to production deploy rolecriticalfixed 26-11-02

Widely-deployed CI platform allowed job tokens to assume production deploy roles via an unscoped PassRole permission. Reported with replayed chain; vendor scoped the boundary policy.

YEG-2026-018Indirect prompt injection via shared-document RAG indexhighfixed 26-10-27

A support-agent RAG index accepted tenant-writable documents; planted text directed the agent to read files outside its tool scope. Fix: instruction/data separation plus per-tool allowlists.

YEG-2026-014Review-app preview environments retaining live task credentialshighfixed 26-10-19

Merged-and-closed preview environments stayed routable with task IAM credentials intact — eight-month-old previews held production-adjacent access. Vendor added automatic TTL deprovisioning.

YEG-2026-009Legacy status panel serving unauthenticated .git mirrormediumfixed 26-09-30

Vendor status appliance exposed /.git/ on EOL'd deployments, yielding full source including a live OAuth client_secret. Coordinated rotation + patch across affected installs.

YEG-2026-006Agent tool boundary: ungated outbound webhook writemediumfixed 26-09-12

A customer-agent tool could issue arbitrary POSTs to an internal webhook, allowing attacker-controlled content on the status page. Human-approval gate added before outbound calls.

PROCESS

How disclosure works here.

Every advisory follows the same path: verified chain → vendor report with evidence → 90-day coordinated window → public writeup only after fix ships. Researchers reporting to us get the same courtesy — see responsible disclosure.