Grafana MCP has come under security scrutiny after researchers found a dangerous combination of unauthenticated tool access and server-sid...
Opening a folder should not be a security event. For users of at least seven popular AI coding agents, until recently, it could be one. A newly documented set of vulnerabilities, tracked under the name GitSpawn, shows that pointing an AI coding assistant at a project folder was enough to hand an attacker code execution on the developer's own machine. No prompt had to be typed. No permission dialog had to be clicked. In some cases, the user had not even logged in yet.
The affected tools include Anthropic's Claude Code, OpenAI's Codex, Cursor, Block's Goose, Nous Research's Hermes Agent, Alibaba's Qwen Code, and xAI's Grok Build. These products sit on an enormous number of developer machines. Claude Code's npm package sees more than 77 million downloads a month. The tools examined most closely in the disclosure carry a combined GitHub following approaching half a million stars. This flaw reached deep into the software supply chain.
What actually happens when you open a folder
An AI coding agent needs context the moment it launches inside a project: what branch is checked out, which files changed, what the codebase looks like. The fastest way to get that information is to ask git, the version control system nearly every software project runs on. So these agents run background commands like `git status` or `git diff` as soon as a folder opens, often before the assistant has said anything to the user.
That part is normal. The danger sits in a git feature called `core.fsmonitor`, a performance setting built to let large repositories speed up status checks by handing file-change detection to an external helper program instead of scanning every file each time. Git learns which helper to run by reading the repository's own configuration file, `.git/config`. That file ships with the project. It does not live on the user's machine.
Anyone who builds a repository controls that file, which means anyone who builds a repository can set `core.fsmonitor` to run whatever command they want. Nearly every git command that touches a project's working files triggers something called an index refresh, and that refresh is what reads the setting and runs it. So the moment an AI coding agent runs an ordinary git command inside a booby-trapped folder, git executes the attacker's command on the developer's machine, under the developer's own account. Because the agent's own code is making that subprocess call rather than something routed through its interface, none of the approval prompts or sandboxing built into these tools ever sees it happen.
There is a limit worth knowing. A standard `git clone`, `fetch`, or `pull` will not trigger this, because those operations do not carry the repository's local configuration along with them. The malicious repository has to reach a victim as a set of files with its `.git` directory already inside: a zipped folder sent over email, a shared drive, a synced folder, a USB stick passed at a meeting. Developers, contractors, and consultants hand off projects this way constantly, which is what makes the delivery method plausible.
Which vendors fixed it, and which did not
Eight distinct findings were reported privately across the seven agents before this went public. Four of them were still unpatched at the time of publication.
Goose, maintained by Block, shipped a fix in version 1.44.0. The issue was catalogued as CVE-2026-72718, with a severity score of 7.0. Cursor and OpenAI's Codex both carried variants of the same flaw and have since patched them, though in both cases the vulnerability had already reached the vendors through other researchers' independent reports. Anthropic fixed the core.fsmonitor path in Claude Code with version 2.1.196. A second issue in the same product, tied to the `claude ultrareview` command and a different git configuration key, was still working as of version 2.1.252 at publication time. That configuration key has not been made public while the issue stays open, so as not to hand out a working template.
Two vendors had shipped nothing. Alibaba's security response center accepted the report on Qwen Code but had not resolved it by publication. xAI's Grok Build remained vulnerable through version 1.0.13; an earlier, related report had been closed by the company as merely informative before this disclosure connected it to the same bug. Hermes Agent's maintainers never triaged the report despite six separate contact attempts across five channels. The flaw was eventually assigned CVE-2026-71963 by VulnCheck, an independent numbering authority that can step in when a vendor stays silent.
This bug has been seen before
The shape of GitSpawn is not new to anyone who has followed git security for a while. Independent researcher Justin Steven documented abuse of the fsmonitor hook back in 2022. Visual Studio Code built its workspace trust model in 2021 to stop untrusted folders from running code the second they were opened in an editor. AI coding agents brought a version of that same exposure back by running git commands in the background before any of those trust protections had a chance to apply.
That is the part worth sitting with. Nothing about how these models reason or respond caused this. The exploit runs entirely in ordinary software plumbing, the subprocess call an agent makes to figure out where it is, firing before any of the safeguards a user assumes are in place actually engage.
What to do about it
If you receive a project as raw files rather than through a direct git clone, whether by email, shared drive, or a USB stick, check `.git/config` before opening it in an AI coding agent or any development tool. Anything in that file that names an external program to run deserves a second look.
If you build one of these tools, the fix is narrow: disable risky configuration keys like `core.fsmonitor` on every background git call, for example by running commands with the flag `-c core.fsmonitor=false` instead of trusting whatever the repository hands you.
AI coding agents keep taking on components they did not write and did not choose: plugins, extensions, connections to outside services, most of which arrive as files carrying their own settings and get trusted the moment they load. GitSpawn shows what happens when that trust runs ahead of the checks meant to govern it. The next version of this bug probably will not look like a git command at all.
The security flaw is tracked as CVE-2026-19949, it impacts the Backup plugin and All-in-One WP Migration, which is utilized by over five million active wordpress installations. The plugin lets site owners to migrate, import, export, and backup sites, this consists of media files, themes, plugins, and databases.
As per Bleeping Computer, the flaw is a second-order SQL injection vulnerability that could permit an unauthorized threat actor to run malicious code on a compromised site. The flaw impacts variants 7.109 and earlier and has been given high severity, with a 8.8 CVSS score.
The vulnerability was found by security expert Jack Taylor, who reported the incident to cybersecurity company Wordfence, which investigated and disclosed the flaw. On August 15, 2026, Wordfence informed the plugin’s developer, Servmask, which released variant 7.220 on August 20 to patch the flaw.
“On August 14th, 2026, we received a submission for an Unauthenticated Second-Order SQL Injection vulnerability in All-in-One WP Migration and Backup, a WordPress plugin with more than 5 million active installations,” Wordfence reported.
Contrary to flaws that can be abused immediately, this vulnerability consists of an extra step. Threat actors first place specially tailored data on a compromised website.
The malicious information remains latent until a website admin does a backup restoration of the archive. “This vulnerability makes it possible for unauthenticated attackers to inject SQL that is later executed when a site administrator performs an archive restore, which can be used to leak the plugin’s secret key and ultimately achieve remote code execution, leading to complete site takeover,” Wordfence said.
In the restoration stage, the stored malicious data can be used as SQL commands which allows threat actors to take out sensitive data from the website’s database.
An important target is the plugin’s secret ai1wm_secret_key.. If a threat actor accesses this key, it can possibly be used to move from database access to remote code execution (RCE), allowing the threat actor more control over the compromised website.
Through RCE, threat actors could install malicious code, change website files, and create backdoors.
ServMask addressed the CVE-2026-19949 in variant 7.110 of the plugin. Users are advised to update their websites to the latest patched versions of Backup and All-in-One WP Migration.
On August 20, ServMask addressed the CVE-2026-19949 vulnerability in version 7.110 of the plugin.
A Russian national has been extradited to the United States to face federal charges over an alleged malware campaign that targeted approximately 80,000 users of a freelance employment platform.
Searzhudin Tamirlanovich Aktulaev, 40, is accused of using hundreds of fraudulent accounts to distribute malicious Microsoft Excel attachments between June 2016 and November 2017. Prosecutors allege that the attachments downloaded remote-access malware capable of controlling victims’ computers and stealing information.
The indictment was filed under seal on June 1, 2021. Aktulaev was arrested in Cyprus in May 2025 and extradited to the United States on August 28, 2026, according to the US Department of Justice.
He appeared in federal court in San Francisco on August 31 and was remanded to federal custody. The indictment was unsealed the same day.
According to prosecutors, Aktulaev and his alleged co-conspirators exploited the messaging system of a well-known freelance employment technology company located in California’s Northern District.
The DOJ did not publicly identify the company.
The conspirators allegedly created approximately 255 fake user accounts and used them to send messages containing malicious Excel attachments to around 80,000 freelancers.
Opening an attachment prompted the recipient to enable or execute an embedded macro. If the user complied, the macro downloaded malware from the internet.
This distinction is important: the indictment alleges that malware was distributed to approximately 80,000 users, but the DOJ announcement does not establish that every recipient opened the attachment or became infected.
Freelancers can be particularly exposed to attachment-based attacks because their work routinely involves receiving documents from unfamiliar prospective clients. A spreadsheet presented as a project brief, financial record or work assignment may therefore appear consistent with an ordinary business request.
The indictment identifies two malware families allegedly used in the campaign: TVRAT and DarkVNC.
TVRAT, also known as TVSPY or TeamSpy, incorporated or abused components associated with TeamViewer, a legitimate remote-administration product. DarkVNC provided similar hidden remote-control capabilities using Virtual Network Computing technology.
Prosecutors allege that the malware allowed the conspirators to control infected computers and transfer stolen data to command-and-control servers.
The use of recognizable remote-access components can help criminals disguise malicious activity as legitimate administrative traffic. It can also make detection more difficult when organizations permit remote-support products in their environments.
The allegations do not indicate that TeamViewer or VNC Viewer participated in the operation. The case concerns malware that allegedly misused remote-administration technology.
Court allegations state that domains supporting the command-and-control infrastructure were purchased using virtual currency. At least one command-and-control domain was hosted in the United States, and thousands of computers infected with TVRAT reportedly connected back to it.
Investigators discovered a database on the command-and-control infrastructure containing information associated with thousands of victims.
The DOJ also said a shared document stored in an email account used during the alleged criminal activity contained e-commerce login credentials and personally identifiable information belonging to hundreds of people.
Prosecutors allege that information stolen through TVRAT and DarkVNC was collected from the command-and-control servers and used by Aktulaev and his co-conspirators to conduct fraud and other criminal activity.
Approximately half of the identified victims were located in the United States. The DOJ said many—not all—of those US victims were in the Northern District of California, where the federal case is being prosecuted.
The indictment charges Aktulaev with conspiracy, aggravated identity theft and transmitting code or commands that caused damage to protected computers. It also includes allegations involving wire fraud, unauthorized computer access and obtaining information or value from compromised systems.
The most serious listed offense, conspiracy to commit wire fraud, carries a maximum potential sentence of 20 years in prison. A charge involving intentional damage to protected computers carries a maximum of 10 years, while aggravated identity theft can result in a mandatory consecutive two-year sentence for each conviction.
These are maximum statutory penalties rather than a predicted sentence. Any punishment would depend on which charges, if any, result in conviction and the federal court’s consideration of applicable sentencing rules.
Aktulaev is scheduled to appear before US District Judge Donato on October 5, 2026, for a status conference.
The FBI investigated the case, which is being prosecuted by the National Security, Cyber, and Special Prosecutions Section of the US Attorney’s Office for the Northern District of California. The Justice Department’s Office of International Affairs secured the extradition from Cyprus.
The alleged campaign operated from 2016 to 2017. The indictment was filed in 2021, approximately four years after the campaign ended—not four years after Aktulaev’s arrest.
Aktulaev was arrested in Cyprus in May 2025 and extradited more than a year later. The DOJ has not explained why the indictment remained under seal or provided details about the extradition proceedings.
Because the case is at the indictment stage, all described conduct remains an allegation. Aktulaev is presumed innocent unless prosecutors prove the charges beyond a reasonable doubt.
An international public-private operation has disrupted Sality, a peer-to-peer botnet that remained active for more than two decades, by seizing domains and redirecting infected computers away from infrastructure controlled by its operator.
The coordinated action took place on August 31, 2026, and involved authorities in the United States, Bulgaria, Hungary and Romania. CrowdStrike and the Shadowserver Foundation provided technical assistance, while Europol and Eurojust supported the international coordination.
According to the US Department of Justice, the DOJ, FBI and the Defense Criminal Investigative Service seized Sality-linked domains in the United States. European authorities took action against additional domains hosted in Bulgaria, Hungary and Romania.
CrowdStrike’s Counter Adversary Operations team simultaneously carried out a peer-to-peer sinkholing operation designed to separate infected computers from the botnet’s operator.
The action disabled Sality’s current command channel, but it did not automatically remove malware from compromised computers.
First observed in 2003, Sality began as a polymorphic file-infecting malware family. It attached malicious code to executable files and could spread through network shares, removable drives and file-sharing systems.
Sality eventually developed into a decentralized botnet in which infected computers communicated directly with one another. Unlike a conventional botnet with one central command-and-control server, Sality’s peer-to-peer architecture did not present investigators with a single server that could be seized to disable the entire operation.
CrowdStrike said two incompatible Sality networks, known as versions 3 and 4, remained active until the disruption. Although they used the same underlying codebase and were operated by the same threat actor, the networks used different protocol versions and cryptographic keys.
The botnet’s main function was to deliver additional malicious software. During its long history, Sality distributed malware associated with credential theft, spam, proxy services, network exploitation and distributed denial-of-service attacks.
For approximately the past eight years, CrowdStrike said its primary payload was EggJagger, a clipboard-hijacking tool that monitored devices for copied cryptocurrency wallet addresses. When it detected a Bitcoin or Ethereum address, the malware replaced it with an address controlled by the attacker.
CrowdStrike estimates that at least $150,000 in cryptocurrency was stolen through EggJagger, although other malware distributed through Sality may have produced additional criminal revenue.
CrowdStrike’s technical account of the disruption states that Sality enabled its operator to distribute malicious payloads to more than 33,000 infected computers worldwide at the time of the operation.
Historical figures are considerably larger. Europol reported that Sality provided access to as many as one million infected machines at its peak. More than 11 million unique IP addresses have been connected to its infrastructure over its lifetime.
The 11 million figure should not be interpreted as the number of simultaneously infected devices. Individual machines can use different IP addresses over time, and the total covers years of recorded activity.
Europol has supported Sality-related investigations since 2017. The agency said international partners held weekly operational calls in the weeks before the latest action to coordinate infrastructure seizures and the technical disruption.
The operation targeted the peer lists that Sality-infected computers used to locate other machines in the botnet.
Each infected computer maintained a limited list of publicly reachable “super peers,” which formed the backbone of the P2P network. Approximately every 40 minutes, the malware checked whether those peers remained available. Responsive peers gained reputation, while unresponsive entries were gradually removed.
CrowdStrike found that the Sality protocol did not authenticate computers joining the network. Any publicly reachable system that completed the required handshake could be accepted as a legitimate peer.
Defenders used this weakness to manipulate the botnet’s peer lists. Legitimate Sality peers were invalidated and replaced with sinkhole nodes operated by CrowdStrike. As the process continued, infected computers lost contact with the criminal network and began communicating with defender-controlled infrastructure instead.
Computers located behind firewalls or network address translation could not always be contacted directly. However, when those devices initiated their routine communications with a sinkhole, their peer lists could also be purged, isolating them from the operator.
Authorities and industry partners also acted against websites hosting Sality’s payloads. Taking those locations offline prevented infected computers with older download instructions from retrieving additional malware during the transition.
CrowdStrike tracks the criminal actor associated with Sality as SALTY SPIDER. The company assesses that the group likely operates from Russia’s Republic of Bashkortostan, near the border with Kazakhstan.
This remains a company attribution rather than a publicly established legal finding. The DOJ and Europol announcements did not identify an individual operator, announce an arrest or disclose criminal charges connected to the disruption.
Although the operator has lost the ability to issue new instructions through the disrupted network, Sality remains installed on affected computers. Additional malware previously delivered by the botnet may also remain active.
CrowdStrike said Sality-infected systems now communicate with its sinkhole infrastructure. The company published a defanged lighthouse IP address, the botnet’s final payload URLs and YARA rules that security teams can use to identify active infections.
Shadowserver is working with internet service providers and national Computer Security Incident Response Teams to identify affected organizations, notify victims and support remediation.
Organizations that detect a Sality infection should isolate the affected device, inspect it for secondary malware and remove or rebuild compromised systems. Security teams should also examine network shares and removable media that may contain infected executable files.
Passwords and other credentials used on an infected device should be considered exposed. However, credential changes should be performed from a clean system after the malware has been removed.
The operation has disabled Sality’s existing command channel and prevented it from distributing new payloads through the disrupted infrastructure. Its long-term impact will now depend on whether remaining infections are found and remediated before the operator can attempt to rebuild part of the network.