AWS Kiro Flaw Turned Hidden Web Text Into Code Execution

Brendan Smith
Brendan Smith - Cybersecurity Analyst
7 Min Read
Hidden web text crossing Kiro’s approval boundary and rewriting mcp.json to run code.
A patched Kiro IDE flaw allowed hidden web instructions to rewrite MCP configuration and run code without a separate approval.

AWS deployed a fix for a Kiro IDE vulnerability that could turn hidden instructions on a fetched web page into code running on a developer’s computer. Joint research by Kodem Security and Intezer showed that Kiro could rewrite its own ~/.kiro/settings/mcp.json file and automatically start an attacker-defined MCP server without asking the user to approve the file change or command.

The researchers published the findings on July 19, 2026. They confirmed the issue in Kiro IDE 0.9.2 on macOS and 0.10.16 on Ubuntu, and verified that version 0.11.130 contains the fix. AWS did not assign this issue a CVE. The report describes a controlled proof of concept, not a known campaign against Kiro users.

Who needs to act

Question Verified answer
Which builds were vulnerable in testing? Kiro IDE 0.9.2 and 0.10.16. This does not prove that every intervening build behaved identically.
Which build is confirmed fixed? 0.11.130. Install the latest available Kiro release rather than stopping at that build.
What triggered the flaw? Kiro processed attacker-controlled text from a web fetch, search result, documentation page, or another external source.
What could run? An attacker-defined MCP server command with the current user’s privileges.
Was exploitation observed? No public in-the-wild exploitation was reported. The researchers used a local callback in a controlled test.

The highest-risk workflow was asking Kiro to fetch or summarize unfamiliar documentation while an older build was installed. Developers who keep repository tokens, package-registry credentials, cloud profiles, signing material, or production access in the same user environment should treat an unexplained MCP entry as a possible credential-exposure event.

How the approval boundary failed

Kiro uses MCP configuration files to define external tools and the commands used to start them. Its official documentation says the IDE watches global and workspace mcp.json files and reconciles running servers when those files change.

  1. A user asked Kiro to fetch a page or search external content.
  2. The returned page contained instructions hidden from the human reader, such as white one-pixel text.
  3. Kiro treated that content as instructions and used its file-writing capability to change ~/.kiro/settings/mcp.json.
  4. The configuration watcher reloaded the file and started the newly defined MCP server.
  5. The server command ran with the developer’s account privileges.

The user still had to approve fetching an unfamiliar URL in the researchers’ demonstration. The dangerous gap came afterward: Kiro did not request a separate, meaningful approval for the configuration write or the resulting command. The proof of concept was nondeterministic, but it succeeded within one or two attempts during testing.

This trust-boundary problem differs from the recent Cursor repository flaw that could launch git.exe, but both show why an ordinary developer action should not silently become host code execution. It also resembles the broader risk of AI configuration poisoning in developer ecosystems.

What Kiro users should check now

  1. Update Kiro to the latest release and restart it. Version 0.11.130 is the first build the researchers explicitly confirmed as patched.
  2. Close Kiro before reviewing MCP configuration. Preserve a copy of unexpected files and note their modification times before changing anything.
  3. Inspect global and workspace MCP files. Check ~/.kiro/settings/mcp.json and each project’s .kiro/settings/mcp.json. Review agent-specific configuration too if you use custom agents.
  4. Verify every server entry. Look for unknown names, inline Node.js or shell commands, unfamiliar URLs, or unexpected uses of curl, bash, npx, uvx, or downloaded scripts.
  5. Correlate timestamps and processes. Compare configuration changes with the pages Kiro fetched. Check for unfamiliar child processes, outbound connections, persistence, and repository changes.
  6. If an unknown command ran, isolate the host. Revoke GitHub, package-registry, cloud, CI/CD, and other developer tokens from a clean device. Rotate exposed keys, invalidate sessions, and review repositories and build logs for unauthorized changes.

Updating closes the reported path, but it cannot remove a payload that already ran or recover a secret that already left the machine. Do not delete an unfamiliar entry and assume the incident is over.

What this flaw does not mean

This was not a passive browser zero-click: simply viewing a web page in a normal browser was not the demonstrated trigger. Kiro had to ingest the attacker-controlled content through an agent workflow. A web fetch also did not guarantee compromise because model behavior was nondeterministic.

The research does not establish active exploitation, and the issue has no CVE. Those limits matter, but they do not reduce the value of checking the exact trust file because a successful attempt could run any command available to the current user.

FAQ

Is Kiro safe after updating?

The researchers confirmed the flaw fixed in Kiro IDE 0.11.130. Install the latest release. If an older build processed untrusted web content, still inspect MCP configuration and credentials because an update cannot undo earlier code execution.

Should I delete every MCP server?

No. MCP servers can be legitimate developer tools. Verify the command, arguments, source, and owner of each entry; preserve evidence and disable only entries you cannot explain while investigating.

References

  1. Nicole Fishbein and Eran Segal, “When the AI Edits Its Own Trust Boundary: Remote Code Execution Vulnerability in AWS’s Agentic IDE,” Kodem Security and Intezer, July 19, 2026.
  2. Kiro, “MCP configuration,” official documentation, accessed July 21, 2026.
Share This Article
Cybersecurity Analyst
Follow:
Brendan Smith has spent over 15 years knee-deep in cybersecurity, chasing down malware from the gritty reverse-engineering of old-school trojans all the way to wrangling full-blown incident responses for small-to-medium businesses that couldn’t afford a full-blown breach. Over at Gridinsoft, he’s the guy piecing together those double-checked guides on nasty stuff like AsyncRAT ransomware—take last year, for instance, when his breakdowns caught more than 200 sneaky variants right in live scans, knocking user cleanup jobs down by a solid 40% and saving folks hours of headache.
Leave a Comment

AI Assistant

Hello! 👋 How can I help you today?