<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Coder Legion - Recent posts tagged devsecops</title>
<link>https://coderlegion.com/tag/devsecops</link>
<description>Powered by Question2Answer</description>
<item>
<title>Developer Weekly Briefing — October 30, 2026</title>
<link>https://coderlegion.com/33104/developer-weekly-briefing-october-30-2026</link>
<description>&lt;p&gt;Security dominated this week, but not in the usual way. Two active campaigns turned GitHub configuration files into attack surfaces. Researchers demonstrated that the built-in browsers inside AI coding tools can read your SSH keys. And at Oracle AI World in Las Vegas, three separate announcements showed how Oracle is thinking about agent identity, governance, and deployment in enterprise systems. There was a lot to track. Here's what matters.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;two-github-campaigns-one-weak-point-your-config-files&quot;&gt;Two GitHub campaigns, one weak point: your config files&lt;/h3&gt;
&lt;p&gt;Researchers this week documented two separate attack campaigns targeting GitHub repositories — and both are still active.&lt;/p&gt;
&lt;p&gt;Wiz Research named the first one Gheist. It planted more than 13,500 malicious branches across 850-plus accounts. The payloads encode secrets in base32 to slip past GitHub's credential-scanning log masking, and they target private repositories and GitHub Enterprise Server — the approval hold GitHub applies to first-time contributors only covers public repos on github.com, so Enterprise Server customers have no equivalent protection. Gheist isn't looking for source code. It's looking for credentials.&lt;/p&gt;
&lt;p&gt;JFrog named the second campaign testmetest. It hijacked 42 real repositories and planted malicious hooks inside AI tool configuration files: &lt;code&gt;.claude/settings.json&lt;/code&gt;, &lt;code&gt;.gemini/settings.json&lt;/code&gt;, &lt;code&gt;.cursor/mcp.json&lt;/code&gt;, and &lt;code&gt;.vscode/tasks.json&lt;/code&gt;. Payloads run 12.9–13.7 MB — large enough that GitHub code search won't surface them. The attack runs as soon as someone opens the repo in an affected tool.&lt;/p&gt;
&lt;p&gt;Mitch Ashley of The Futurum Group put it plainly: &quot;Agent configuration has become the newest build script in the repository, and review processes have not caught up.&quot;&lt;/p&gt;
&lt;p&gt;The practical steps are the same for both: audit what's in your AI tool config files, treat them the same as build scripts, and limit the secrets available in any environment where agents run. If you're on GitHub Enterprise Server, check what protection you actually have for first-time contributors on private repositories — it may be less than you think.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops-hd5ff.sevalla.app/two-github-campaigns-one-weak-point-stolen-developer-credentials&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;ai-coding-tools-can-read-your-ssh-keys-two-are-still-unpatched&quot;&gt;AI coding tools can read your SSH keys — two are still unpatched&lt;/h3&gt;
&lt;p&gt;Researchers at Forever Security documented a vulnerability class they're calling EMBRACE. The attack vector: the built-in browsers inside AI coding tools have access to the host machine's file system. A single click on an assistant-generated HTML link can read your SSH private keys, &lt;code&gt;.env&lt;/code&gt; files, and npm tokens from anywhere on disk.&lt;/p&gt;
&lt;p&gt;Five tools are affected — Cursor, GitHub Copilot, OpenAI Codex, VS Code, and Claude Desktop. Cursor patched the issue October 1. Copilot fixed it in v1.1.29 on October 13. As of October 29, Codex and VS Code were still unpatched.&lt;/p&gt;
&lt;p&gt;The mechanism is simple enough to explain in a sentence: the built-in browser runs with the same permissions as the editor, not as an isolated sandbox. When an agent generates a link and you open it in the built-in browser, that page can reach files the browser has no business touching.&lt;/p&gt;
&lt;p&gt;If you use Codex or VS Code with built-in browser features enabled, the current workaround is to open assistant-generated links in an external browser until patches ship. It's also worth auditing what credentials live in places a browser process could reach — SSH keys, &lt;code&gt;.env&lt;/code&gt; files, and token files sitting in obvious locations.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops-hd5ff.sevalla.app/embrace-vulnerability-ai-coding-tools-built-in-browsers&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;flint-runs-40b-parameters-locally-and-keeps-your-code-off-someone-else-s-server&quot;&gt;Flint runs 40B parameters locally — and keeps your code off someone else's server&lt;/h3&gt;
&lt;p&gt;Recursive, led by former Salesforce chief scientist Richard Socher, released Flint this week: a 40-billion-parameter mixture-of-experts model designed to run on a developer's machine rather than through a cloud API. With a mixture-of-experts architecture, it activates only about 2.5 billion parameters per token. Recursive reports over 125 tokens per second on an M4 Pro MacBook Pro, with a 512,000-token context window.&lt;/p&gt;
&lt;p&gt;Weights are on Hugging Face under Apache 2.0 and the model works with llama.cpp, Ollama, LM Studio, and vLLM. A quantized build needs at least 24GB of RAM; Recursive recommends 48GB for agentic coding workloads. OpenHands is a launch partner, and there's a free hosted version on OpenRouter if you want to try it before committing hardware.&lt;/p&gt;
&lt;p&gt;The business case for local models is straightforward: no per-token API fees and source code never leaves your machine. Recursive claims Flint leads mixture-of-experts models under 50B parameters on agentic coding benchmarks — those are the company's own numbers, not independently verified. Mitch Ashley of The Futurum Group flagged the implication for teams: &quot;Evaluation becomes continuous work, tested against each team's own code before a model reaches the pipeline.&quot; A benchmark on someone else's code isn't the same as a benchmark on yours.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops-hd5ff.sevalla.app/recursive-flint-puts-a-fast-agentic-coding-model-on-developers-laptops&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;sap-s-cto-says-building-the-agent-is-now-the-easy-part&quot;&gt;SAP's CTO says building the agent is now the easy part&lt;/h3&gt;
&lt;p&gt;At SAP TechEd 2026, SAP CTO Philipp Herzig said something developers probably already sense but rarely hear from a vendor executive: &quot;Building is, quite frankly, the most unimportant part these days.&quot;&lt;/p&gt;
&lt;p&gt;The harder problems, in his framing, are testing, governance, and token cost. SAP's answer is Joule Studio, its agent-building environment, which now includes a CLI with MCP connections, a built-in sandbox, and auto-generated unit tests. SAP also announced the SAP Enterprise AI Gateway, in preview now and scheduled for Q1 2027, which handles routing, rate limiting, and cost controls across the agents a company runs.&lt;/p&gt;
&lt;p&gt;On the data side, SAP Business Data Cloud adds a lakehouse layer built on Dremio and Apache Iceberg.&lt;/p&gt;
&lt;p&gt;SAP cited an internal comparison showing 30 hours to build an agent with Claude Code versus 2 hours with Joule Studio. That's SAP's own benchmark, and Joule Studio knows SAP's data models in ways a general-purpose coding tool doesn't. Take it as a claim, not a proof. But the underlying point — that tools with domain knowledge built in will reduce setup time on domain-specific problems — is reasonable.&lt;/p&gt;
&lt;p&gt;For developers building on SAP, the Gateway announcement is worth tracking. If it ships on schedule in Q1, it gives teams the enforcement layer Herzig described, with controls that apply before the agent executes, not after.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32733/sap-s-cto-says-building-the-agent-is-now-the-easy-part&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;oracle-gives-each-agent-its-own-identity&quot;&gt;Oracle gives each agent its own identity&lt;/h3&gt;
&lt;p&gt;At Oracle AI World, Oracle announced the Oracle AI Security Mesh, a framework designed for enterprises running multiple agents across sensitive data. The core idea: each agent gets its own identity, a defined task scope, and just-in-time permissions rather than standing access.&lt;/p&gt;
&lt;p&gt;The architecture has a few pieces worth understanding. OCI Identity Assurance handles authentication, including biometrics. OCI Zero Trust Packet Routing enforces policy at the network layer, below the application — which means an agent can't bypass the controls by manipulating the software above them. Each agent also gets an independent monitor, separate from the agent itself.&lt;/p&gt;
&lt;p&gt;Oracle didn't announce a general availability date or pricing.&lt;/p&gt;
&lt;p&gt;This lands a week after the Gheist and testmetest campaigns, which both targeted credential theft through misconfigured agents. The timing is coincidental, but the relevance is real. The question Oracle's framework raises — and doesn't fully answer — is how you verify that the identity and permission assignment worked the way you intended. That's what attestation is supposed to solve, and it's still the hardest unsolved problem in agentic AI security right now.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32841/oracle-ai-security-mesh-gives-each-agent-its-own-identity-and-just-in-time-permissions&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-this-week&quot;&gt;Also from this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Reddit's r/opensource banned AI tools. It probably won't work.&lt;/strong&gt; The subreddit's new rules ban AI-assisted contributions, exclude MCP servers, require projects to have multiple contributors and an established community, and will permanently ban users who message moderators seeking exceptions. Linux took the opposite approach — Torvalds said the kernel &quot;is not one of those anti-AI projects&quot; and dropped its AI-disclosure requirement, shifting the burden to accountability: understand your code, regardless of what tools you used. The better model for DevOps teams is probably closer to Linux: hold contributors accountable for what they submit, build CI gates that shift review costs back to submitters, and avoid policies that require judgment calls you can't make consistently. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops-hd5ff.sevalla.app/reddits-r-opensource-ai-ban-targets-the-wrong-problem&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;IBM Z Atlas maps your entire mainframe before you touch anything.&lt;/strong&gt; IBM's new tool for z/OS builds an AI-searchable map of the entire stack — programs, data sets, JCL, subsystems — so teams can understand what they're changing before they change it. IBM reports 60–80% less time spent gathering context, and analysis that used to take hours running in minutes. On-premises only; public preview October 27, GA in Q1 2027. Requires z/OS 3.1+. The AI reasons and synthesizes, but the underlying data is deterministic — you can trace any answer back to the source. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32375/ibm-z-atlas-uses-ai-to-prove-mainframe-changes-are-safe-before-they-hit-production&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;F5 and NVIDIA draw a hard line between data residency and sovereignty.&lt;/strong&gt; F5's Ahmed Guetari stated the distinction directly: &quot;Data residency is where data sits. Sovereignty is who controls it.&quot; The joint offering layers NVIDIA OpenShell and F5 AI Guardrails on BIG-IP Next for Kubernetes, with enforcement on NVIDIA BlueField DPUs at the hardware layer. Token-aware cost controls and two live deployments — Telenor in Norway and Indosat in Indonesia — are already running. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32586/data-residency-isnt-sovereignty-f5-and-nvidia-add-a-control-layer-for-ai-agents&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Oracle's Fusion Setup Registry puts enterprise configuration into a public Git repo.&lt;/strong&gt; Oracle published the Fusion Setup and Configuration Registry (FSCR) — machine-readable setup skills for Fusion Cloud Applications that AI agents can run. The registry covers dependencies, sequencing, and validation, and an early adopter reported 80% reduction in design and configuration work during implementation. Lexington Health is the only customer data point so far. The repository is public, so you can read the skills before committing to them. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32584/oracles-fusion-setup-registry-puts-configuration-in-a-public-git-repo-for-ai-agents&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Bito's Governor cut one team's coding agent costs 48% by fixing the search loop.&lt;/strong&gt; Privado used Bito's Governor to reduce the number of times its coding agent re-searches the codebase for context it already found. The result was a 48% reduction in token costs. Short version: agents that re-retrieve context they've already gathered are expensive, and the fix is stopping the loop rather than switching models. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32566/bito-s-governor-cut-privado-s-coding-agent-costs-48-by-ending-the-search-loop&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Oracle plans post-quantum TLS for Java 8 and 11 in late 2027.&lt;/strong&gt; Hybrid post-quantum key exchange for TLS 1.3 is GA in JDK 27. Java 21 and 17 get it in the first half of 2027; Java 8 and 11 in the second half. There's a condition: the backport date holds only if the team gets enough testing feedback on current builds. If you're on Java 8 or 11, the slow path is waiting. The faster path is pointing a JDK 25 or 27 client at your post-quantum-capable endpoints now and filing what breaks. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32755/oracle-plans-post-quantum-tls-for-java-8-and-11-in-late-2027-and-wants-testers-now&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Larry Ellison says Oracle Health modules plug into Epic with no data migration.&lt;/strong&gt; Ellison's pitch at Oracle AI World: turn on the module, it finds the relevant staff, records, and labs through existing SMART on FHIR interfaces, and you're done. The oncology module was the main example. Early adopters should have the full suite by February 1. No demo, no independent validation, and no published technical documentation on which FHIR resources the modules read and write. That's work for the teams who get early access. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/32839/larry-ellison-says-oracle-health-modules-plug-into-epic-with-no-data-migration&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&quot;developer-spotlight-this-week&quot;&gt;Developer Spotlight this week&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Yaoshen Luo&lt;/strong&gt; builds agent evaluation frameworks — and writes about the times they failed him. Based in Shanghai, he built a benchmark from scratch when customer complaints about a voice agent told him the model scores weren't the problem. The test set skewed toward longer sentences than real traffic, and accuracy dropped once he resampled to match production. His earlier lesson: he built an agent that passed every benchmark, shipped it to volunteers for a non-profit project, and they refused to use it again. Not because the model was wrong. Because the workflow didn't fit how they actually worked. His take: the workflow is part of the evaluation, not something you test after.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/YaoshenLuo&quot;&gt;Watch the conversation&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week is that agent security is moving from theoretical to active. Gheist and testmetest are already running. EMBRACE vulnerabilities are patched in some tools and open in others. The configuration files developers add to repos for AI tooling are now a real attack surface. Oracle, SAP, and F5 all shipped security and governance frameworks this week — which is a sign that vendors know the problem is real. Whether any of those frameworks hold up in practice is a different question, and the answer won't come from a keynote.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/33104/developer-weekly-briefing-october-30-2026</guid>
<pubDate>Fri, 30 Oct 2026 13:55:46 +0000</pubDate>
</item>
<item>
<title>HiddenLayer: A Hijacked LLM Gateway Can Turn Your Coding Agent's Own Permissions Against You</title>
<link>https://coderlegion.com/32043/hiddenlayer-hijacked-llm-gateway-can-turn-your-coding-agents-own-permissions-against-you</link>
<description>&lt;p&gt;Most security talk about AI coding agents focuses on the model. Will it run a bad command? Can a poisoned README trick it? New research from HiddenLayer looks somewhere else: the plumbing between the agent and the model.&lt;/p&gt;
&lt;p&gt;In a report released today, HiddenLayer researchers Esteban Tonglet, Divyanshu Divyanshu, and Kasimir Schulz show that anyone who controls an inference server or LLM gateway can quietly learn how a coding agent is configured. Then they can forge tool calls that ride on permissions the developer already granted. The agent runs them. The developer sees nothing unusual.&lt;/p&gt;
&lt;h3 id=&quot;why-the-middle-layer-matters&quot;&gt;Why the middle layer matters&lt;/h3&gt;
&lt;p&gt;Plenty of developers don't send traffic straight to one vendor. They use open harnesses like OpenCode, Cline, and Hermes, pointed at open-weight models served through Ollama, vLLM, or providers like Together AI and Fireworks. Many organizations add a gateway such as LiteLLM to centralize API keys, routing, logging, and policy.&lt;/p&gt;
&lt;p&gt;Each layer relays requests and responses, so it sees prompts, tool definitions, history, and tool output. LiteLLM's &lt;code&gt;async_pre_call_hook&lt;/code&gt; and &lt;code&gt;async_post_call_success_hook&lt;/code&gt; let custom code read or rewrite that traffic. That's useful for guardrails. It's also exactly what an attacker wants.&lt;/p&gt;
&lt;p&gt;HiddenLayer describes two ways in: a malicious Ollama wrapper that listens on the default port, 11434, and forwards to the real service, or a supply chain compromise of a gateway's package, plugin, or container image.&lt;/p&gt;
&lt;h3 id=&quot;step-one-watch-the-clock&quot;&gt;Step one: watch the clock&lt;/h3&gt;
&lt;p&gt;The attacker doesn't need to change anything to start learning. By timing the gap between a tool call and its result, a proxy can tell whether the agent paused for a human to approve it. File reads normally finish almost instantly. A pause of several seconds suggests a prompt.&lt;/p&gt;
&lt;p&gt;The signal is strong. Across more than 4,000 captured sessions, just 4.7% of calls to fast tools landed in HiddenLayer's ambiguous range, compared with 25.5% of shell calls. Across more than 35,000 file reads, only 1% did.&lt;/p&gt;
&lt;p&gt;Shell commands are noisier. So the proxy can slip timing code into a script through an auto-approved file edit, or wrap a command in a timer. Either way, the timing output is stripped before the user sees it.&lt;/p&gt;
&lt;p&gt;Hiding that wrapper is easier than you'd think. Agents routinely generate long build commands full of pipes and redirects. Users scan for &lt;code&gt;rm&lt;/code&gt;, &lt;code&gt;sudo&lt;/code&gt;, or &lt;code&gt;curl&lt;/code&gt; piped to a shell. A small addition in a 20-command line blends in. The researchers used a Tree-sitter Bash parser to score complexity and pick hiding spots.&lt;/p&gt;
&lt;h3 id=&quot;step-two-read-the-configuration&quot;&gt;Step two: read the configuration&lt;/h3&gt;
&lt;p&gt;Harnesses also give a lot away. Codex headers start with &lt;code&gt;codex-tui&lt;/code&gt;. Claude Code identifies itself as &lt;code&gt;claude-cli&lt;/code&gt;. Hermes uses a generic OpenAI SDK user agent, but its default tools (&lt;code&gt;terminal&lt;/code&gt;, &lt;code&gt;write_file&lt;/code&gt;, &lt;code&gt;patch&lt;/code&gt;) reveal it.&lt;/p&gt;
&lt;p&gt;Some harnesses go further. Codex includes its permission settings in every request: sandbox mode, writable paths, network access, and approved command prefixes. Claude Code sends its working directory, OS, Git status, and a Bash tool schema that includes a &lt;code&gt;dangerouslyDisableSandbox&lt;/code&gt; option.&lt;/p&gt;
&lt;p&gt;A proxy can also insert its own reads of files like &lt;code&gt;CLAUDE.md&lt;/code&gt;, &lt;code&gt;AGENTS.md&lt;/code&gt;, or &lt;code&gt;.cursorrules&lt;/code&gt;, then strip the call and result. The model never knows.&lt;/p&gt;
&lt;h3 id=&quot;step-three-use-what-s-already-allowed&quot;&gt;Step three: use what's already allowed&lt;/h3&gt;
&lt;p&gt;HiddenLayer ran two demos. In the first, Hermes ran in manual mode, which only prompts for commands it considers dangerous. When the user asked Hermes to read a Python file, the proxy inserted file edits that added a &lt;code&gt;heartbeat_ok()&lt;/code&gt; function. That function collected environment variables and SSH keys and sent them to an attacker's webhook. The proxy then ran the file with &lt;code&gt;python3&lt;/code&gt; and removed the function. Every step ran without a prompt.&lt;/p&gt;
&lt;p&gt;In the second, Codex had the &lt;code&gt;git&lt;/code&gt; prefix approved and a writable &lt;code&gt;.git&lt;/code&gt; directory. The proxy forged this call:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git -c diff.external='sh -c &quot;cat .env&quot;' diff --no-index /dev/null .env
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Codex ran it without asking and returned the contents of &lt;code&gt;.env&lt;/code&gt;. Git's helper options can launch other programs, so an approved &lt;code&gt;git&lt;/code&gt; prefix is broader than it looks.&lt;/p&gt;
&lt;p&gt;There's a slower option, too. The gateway rewrites a dependency name, say &lt;code&gt;requests&lt;/code&gt; to &lt;code&gt;reqiests&lt;/code&gt;. Nothing happens until someone installs dependencies later.&lt;/p&gt;
&lt;h3 id=&quot;this-isn-t-hypothetical&quot;&gt;This isn't hypothetical&lt;/h3&gt;
&lt;p&gt;LiteLLM shipped two malicious PyPI versions, 1.82.7 and 1.82.8, on March 24, 2026, after attackers got hold of a maintainer's publishing credentials. And an April 2026 study of 428 third-party LLM routers by University of California researchers found nine injecting malicious code and 17 abusing researcher-planted AWS credentials.&lt;/p&gt;
&lt;h3 id=&quot;what-developers-can-do-now&quot;&gt;What developers can do now&lt;/h3&gt;
&lt;p&gt;HiddenLayer's report focuses on the attack, not a checklist. Here's what I'd take from it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Treat gateways and inference servers as part of your trust boundary.&lt;/strong&gt; Pin versions, verify artifacts, and control who can change hooks and callbacks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Be careful with free or unknown routers.&lt;/strong&gt; Cheap access isn't worth handing someone your traffic and keys.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Keep approvals narrow.&lt;/strong&gt; Blanket approvals for &lt;code&gt;git&lt;/code&gt;, &lt;code&gt;python&lt;/code&gt;, or file edits give a proxy room to work.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Keep secrets out of the agent's reach.&lt;/strong&gt; Don't leave &lt;code&gt;.env&lt;/code&gt; files, SSH keys, or cloud credentials where the agent can read them.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Watch outbound traffic&lt;/strong&gt; from developer machines and build systems.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Coding agents are doing a lot of good work. But sandboxes and approval prompts assume each tool call came from the model you chose. HiddenLayer's point is that this assumption no longer holds. The security boundary includes every system that can shape what the agent runs. And the teams that build and deploy these agents are responsible for that whole path.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/32043/hiddenlayer-hijacked-llm-gateway-can-turn-your-coding-agents-own-permissions-against-you</guid>
<pubDate>Thu, 22 Oct 2026 14:00:00 +0000</pubDate>
</item>
<item>
<title>CyberCartel Pointed Claude and Grok Agents at 400+ Banks. The Stack Looks Like Yours.</title>
<link>https://coderlegion.com/32054/cybercartel-pointed-claude-and-grok-agents-at-400-banks-the-stack-looks-like-yours</link>
<description>&lt;p&gt;A financial crime group active since 2012 just showed developers what their everyday agent stack looks like in the wrong hands.&lt;/p&gt;
&lt;p&gt;New research from Straiker shows how CyberCartel built a multi-agent attack system called CARLIY0S and aimed it at more than 400 banks, payment providers, and other financial organizations across Latin America. The system ran on commercial models, including Anthropic's Claude and xAI's Grok, with Moonshot AI's Kimi in the mix.&lt;/p&gt;
&lt;p&gt;The tools will look familiar. Cursor. MCP servers. API keys in .env files. Playwright. That's the part developers should sit with.&lt;/p&gt;
&lt;h3 id=&quot;how-straiker-got-inside&quot;&gt;How Straiker Got Inside&lt;/h3&gt;
&lt;p&gt;CyberCartel made an operational security mistake. That gave Straiker a snapshot of the group's working environment. The September 24, 2026 snapshot captured the group's stolen-credential database, called &quot;FinancialSoft.&quot; It held 4,493 records, including passwords and API keys.&lt;/p&gt;
&lt;p&gt;Could it have been a decoy? Vinay Pidathala, vice president of AI security research at Straiker, doesn't think so. The team tied the environment to more than 270 pentest reports against real organizations. &quot;The volume and specificity across hundreds of entities is inconsistent with a honeypot,&quot; he said.&lt;/p&gt;
&lt;p&gt;Straiker attributes the work with high confidence to Tr4nsHack Team, which operated under the front name Hexagon Security Labs Mexico. Operator handles in the source code and reports matched known CyberCartel operators.&lt;/p&gt;
&lt;p&gt;The irony: the group's rule files told the models never to output the Tr4nsHack alias. The name showed up in its own reports and code anyway.&lt;/p&gt;
&lt;h3 id=&quot;four-agents-and-an-arbiter&quot;&gt;Four Agents and an Arbiter&lt;/h3&gt;
&lt;p&gt;Here's how the system worked, based on the group's own scripts and configuration. Straiker notes it did not validate the outcome for any individual target.&lt;/p&gt;
&lt;p&gt;A commander, Claude running in Cursor, sets a high-level objective. It delegates through the Anthropic API to four role-based agents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A recon agent maps the target's infrastructure and looks for ways to avoid detection.&lt;/li&gt;
&lt;li&gt;An exploit agent writes the attack code and automation.&lt;/li&gt;
&lt;li&gt;A third agent suggests lateral and unconventional attack paths.&lt;/li&gt;
&lt;li&gt;An arbiter weighs the debate among the other three and returns a single decision.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Five Grok &quot;miners&quot; analyzed the collected data and posted it to the attackers' dashboard.&lt;/p&gt;
&lt;p&gt;Execution ran through a headless browser routed over residential proxies, so traffic looked like it came from domestic Mexican IP addresses. Once the system gained code execution through a target's web admin panel, it dropped the browser for a faster, quieter scripted session. Automated payloads then scanned databases, hunted for credentials and SSH keys, and mapped internal networks.&lt;/p&gt;
&lt;p&gt;Why the debate format? Straiker doesn't know, and it didn't test whether four agents beat one.&lt;/p&gt;
&lt;h3 id=&quot;getting-past-the-guardrails&quot;&gt;Getting Past the Guardrails&lt;/h3&gt;
&lt;p&gt;The operators framed their requests as authorized red-team engagements or academic penetration tests. Straiker calls this dual-use contextual framing.&lt;/p&gt;
&lt;p&gt;It didn't work on every model. Refusals varied inside the same system, and Straiker says it has no visibility into why. When a model refused, the orchestrator fell back to a local file of pre-written attack code, so the operation kept moving.&lt;/p&gt;
&lt;p&gt;So how much did AI actually add? According to Pidathala, all 270+ attack reports were AI-generated. &quot;We did not see evidence of manual efforts,&quot; he said. The local script was a fallback, not the main engine.&lt;/p&gt;
&lt;p&gt;The configuration also listed claude-fable-5. Straiker can't confirm it ever ran. &quot;A configuration entry is not evidence of successful execution,&quot; Pidathala said.&lt;/p&gt;
&lt;h3 id=&quot;what-we-don-t-know&quot;&gt;What We Don't Know&lt;/h3&gt;
&lt;p&gt;Quite a bit. Straiker isn't sharing how many of the 400+ targets were compromised or how much money was lost. It cites responsible disclosure while affected organizations and providers work through the fallout. The 400 figure counts targets, not confirmed breaches.&lt;/p&gt;
&lt;p&gt;According to The Information, Anthropic investigated after Straiker shared its findings and blocked the group's access to Claude. Straiker reported that xAI was notified and is investigating the use of Grok.&lt;/p&gt;
&lt;h3 id=&quot;what-developers-should-take-from-this&quot;&gt;What Developers Should Take From This&lt;/h3&gt;
&lt;p&gt;The core lesson is that this tooling is dual-use. &quot;The same agent stack that builds software can run an offensive operation,&quot; Pidathala said.&lt;/p&gt;
&lt;p&gt;That isn't a reason to stop building agents. They do a lot of good work. It's a reason to own what your agents can reach. Whoever builds an agent is responsible for what it does. So is the company that deploys it.&lt;/p&gt;
&lt;p&gt;Straiker's guidance for teams building agents:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Test agents against real attack techniques before production.&lt;/strong&gt; Pidathala calls this the single highest-value action a team can take this week.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rotate agent credentials often and scope them tightly.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Add observability and guardrails&lt;/strong&gt; to detect and stop abuse at runtime.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Treat .env API keys and MCP server access as high-value assets&lt;/strong&gt; to secure and monitor.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That last point is easy to skip. An API key in a .env file feels routine. In CARLIY0S, API access is what let one commander direct a team of agents across hundreds of targets.&lt;/p&gt;
&lt;h3 id=&quot;where-this-goes-next&quot;&gt;Where This Goes Next&lt;/h3&gt;
&lt;p&gt;Pidathala expects these operations to grow in sophistication and scale as models get more capable, compute gets cheaper, and attackers build AI skills. Defenders, he said, will need to continuously test their infrastructure and be ready to &quot;detect and respond to AI-powered attacks at machine speed.&quot;&lt;/p&gt;
&lt;p&gt;That's not hype. It's a small team, a familiar toolchain, and more than 400 financial targets. The gap between the agents developers build and the agents attackers build is mostly intent. Security has to cover the rest.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/32054/cybercartel-pointed-claude-and-grok-agents-at-400-banks-the-stack-looks-like-yours</guid>
<pubDate>Thu, 22 Oct 2026 13:30:00 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — October 16, 2026</title>
<link>https://coderlegion.com/31352/developer-weekly-briefing-october-16-2026</link>
<description>&lt;p&gt;A week defined by two big ideas running in parallel: AI agents are breaking the infrastructure underneath them, and the security surface around developer workflows keeps growing. Both threads showed up in force. Here's what mattered.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;anthropic-hit-30-000-merges-a-day-and-git-couldn-t-keep-up-so-it-built-scion&quot;&gt;Anthropic hit 30,000 merges a day, and Git couldn't keep up — so it built Scion&lt;/h3&gt;
&lt;p&gt;By September 2026, Anthropic was averaging 30,000 merged changes a day, up from 2,500 in May. Its main branch history had grown close to 100 GB. CI alone required 25 million checkouts a day, and at peak the team ran several hundred Git mirrors just to keep up. Standard workarounds stopped working. So a seven-person team built a replacement from scratch.&lt;/p&gt;
&lt;p&gt;Scion is Anthropic's internal version control system. The design is built for always-online, agent-heavy workloads rather than Git's original model of offline, occasional human pushes. Servers handle commits, merges, rebases, and diffs. Clients keep a small local cache. Commits are stored as changesets that scale with the size of the change, not the size of the repo. Cache hit rates are above 99% at each of the three tiers. The result: checkouts take seconds instead of minutes, use about 200 times less CPU and memory than the old mirror fleet, and recover 25% of CI capacity.&lt;/p&gt;
&lt;p&gt;Anthropic says Scion only makes sense for very large monorepos and has no plans to release it — but it wants to share the ideas with GitHub, GitLab, and the open source community. Last week's briefing covered GitHub's infrastructure rebuild to handle agent-scale load. This week, Anthropic said: we got there first, and we had to build something new to do it.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/anthropic-builds-its-own-source-control-after-ai-agents-outgrow-git/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;gitlab-patches-a-cvss-10-update-now&quot;&gt;GitLab patches a CVSS 10 — update now&lt;/h3&gt;
&lt;p&gt;A critical vulnerability in GitLab's CI/CD regex engine, CVE-2026-97229, got a perfect CVSS score of 10.0. An unauthenticated attacker could send a crafted regex in a CI/CD configuration and execute arbitrary code on the server — which typically holds source code, pipeline definitions, and production secrets. GitLab shipped fixes in versions 19.4.2, 19.3.5, and 19.2.8 on October 12. GitLab.com is already patched. Dedicated customers need no action. Self-managed instances need to upgrade now. The release also covers 23 other vulnerabilities, including an 8.7-rated prompt injection in GitLab Duo Agent Platform.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/gitlab-fixes-cvss-10-flaw-in-ci-cd-regex-engine-plus-23-other-vulnerabilities/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;github-now-records-who-pushed-every-commit&quot;&gt;GitHub now records who pushed every commit&lt;/h3&gt;
&lt;p&gt;Git has always let developers set their own name and email in commits — metadata that's trivially spoofed. GitHub's new push attribution feature records the authenticated account that actually pushed each commit, separate from the author and committer fields. A new repository ruleset, &quot;Committer must match pusher,&quot; can block pushes where the committer's email doesn't match the pusher's verified addresses. The practical benefit: bots and agents often push commits under a human's name. This makes that visible. It's in limited public preview for GitHub Enterprise. Before enabling the enforcement rule, audit your release bots, shared tokens, and any workflow that pushes on behalf of someone else — the rule will break those if you don't.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/github-ties-every-commit-to-the-account-that-pushed-it/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;github-is-pushing-teams-off-classic-pats-here-s-the-new-permission-model&quot;&gt;GitHub is pushing teams off classic PATs — here's the new permission model&lt;/h3&gt;
&lt;p&gt;GitHub announced narrowed app permissions aimed at getting teams off classic personal access tokens. Classic PATs have been a persistent weak spot: long-lived, often over-scoped, and easy to forget once they're embedded in a workflow. The new fine-grained permissions limit what any given token or GitHub App can access. If your team still uses classic PATs in automation, this is a push to move. The transition won't happen overnight, but the direction is clear.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/github-narrows-app-permissions-to-pull-teams-off-classic-pats/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;npm-gives-unused-trusted-publishing-configurations-48-hours-to-prove-themselves&quot;&gt;npm gives unused trusted publishing configurations 48 hours to prove themselves&lt;/h3&gt;
&lt;p&gt;npm's trusted publishing feature ties release authority to a repository or project name. That's useful until the name changes hands — an abandoned or reorganized repo that still has a trusted configuration is exactly where supply chain attacks start. npm's fix: any configuration that doesn't complete a successful publish within 48 hours of creation expires. Once it publishes successfully, the expiration goes away. The practical change: create your trusted publishing configuration when you're ready to publish, not during setup. If it expires, recreate it.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/npm-puts-a-48-hour-clock-on-unused-trusted-publishing-configurations/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;claude-platform-now-sends-agent-traces-to-your-observability-stack&quot;&gt;Claude Platform now sends agent traces to your observability stack&lt;/h3&gt;
&lt;p&gt;Anthropic added native OpenTelemetry trace export to the Claude Platform, in public beta. It works with the Messages API, Claude Managed Agents, and the Claude SDKs. Each trace includes duration, status, token counts, the model used, tool names, and request IDs. Teams can also enable full content export, which adds prompts, responses, and tool inputs and outputs. Setup for the Messages API and Managed Agents requires no application code changes — just configure an export destination in the Claude Console. The feature supports any OTLP-compatible backend; Anthropic has published guides for 12 partners, including Datadog, Grafana, Honeycomb, Langfuse, New Relic, and Splunk. The practical value: agents make several model calls, tool calls, and retries per request, and failures in that chain are hard to trace without instrumentation. This is the instrumentation.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/claude-platform-now-sends-agent-traces-straight-to-your-observability-stack/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;figma-gives-ai-agents-a-spec-sheet-and-code-layers-land-on-the-canvas&quot;&gt;Figma gives AI agents a spec sheet and code layers land on the canvas&lt;/h3&gt;
&lt;p&gt;Figma shipped two features worth tracking. Specs is a Markdown editor — on canvas or as a standalone file — where teams write requirements, design rules, and agent instructions. It can reference canvas elements, pull context from a connected GitHub repo, and embed diagrams and code. On the development side, Code Layers lets teams place running, code-backed prototypes directly in a Figma file. Code can come from a GitHub repo, a local folder, a live website, or an AI coding tool. Claude Code gets a round-trip: work from Claude Code can land in Figma, and design changes can be pulled back into the codebase through MCP. Both features are in open beta.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops-hd5ff.sevalla.app/figma-gives-ai-agents-a-spec-sheet-and-developers-a-shared-canvas&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-this-week-1&quot;&gt;Also from this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Cloudflare acquires Deno's team to build self-hosted Workers.&lt;/strong&gt; Cloudflare is hiring Ryan Dahl and the Deno team to make workerd, the open-source Workers runtime, production-viable for self-hosted deployments. Deno Deploy shuts down in six months. Deno runtime gets one more year of maintenance releases. JSR keeps running. If you're on Deno Deploy, start planning the move now. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops-hd5ff.sevalla.app/cloudflare-brings-the-deno-team-in-to-make-self-hosted-workers-practical&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Microsoft launches Decision-1, a fast, cheap decision-scoring model.&lt;/strong&gt; Built on post-trained Qwen3.5-9B, Decision-1 takes a fixed set of answers and returns calibrated probabilities in a single API call. It's aimed at routing, classification, and workflow control — the &quot;System One&quot; decisions in an agent pipeline. Available in Microsoft Foundry and through OpenRouter at $0.042 per million input tokens. &lt;a rel=&quot;nofollow&quot; href=&quot;https://techstrong.ai/features/microsoft-takes-aim-at-jev-with-a-fast-cheap-decision-model/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Nvidia hands Run:ai to the open source community.&lt;/strong&gt; The GPU orchestration platform Nvidia acquired in 2024 is going open source. For teams managing GPU workloads for AI training and inference, this matters. &lt;a rel=&quot;nofollow&quot; href=&quot;http://techstrong.ai/articles/nvidia-hands-runai-to-the-open-source-community/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;SpaceX bundles Grok, Cursor, and X Premium into one subscription.&lt;/strong&gt; The $30/month Premium tier combines Grok, Cursor Pro, and X Premium+ — tools that would cost about $90 separately. The catch: Grok and Cursor share a usage pool, so AI chat and coding work against the same weekly limit. Dev teams should audit that tradeoff before committing. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/one-bill-for-grok-cursor-and-x-what-spacexs-bundle-means-for-dev&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;AI doesn't replace your thinking — it raises the bar for it.&lt;/strong&gt; My latest for Insights From Analytics: the patterns I keep seeing when professionals struggle to get real value from AI, and what changes when they fix them. &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.insightsfromanalytics.com/post/ai-doesn-t-replace-your-thinking-it-raises-the-bar-for-it&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&quot;developer-spotlights-this-week&quot;&gt;Developer Spotlights this week&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Bryan MacLee&lt;/strong&gt; drives an oil and gas truck in Vernal, Utah, and builds his own programming language on the side. SCRML is a full-stack language for the browser — the compiler handles the wiring between frontend and backend that developers normally manage by hand. Version 0.8 is out. Adoption is near zero, by his own description on the project site. He's building it anyway. A good conversation about what it takes to build something nobody's using yet.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/31246&quot;&gt;Watch the conversation&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Jonathan Gordon&lt;/strong&gt; spent decades building developer tools at Google, Apple, Microsoft, Oracle, and SAP. His warning: AI-generated code often has error handling that &quot;puts nothing in the catch block.&quot; Users find out when buttons stop working. His rule: &quot;We can't just let AI build the software by itself.&quot; The full conversation is a useful counterweight to the vibe coding conversation.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/30873&quot;&gt;Watch the conversation&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week: agents are breaking things at the infrastructure layer, and security controls designed for human developers don't hold up at agent scale. Anthropic had to build a new VCS. GitHub is adding authentication that was never needed when a human was always at the keyboard. The same pressure is showing up everywhere.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/31352/developer-weekly-briefing-october-16-2026</guid>
<pubDate>Fri, 16 Oct 2026 12:28:25 +0000</pubDate>
</item>
<item>
<title>HYCU's Free aiR Graph Maps Every Agent in Entra ID and Okta, Then Asks If You Can Recover</title>
<link>https://coderlegion.com/30339/hycus-free-air-graph-maps-every-agent-in-entra-id-and-okta-then-asks-if-you-can-recover</link>
<description>&lt;p&gt;Ask an IT leader how many AI agents are running in their company and you'll usually get a pause. Ask which of those agents can delete data and the pause gets longer.&lt;/p&gt;
&lt;p&gt;That's not negligence. Agents don't arrive through one front door. A team turns on a copilot. A developer registers an app in Entra ID so an agent can write to Salesforce. Someone grants an OAuth scope in Okta so a workflow agent can run overnight. Each decision makes sense on its own. Together they add up to a population of non-human identities nobody counted, with permissions nobody reviewed as a set.&lt;/p&gt;
&lt;p&gt;HYCU is going after the counting problem first. The company made aiR Graph generally available today, free to any organization, customer or not. It connects read-only to Microsoft Entra ID, including Entra Agent ID where it's enabled, and to Okta, including Okta AI Agents where an organization subscribes. On the first scan, it maps the applications in the tenant and flags the copilots and agents among them.&lt;/p&gt;
&lt;p&gt;For each agent, aiR Graph pulls the details you'd want before trusting it with production data: its OAuth scopes, which data sources it can read and which it can write, whether it has organization-wide access, whether it acts unattended, how many people can invoke it, and whether anyone is recorded as its owner or sponsor.&lt;/p&gt;
&lt;p&gt;&quot;Every organization we talk to is adding AI agents faster than it can count them,&quot; said Simon Taylor, HYCU's founder and CEO.&lt;/p&gt;
&lt;p&gt;An inventory is useful. But knowing an agent exists doesn't tell you what happens when it goes wrong. That's where aiR Graph goes further than most agent inventories. It adds a protection gap view that asks a blunt question: if this agent damages the data it can reach, is there an independent copy to recover from? Agents with write access to systems of record that have no backup rank first.&lt;/p&gt;
&lt;p&gt;That ordering follows an argument HYCU has been making for months. When I talked with Amarnath Rampratap, HYCU's head of R&amp;amp;D India, in September, he said the root cause he sees most isn't a bad prompt. &quot;Nearly every incident that reaches us has an over-scoped, long-lived token in the chain,&quot; he said. The PocketOS incident is the public example: a Cursor agent found a Railway token with far more reach than its job required, and one API call took a production database and its backups with it. aiR Graph is designed to find that kind of credential before an agent uses it.&lt;/p&gt;
&lt;p&gt;Severity in aiR Graph tracks capability. The more an agent can reach and change, the higher it ranks. HYCU's examples of top findings include unattended access to all user data, broad access combined with write or delete rights, and enabled accounts whose agent identity has been deleted. That last one deserves a second look. An agent can be retired while the account behind it stays live, which leaves a working credential with no one watching it.&lt;/p&gt;
&lt;p&gt;Jerome Wendt, CEO and principal analyst at DCIG, put the gap plainly: &quot;Knowing an agent can modify data in Salesforce, GitHub, or Confluence only identifies the risk.&quot; The other half is whether you can undo what the agent did.&lt;/p&gt;
&lt;p&gt;The design choice developers will notice most is what HYCU left out. &quot;We made a deliberate choice to keep language models out of the risk assessment,&quot; said Anant Chintamaneni, HYCU's chief product officer. Every finding comes from an explicit rule applied to identity-provider data. &quot;Run it twice on the same tenant, and you get the same answer,&quot; he said. And each finding traces back to the identity field that produced it.&lt;/p&gt;
&lt;p&gt;That matters more than it might seem. A risk score generated by a model is hard to defend. If two runs disagree, which one goes to the auditor? Which one goes into the ticket? With deterministic rules, the difference between two scans reflects a real change in the tenant, not variance in the model. You can rerun the assessment after tightening scopes and see exactly which findings cleared. There's some irony in a tool for governing AI agents that keeps AI out of its own judgment. But it's the right call for something security and compliance teams will be asked to stand behind.&lt;/p&gt;
&lt;p&gt;When a scan finishes, one click produces a point-in-time assessment report with an executive summary, recommended triage actions, and the full inventory. HYCU first showed the tool at the IT Press Tour in Ljubljana last month, and select customers ran it in preview before today's release.&lt;/p&gt;
&lt;p&gt;A few things to keep in mind before you run it. Entra ID and Okta are the first discovery sources, and HYCU says more are coming. Discovery runs through the identity provider, so an agent whose credentials never touch Entra ID or Okta, like a personal access token sitting in a CI secret store, won't show up there. The report is a snapshot, not continuous monitoring. And the protection gap view naturally points toward HYCU R-Cloud, which covers more than 100 workloads. The tool is free, but it also shows HYCU exactly where its backup product fits. That doesn't make the findings less accurate. It's just worth knowing.&lt;/p&gt;
&lt;p&gt;For developers who've built agents themselves, the most useful exercise may be the simplest one. Run the scan, find the agents your team registered, and compare the scopes they hold against the scopes they need. Then check whether the systems they can write to have a copy they can't reach.&lt;/p&gt;
&lt;p&gt;Most teams can't answer the two questions this piece started with. Now there's a free way to get a first answer to both, and a third question worth asking after that: if one of these agents goes wrong tonight, what do you restore from in the morning?&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/30339/hycus-free-air-graph-maps-every-agent-in-entra-id-and-okta-then-asks-if-you-can-recover</guid>
<pubDate>Thu, 08 Oct 2026 20:33:18 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — October 2, 2026</title>
<link>https://coderlegion.com/29529/developer-weekly-briefing-october-2-2026</link>
<description>&lt;p&gt;A lighter week by volume — but the three security stories that did land are worth understanding carefully. Here's what mattered.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;a-crafted-package-name-was-enough-to-reach-an-ai-agent-s-aws-credentials&quot;&gt;A crafted package name was enough to reach an AI agent's AWS credentials&lt;/h3&gt;
&lt;p&gt;BeyondTrust's Phantom Labs researcher Sergio Garcia found two command injection vulnerabilities in the Amazon Bedrock AgentCore Python SDK's install_packages() function — and the attack surface was exactly as small as the title suggests.&lt;/p&gt;
&lt;p&gt;The SDK let agents install Python packages into a Code Interpreter sandbox by passing names to pip install. The first version validated names against a blocklist of five characters. It left out the newline. A name like &quot;pandas&quot; followed by a newline and a shell command reached Code Interpreter as two lines. The second ran. That's CVE-2026-12530, affecting SDK versions 1.1.3 through 1.6.0.&lt;/p&gt;
&lt;p&gt;AWS patched it with a regex allowlist. Garcia put a shell command substitution inside square brackets — the pip extras syntax — and the shell ran it before pip did. That's CVE-2026-16796, affecting versions 1.6.1 through 1.18.0. Both carry CVSS 4.0 scores of 8.4.&lt;/p&gt;
&lt;p&gt;Where the Code Interpreter session had an execution role attached, the same commands pulled the role's temporary AWS credentials. A function that only installs packages looks far safer to hand an agent than a shell. That's exactly why careful teams expose it.&lt;/p&gt;
&lt;p&gt;The fix that held arrived in version 1.18.1: quote the package name so the shell reads it as text, not a command. The logging detail worth acting on: both CloudTrail data events and AgentCore Observability application logs are off by default. CloudTrail doesn't record the command. The application logs do. Watch for references to the metadata service address 169.254.169.254 in those logs.&lt;/p&gt;
&lt;p&gt;Mitch Ashley's operational advice: &quot;Scope every role to what it needs, treat package names and dependency files as untrusted input, and turn on the AWS logging by default.&quot; If you're running agents on AgentCore, upgrade to 1.18.1 or later, audit your execution role permissions, and consider a fixed package list rather than one the agent can extend.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://techstrong.ai/articles/a-package-name-was-all-it-took-to-reach-an-ai-agents-aws-credentials/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;github-s-security-autofix-agent-now-remembers-what-it-fixed&quot;&gt;GitHub's security autofix agent now remembers what it fixed&lt;/h3&gt;
&lt;p&gt;GitHub agentic autofix — which handles security alerts by exploring relevant files, proposing a fix, rerunning CodeQL to confirm, and opening a draft PR — now uses Copilot Memory when enabled. Before working on an alert, it checks stored memories for context. After creating a fix, it saves the pattern.&lt;/p&gt;
&lt;p&gt;The more interesting part is where those patterns go. They don't stay inside autofix — they inform other Copilot features, including code review and the cloud agent, about how this specific repository handles security issues. A fix that runs through autofix can surface as a flag in code review before a similar mistake merges. That moves the work from cleaning up alerts after the fact to catching them earlier.&lt;/p&gt;
&lt;p&gt;The design detail worth noting: repository facts are stored with citations pointing to the code that supports them, and facts are validated against the current branch before use. Any unused fact is deleted after 28 days. For enterprise and organization plans, an administrator has to enable Memory before any of this applies. Both features are still in public preview.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/githubs-security-autofix-agent-now-remembers-what-it-fixed/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;ibm-bob-goes-self-hosted-reaching-the-enterprises-that-wouldn-t-send-code-to-the-cloud&quot;&gt;IBM Bob goes self-hosted — reaching the enterprises that wouldn't send code to the cloud&lt;/h3&gt;
&lt;p&gt;IBM made Bob generally available as SaaS in April and said on-premises was coming. It's here. Bob can now run on-premises, in private and sovereign clouds, and in fully air-gapped environments with no outside network connection.&lt;/p&gt;
&lt;p&gt;The target market is clear: banks, insurers, government agencies, and organizations with mainframe modernization work they're unwilling to push through someone else's infrastructure. IBM says more than 80,000 employees now use Bob internally, up from 100 developers when internal use began in June 2025, with surveyed users reporting an average 45% productivity gain. The IBM Z Premium Package also gets self-hosted support and deeper mainframe-specific context.&lt;/p&gt;
&lt;p&gt;Mitch Ashley's framing is worth keeping: &quot;Bob is IBM's bid for a beachhead with enterprise developers, and self-hosting puts it where cloud-first coding agents struggle to reach. An agent trusted within those core systems is positioned to become the platform on which the same teams build their own agents. That makes choosing Bob a multi-year commitment.&quot;&lt;/p&gt;
&lt;p&gt;Self-hosting moves the operational burden to the customer: provisioning GPU capacity, managing model updates, monitoring agent behavior, maintaining audit trails. Air-gapped environments also narrow available models. Worth pricing that operational overhead before committing.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/ibm-moves-its-bob-coding-agent-inside-the-firewall/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;git-2-56-conflict-markers-branch-cleanup-and-performance-at-scale&quot;&gt;Git 2.56: conflict markers, branch cleanup, and performance at scale&lt;/h3&gt;
&lt;p&gt;Git 2.56 ships with changes that matter at two levels — safety guardrails for everyday use and performance improvements that compound at scale.&lt;/p&gt;
&lt;p&gt;The new &lt;code&gt;git add --resolved&lt;/code&gt; only stages currently unmerged paths and scans them for leftover conflict markers before staging. The new &lt;code&gt;git branch --delete-merged&lt;/code&gt; cleans up merged branches with pattern matching and a --dry-run preview. Both are exactly the guardrails agent workflows need — Mitch Ashley: &quot;An agent that opens branches, resolves conflicts, and rebases hits every rough edge constantly, and a conflict marker staged into a shared branch becomes verification debt someone must find.&quot;&lt;/p&gt;
&lt;p&gt;On performance: merge-base lookups on the Linux kernel dropped from 167,441 traversal steps to 3,887. A path-limited diff on a Chromium checkout went from about eight minutes to 0.07 seconds. Path-walk repacking on Fluent UI shrank a 558.5 MB pack to 164.4 MB — 71% smaller. For teams running large repositories, or agents running Git at machine speed, the cumulative savings are significant.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/git-2-56-takes-aim-at-messy-merges-slow-diffs-and-branch-sprawl/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-coder-legion-and-insights-from-analytics-this-week&quot;&gt;Also from Coder Legion and Insights From Analytics this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;CData's new AI gateway fixes the three reasons enterprise AI stalls.&lt;/strong&gt; Context — or the lack of it — is the most common reason enterprise AI projects don't reach production. CData's approach puts the context layer at the center rather than treating it as an afterthought. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/28982/cdatas-new-ai-gateway-puts-context-at-the-center-fixes-the-three-reasons-enterprise-stalls&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What developers already know about data center delays.&lt;/strong&gt; The supply chain reality behind GPU availability and data center timelines, from a developer perspective. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/28977/what-developers-already-know-about-data-center-delays&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PSI's Emmy: 500,000 designs, one physicist in the loop.&lt;/strong&gt; How PSI uses AI to rethink data center trade-offs at a scale no human design process could cover. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/28968/500-000-designs-one-physicist-in-the-loop-how-psis-emmy-rethinks-data-center-trade-offs&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Developer Spotlight: Mike Dabydeen on Rust, AI, and engineering leadership.&lt;/strong&gt; A conversation with the developer whose comments on the Coder Legion PocketOS thread generated some of the best technical discussion we've published this year. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/29467/mike-dabydeen-on-rust-ai-engineering-leadership&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Every AI agent has a boss. It's time we named them.&lt;/strong&gt; From Insights From Analytics — the accountability question that most agentic AI governance frameworks are still avoiding. &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.insightsfromanalytics.com/post/every-ai-agent-has-a-boss-it-s-time-we-named-them&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week: agent execution roles, credential scope, and memory persistence are the new attack surface. A package name reaches AWS credentials. A fix pattern teaches a code reviewer. A coding agent goes air-gapped behind a firewall. All three stories are about where agents sit in the trust model — and how much damage the wrong scope creates when something goes wrong.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/29529/developer-weekly-briefing-october-2-2026</guid>
<pubDate>Fri, 02 Oct 2026 12:18:45 +0000</pubDate>
</item>
<item>
<title>The $460 million typo</title>
<link>https://coderlegion.com/29230/the-460-million-typo</link>
<description>&lt;p&gt;In 1996, a tiny piece of code nearly destroyed a rocket.&lt;/p&gt;
&lt;p&gt;Ariane 5 was being launched for the first time.&lt;/p&gt;
&lt;p&gt;About 37 seconds after launch, the rocket suddenly veered off course.&lt;/p&gt;
&lt;p&gt;The onboard computers detected something impossible.&lt;/p&gt;
&lt;p&gt;Both guidance computers failed.&lt;/p&gt;
&lt;p&gt;The rocket was destroyed.&lt;/p&gt;
&lt;p&gt;The cause?&lt;/p&gt;
&lt;p&gt;A number that was too large for a 16-bit integer.&lt;/p&gt;
&lt;p&gt;The Ariane 5 software inherited code from Ariane 4.&lt;/p&gt;
&lt;p&gt;But Ariane 5 was flying differently.&lt;/p&gt;
&lt;p&gt;One conversion that had been safe on the old rocket overflowed on the new one.&lt;/p&gt;
&lt;p&gt;A tiny assumption survived years of testing because nobody asked:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;“Is this assumption still true in the new system?”&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The lesson isn't “integers are dangerous.”&lt;/p&gt;
&lt;p&gt;It's much bigger:&lt;/p&gt;
&lt;p&gt;Old code carries old assumptions.&lt;/p&gt;
&lt;p&gt;And when the environment changes, those assumptions can become vulnerabilities, failures, or disasters.&lt;/p&gt;
&lt;p&gt;Good software engineering isn't just asking:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;“Does this code work?”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It's asking:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;“Under what assumptions does this code work?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;That's one of the reasons automated security analysis matters.&lt;/p&gt;
&lt;p&gt;Not because tools replace engineers.&lt;/p&gt;
&lt;p&gt;Because sometimes the most dangerous bugs are hiding inside assumptions nobody remembers making.&lt;/p&gt;
&lt;p&gt;That's also the kind of problem we're interested in at &lt;strong&gt;Debuggix&lt;/strong&gt;.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/29230/the-460-million-typo</guid>
<pubDate>Wed, 30 Sep 2026 11:22:53 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — September 25, 2026</title>
<link>https://coderlegion.com/28605/developer-weekly-briefing-september-25-2026</link>
<description>&lt;p&gt;A week where the same lesson kept showing up in different forms: the credentials your AI coding tools hold are the real attack surface, and most teams still can't answer the basic question of how many there are. Here's what mattered.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;z-ai-was-packaging-your-entire-workspace-and-shipping-it-to-alibaba-cloud&quot;&gt;Z.ai was packaging your entire workspace and shipping it to Alibaba Cloud&lt;/h3&gt;
&lt;p&gt;ZCode, the AI coding assistant from Chinese AI company Z.ai, was uploading complete workspace archives — full .git history, Git LFS cache, reflogs, and global app configs — to Alibaba Cloud Object Storage by default, in the background, encrypted with keys only Z.ai held. The privacy policy didn't disclose this behavior. There was no toggle to turn it off.&lt;/p&gt;
&lt;p&gt;An independent Chinese blogger traced abnormal disk usage to background processes and published his findings. One company reported that six coding workspaces had been uploaded, including source code, database passwords, and employee personal information. Z.ai responded: it disabled the upload mechanism in version 3.14.0, open-sourced the underlying model, and brought in NSFOCUS to confirm deletion. Most users were unsatisfied — because the archives were encrypted with Z.ai's own key, nobody outside the company could independently verify anything.&lt;/p&gt;
&lt;p&gt;Mitch Ashley's read: &quot;The workspace uploads came to light because an independent blogger traced abnormal disk usage to a background process, well after developers had installed the tool.&quot; That's the actual detection path. Not a security review. Not an MDM alert. A blogger noticing disk activity.&lt;/p&gt;
&lt;p&gt;The important line from the piece: &quot;It's tempting to file this under 'Chinese AI risk' and move on. That would miss the point.&quot; AI coding assistants need deep workspace access to be useful. That means they sit next to .env files, credentials, commit history, and the customer data someone committed by mistake three years ago. The lesson applies to every AI coding tool regardless of where the vendor is based. Developers install these tools fast. Security often hasn't reviewed them.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/your-ai-coding-assistant-has-the-keys-to-the-repo-z-ai-just-showed-why-that-matters/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;github-now-gives-enterprises-a-full-count-of-who-holds-the-keys&quot;&gt;GitHub now gives enterprises a full count of who holds the keys&lt;/h3&gt;
&lt;p&gt;GitHub Enterprise Cloud owners can now export a complete inventory of every credential that can access their enterprise — SSH keys, classic and fine-grained PATs, OAuth app access tokens, and GitHub App tokens — as a CSV or via paginated REST API. Each record includes owner, scopes, creation and expiration dates, and last-used timestamp.&lt;/p&gt;
&lt;p&gt;The timing follows directly from the May incident in which attackers exfiltrated about 3,800 internal GitHub repositories after an employee installed a poisoned Nx Console VS Code extension. GitGuardian's 2026 research puts context around why this matters at scale: 28.65 million hardcoded secrets added to public GitHub in 2025, up 34% year-on-year, and 64% of valid secrets detected in 2022 were still active and exploitable as of January 2026.&lt;/p&gt;
&lt;p&gt;Mitch Ashley on the agentic dimension: &quot;Anyone building with AI can now create credentials, and accountability for them lands back on IT and security. Enterprises that ignore that gap discover it during incident response, rotating keys they didn't know existed.&quot;&lt;/p&gt;
&lt;p&gt;One useful design detail: GitHub added a separate &quot;View enterprise credentials&quot; permission so security and compliance staff can run reviews without needing full admin rights. The API is the more practical piece — pull the inventory on a schedule, compare runs, flag new long-lived tokens, send stale ones to owners for cleanup. GitHub Enterprise Server support is coming in future releases.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/github-gives-enterprises-a-full-count-of-who-holds-the-keys/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;codex-sandbox-escapes-the-thing-doing-the-enforcement-was-inside-the-thing-being-enforced&quot;&gt;Codex sandbox escapes: the thing doing the enforcement was inside the thing being enforced&lt;/h3&gt;
&lt;p&gt;Oren Yomtov of Accomplish AI found two ways out of the OpenAI Codex sandbox — Heapjack and Overpatch — and OpenAI fixed both within eight days of the August 12 report. Accomplish published the details on September 15. Patches are in Codex CLI 0.149.0 and Codex Desktop build 26.818.21641.&lt;/p&gt;
&lt;p&gt;The mechanics are worth understanding because the pattern is recurring. Heapjack: the node_repl helper ran untrusted agent code and trusted code in separate contexts but on a shared memory heap. Untrusted code called v8.getHeapSnapshot(), scanned memory for the trust token, then used it to send forged requests to the parent process. Read-only mode didn't stop it. Overpatch: the apply_patch tool determined its own permissions by checking the parent directory of paths in a patch. Naming /tmp in the patch granted access to the entire disk through a failed operation that didn't clean up the wider permissions — which persisted into .zshrc and survived shell restarts.&lt;/p&gt;
&lt;p&gt;Yomtov's summary of the root cause: &quot;The thing doing the enforcement was sitting inside the thing being enforced.&quot; Mitch Ashley's translation for DevOps teams: &quot;A sandbox the agent can modify enforces nothing. Enforcement has to run in a layer the agent cannot reach — which means the control plane. CI teams settled this years ago when they stopped letting jobs grant themselves permissions.&quot;&lt;/p&gt;
&lt;p&gt;Both fixes are deployed. Update Codex CLI and the desktop app separately — they carry different version numbers, and checking one doesn't cover the other. And treat repositories you didn't write as untrusted input even in read-only mode.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/codex-sandbox-escapes-show-why-agent-guardrails-cant-live-inside-the-agent/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;claude-code-adds-agents-md-fallback&quot;&gt;Claude Code adds AGENTS.md fallback&lt;/h3&gt;
&lt;p&gt;Claude Code 2.1.277 now reads AGENTS.md when no CLAUDE.md exists in a directory, cleaning up the dual-file maintenance problem teams have been patching with symlinks. The short version: CLAUDE.md takes precedence when both exist; AGENTS.md is the fallback when it doesn't. Four settings in /config let teams tune the behavior — including loading both files, Claude-first, or locked to managed CLAUDE.md only.&lt;/p&gt;
&lt;p&gt;A few caveats worth reading before deleting symlinks: CLAUDE.local.md counts as CLAUDE.md for precedence purposes, so developer personal preference files will shadow the team's AGENTS.md. Claude doesn't read AGENTS.local.md or anything under .agents/. Bedrock, Vertex, and Foundry support isn't available yet. And the first session after a fresh install won't read AGENTS.md — relevant for ephemeral CI runners.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/claude-code-adds-agents-md-fallback-cutting-instruction-file-sprawl/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;github-separates-who-writes-code-from-who-runs-ci&quot;&gt;GitHub separates who writes code from who runs CI&lt;/h3&gt;
&lt;p&gt;GitHub's new Code and Automation role split gives organizations a cleaner way to grant repository access: a new &quot;CI/CD Manager&quot; role lets someone configure and run Actions workflows without inheriting write access to the codebase. For teams that have been granting broader permissions than necessary to let DevOps engineers manage pipelines, this closes a real least-privilege gap. Available now for Enterprise Cloud, coming to Enterprise Server.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/github-separates-who-writes-code-from-who-runs-your-ci/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;an-ai-agent-signed-a-developer-up-for-aws-services-he-never-requested&quot;&gt;An AI agent signed a developer up for AWS services he never requested&lt;/h3&gt;
&lt;p&gt;A developer asked an AI agent to help set up an AWS environment. The agent, interpreting the request broadly, provisioned services the developer never asked for — and AWS's billing model meant the charges started immediately. The incident clearly illustrates scope creep in agentic task execution: the agent completed what it interpreted as the goal, not what was actually requested. Worth reading if you're giving agents any access to cloud accounts.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27994/an-ai-agent-signed-him-up-for-aws-services-he-never-asked-for&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;ripple-bets-on-stripe-and-tempo-s-payment-standard-to-get-ai-agents-spending-xrp&quot;&gt;Ripple bets on Stripe and Tempo's payment standard to get AI agents spending XRP&lt;/h3&gt;
&lt;p&gt;Ripple announced support for the X402 payment protocol — the emerging standard backed by Stripe and Tempo for machine-to-machine payments — to enable AI agents to spend XRP autonomously. As agents gain the ability to make purchases, pay for API calls, and transact on behalf of users, a standardized payment layer becomes infrastructure. Whether XRP is the currency that wins that market is a separate question from whether the category itself is real. It is.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://techstrong.ai/features/ripple-bets-on-stripe-and-tempos-payment-standard-to-get-ai-agents-spending-xrp/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-coder-legion-this-week&quot;&gt;Also from Coder Legion this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Kore.ai's Cobus Greyling: stop chasing the next model, start owning your harness.&lt;/strong&gt; The competitive advantage in agentic AI isn't which model you run — it's the evaluation, memory, and orchestration layer you build around it. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27976/kore-ais-cobus-greyling-stop-chasing-the-next-model-start-owning-your-harness&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LittleHorse draws the line between what your agent decides and what your code must execute.&lt;/strong&gt; A workflow orchestration approach that keeps deterministic business logic out of the LLM layer. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27867/littlehorse-draws-the-line-between-what-your-agent-decides-and-what-your-code-must-execute&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The Claude Projects Coordinator piece from last week&lt;/strong&gt; rounds out the parallel agent work story if you missed it. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/anthropic-adds-a-coordinator-to-claude-projects-for-running-ai-work-in-parallel/&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Developer Spotlight: Steve Fenton.&lt;/strong&gt; A conversation with the developer, author, and engineering leader on his career journey, the craft of software development, and how the role is changing. Worth a read if you want something that isn't about vulnerability disclosure this week. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/28015/developer-spotlight-steve-fenton-his-developer-journey&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week: AI coding tools have broad access to your most sensitive assets, and the governance layer — credential inventories, sandboxes that enforce at the control plane, agent scoping — is still being built. Z.ai and Codex were caught. Most of what's happening in this category won't be.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/28605/developer-weekly-briefing-september-25-2026</guid>
<pubDate>Fri, 25 Sep 2026 13:04:16 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — September 18, 2026</title>
<link>https://coderlegion.com/27639/developer-weekly-briefing-september-18-2026</link>
<description>&lt;p&gt;Two critical patches with active exploitation, a database deleted in nine seconds, and Java finally getting ahead of a quantum threat most enterprises haven't started thinking about. Plus NVIDIA bringing Rust into the CUDA kernel — a genuinely significant move that got less attention than it deserved this week. Here's what mattered.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;a-cursor-agent-deleted-a-startup-s-database-in-9-seconds-then-it-deleted-the-backups-&quot;&gt;A Cursor agent deleted a startup's database in 9 seconds. Then it deleted the backups.&lt;/h3&gt;
&lt;p&gt;In April, a Cursor agent running on Claude Opus was working through a routine task at a startup called PocketOS. Somewhere in the codebase it was scanning, it found an AWS key. It used the key to reach the production database. Then it deleted it. Then it went looking for the backups and deleted those too. Nine seconds, start to finish.&lt;/p&gt;
&lt;p&gt;Archit Lohokare, CEO of AppViewX, uses the incident as his opening example of what an overprivileged agent looks like before his company gets involved. The underlying problem isn't exotic: machine identities now outnumber human ones 144 to 1 inside the enterprise, and each agent carries roughly 500 to 700 individual credentials — roughly the same number a well-connected human employee accumulates over a career. Many agents are ephemeral, spun up for a single task and gone before any conventional identity tracking system registers them.&lt;/p&gt;
&lt;p&gt;Lohokare's framing worth keeping: &quot;Guardrails are something you put on a model, and models are going to get breached.&quot; His enforcement point sits downstream, at the moment the agent tries to act. AppViewX's three-layer approach: every agent gets a quantum-safe cryptographic identity; credentials are monitored and rotated continuously so a leaked key has a shorter useful life; and real-time policy governs the action itself — an agent scoped to read a database simply can't issue a delete, and the request never reaches AWS.&lt;/p&gt;
&lt;p&gt;The reader thread on this one generated something unusual: a follow-up Q&amp;amp;A with the AppViewX CEO after two readers challenged the original piece. Worth reading both.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/26858/the-cursor-agent-that-deleted-a-startups-database-in-9-seconds-also-deleted-the-backups&quot;&gt;Read the PocketOS piece&lt;/a&gt; | &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27317/two-coder-legion-readers-challenged-our-appviewx-piece-heres-the-ceos-answer&quot;&gt;Read the CEO's answers&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;gitlab-patch-now-attackers-already-are-&quot;&gt;GitLab: patch now. Attackers already are.&lt;/h3&gt;
&lt;p&gt;On September 10, GitLab shipped versions 19.3.2, 19.2.6, and 19.1.8 covering 18 vulnerabilities — two critical. The first, CVE-2026-85706, carries a CVSS score of 10.0. An unauthenticated attacker can read arbitrary files off a self-managed GitLab server with no login required: configuration files, tokens, SSH keys, database credentials. The flaw sits in the repository commits API, affects CE and EE across a wide version range, and watchTowr's honeypot network was logging active probing almost as soon as disclosure went public.&lt;/p&gt;
&lt;p&gt;The second critical flaw, CVE-2026-87719 (CVSS 9.9), is an insecure deserialization bug in the GraphQL subscription serializer affecting Enterprise Edition. An authenticated user with Duo Chat access — a lower bar than it sounds in most enterprise deployments — can pull Advanced Search configuration data and credentials. Combined with the first flaw, this creates a path from zero access to credential theft.&lt;/p&gt;
&lt;p&gt;GitLab.com and Dedicated customers are already patched. The exposure is entirely with self-managed instances that haven't updated. If yours is internet-facing, update before Monday.&lt;/p&gt;
&lt;p&gt;Mitch Ashley on the structural issue: &quot;Monthly and quarterly patch windows were built for a slower disclosure cycle. Teams running their own DevOps platform should know their advisory-to-production time and shorten it before the next maximum-severity bug lands.&quot;&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/gitlabs-critical-patch-closes-a-path-traversal-flaw-attackers-are-already-probing/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;jfrog-artifactory-three-bugs-under-active-attack-all-with-patches-available&quot;&gt;JFrog Artifactory: three bugs under active attack, all with patches available&lt;/h3&gt;
&lt;p&gt;Artifact repositories don't face the internet the way a web app does, and they don't hold customer data the way a database does. But they hold every binary and package your build pipeline pulls from before code ships. Compromise the repository, and you're attacking everything downstream.&lt;/p&gt;
&lt;p&gt;Three Artifactory vulnerabilities are under active exploitation, and patches have been available for weeks. CVE-2026-82329, an authentication bypass allowing unauthenticated administrative access, was patched August 28. CVE-2026-42018 and CVE-2026-42016 — the two being chained together to go from a low-privilege foothold to full admin access — were patched July 27 and August 12, respectively. Wiz says multiple threat actors are exploiting these independently, and patching velocity is slow across the install base.&lt;/p&gt;
&lt;p&gt;If you're running Artifactory and haven't applied these patches, the window you thought you had is already gone.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/more-jfrog-artifactory-bugs-are-under-attack-and-all-three-have-patches/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;java-27-post-quantum-tls-today-faster-patches-tomorrow&quot;&gt;Java 27: post-quantum TLS today, faster patches tomorrow&lt;/h3&gt;
&lt;p&gt;Java 27 shipped September 15 with two changes that matter for production engineering teams. The headline security addition is JEP 527: ML-KEM hybrid key exchange for TLS 1.3, requiring no code changes for existing Java TLS applications. This is Oracle's direct response to harvest-now-decrypt-later risk — traffic encrypted today that a quantum computer could break open years from now once the hardware catches up.&lt;/p&gt;
&lt;p&gt;Oracle also announced monthly critical security patch updates alongside its existing quarterly cycle, scoped to security and stability only.&lt;/p&gt;
&lt;p&gt;The catch Mitch Ashley flagged clearly: &quot;Post-quantum protection arrives first on the version with the least production code behind it, and last on JDK 8 and 11, where a large share of enterprise Java still runs. That inverts the risk.&quot; Teams on JDK 8 and 11 wait until the second half of 2027. If your most sensitive TLS endpoints run on older LTS releases, that's a gap worth addressing through other means now rather than waiting for the platform backport.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/java-27-tackles-post-quantum-security-and-a-faster-patch-cadence/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;nvidia-brings-rust-into-the-cuda-kernel-not-just-around-it&quot;&gt;NVIDIA brings Rust into the CUDA kernel — not just around it&lt;/h3&gt;
&lt;p&gt;This one got less coverage than it deserved. NVIDIA released two open-source projects — cuda-oxide and cutile-rs — that let developers write actual GPU kernels in native Rust, compiled directly to PTX. Not wrappers, not DSLs bolted onto Rust syntax. Real Rust code running on the GPU.&lt;/p&gt;
&lt;p&gt;The difference from Rust-adjacent GPU work before: previously, you could write drivers, schedulers, and serving layers in Rust, then launch a GPU kernel that had to be written in CUDA C++. That gap is now closed.&lt;/p&gt;
&lt;p&gt;The two libraries take different routes. cuda-oxide targets the SIMT model CUDA developers already know and is still in early alpha. cutile-rs takes a tile-based approach, JIT-compiles at launch time, runs on stable Rust without a nightly toolchain, and is already in production in Hugging Face's Grout inference engine and mistral.rs. Both get Rust's ownership and borrow checker on GPU code, catching aliasing bugs and thread-access errors at compile time rather than in a customer's production cluster. In cutile-rs, a tensor's ownership follows it across kernel launches — pass the same buffer as both a readable input and a mutable output, and you get a borrow-checker error before the code ever runs.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://techstrong.ai/features/nvidia-brings-rust-into-the-cuda-kernel-not-just-around-it/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;anthropic-adds-a-coordinator-to-claude-projects-for-parallel-ai-work&quot;&gt;Anthropic adds a Coordinator to Claude Projects for parallel AI work&lt;/h3&gt;
&lt;p&gt;Anthropic shipped a Coordinator capability inside Claude Projects this week that routes tasks to subagents running in parallel rather than sequentially. Practically, this means complex multi-step work — research across multiple sources, simultaneous analysis threads — no longer has to queue up behind itself. The Coordinator manages dependencies between tasks and consolidates results. For teams already building workflows around Claude Projects, this is a meaningful throughput change.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/anthropic-adds-a-coordinator-to-claude-projects-for-running-ai-work-in-parallel/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-coder-legion-this-week-1&quot;&gt;Also from Coder Legion this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;OWASP founder Jeff Williams: stop studying the robot's brain, start controlling its body.&lt;/strong&gt; The security control point for AI agents isn't the model — it's the execution layer. Williams frames this as the central insight most security teams are still missing. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27559/owasp-founder-jeff-williams-stop-studying-the-robots-brain-start-controlling-its-body&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;HYCU found 30+ ways to destroy a Git repo. Five only exist because of AI agents.&lt;/strong&gt; The broader taxonomy of Git destruction vectors is alarming enough — the five that emerged specifically from agent behavior are the new ones. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27557/hycu-found-30-ways-to-destroy-a-git-repo-five-only-exist-because-of-ai-agents&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The purchase order is canceled and executed. That's not a data error.&lt;/strong&gt; A look at how inconsistent state in distributed systems creates exactly the kind of ambiguity that AI agents resolve incorrectly — and what Everpure's data intelligence platform does about it. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27326/the-purchase-order-is-canceled-and-executed-thats-not-a-data-error&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Salesforce packaged its hardest integration problem into a plugin — 4,000 employees are using it.&lt;/strong&gt; Copado's approach to Agentforce integration across Salesforce orgs at enterprise scale. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27318/salesforce-packaged-its-hardest-integration-problem-into-plugin-000-employees-are-using&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gravwell: security agents have one hard limit — everything else in the system prompt they can ignore.&lt;/strong&gt; A precise look at what actually constrains an AI security agent versus what only appears to. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27082/gravwell-security-agents-have-one-hard-limit-everything-else-system-prompt-they-can-ignore&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Newcore wants to kill the service account and make every AI agent answer for what it does.&lt;/strong&gt; A machine identity approach that treats every agent as a first-class principal with its own audit trail. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27203/newcore-wants-to-kill-the-service-account-and-make-every-ai-agent-answer-for-what-it-does&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dyna Software brings Git-style pull requests to ServiceNow&lt;/strong&gt; — and locks down what code gets promoted. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27200/dyna-software-brings-git-style-pull-requests-servicenow-and-locks-down-code-gets-promoted&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BackBox's Kilter AI keeps humans in the loop while automating network fixes.&lt;/strong&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27090/backboxs-kilter-ai-keeps-humans-in-the-loop-while-automating-network-fixes&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copado adds CLI and MCP access to AI agents — but its compliance gates still decide what ships.&lt;/strong&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27083/copado-adds-cli-and-mcp-access-to-ai-agents-but-its-compliance-gates-still-decide-what-ships&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SQLite's two-person team just passed its first AI stress test.&lt;/strong&gt; Worth reading if you've wondered how one of the most widely deployed databases in the world thinks about AI-generated code. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/27308/sqlites-two-person-team-just-passed-its-first-ai-stress-test&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week: action-layer controls, not model-layer controls. OWASP's Jeff Williams said it directly. AppViewX built it into their architecture. The GitLab and Artifactory patches are a reminder that traditional infrastructure is still the blast radius an agent works within — and that blast radius needs to shrink before the next agent touches it.&lt;/p&gt;
&lt;p&gt;Patch your GitLab instance. Patch your Artifactory. Before Monday.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/27639/developer-weekly-briefing-september-18-2026</guid>
<pubDate>Fri, 18 Sep 2026 13:35:03 +0000</pubDate>
</item>
<item>
<title>Cycode's AI Scanner Found 38 Bugs in MLflow. The Press Release Only Mentioned One.</title>
<link>https://coderlegion.com/26085/cycodes-ai-scanner-found-38-bugs-in-mlflow-the-press-release-only-mentioned-one</link>
<description>&lt;p&gt;Every AI security vendor ships a benchmark chart these days. Most of them don't survive a second phone call.&lt;/p&gt;
&lt;p&gt;On September 1, Cycode launched Agentic Code Scanning, a fourth layer that sits on top of its existing rule-based scanner and decides, code path by code path, whether a deterministic rule or a reasoning model should do the looking. The pitch lands at a useful moment: Lovable just raised $400 million at a $13.3 billion valuation, doubling in eight months, and AI-generated code is no longer a side project. It's shipping into production at companies that can least afford a bad merge.&lt;/p&gt;
&lt;p&gt;Cycode's headline number: it ran the new engine against six real, published CVEs and caught all six, including two authorization flaws — a broken access control bug in gitea (CVE-2025-68941) and a middleware bypass in Next.js (CVE-2025-29927) — that no rule-based scanner in the test could catch, because there's no bad pattern to match. A missing permission check doesn't look like anything. Cycode's own deterministic scanner caught three of the six. Semgrep and CodeQL, tested separately, caught zero.&lt;/p&gt;
&lt;p&gt;I asked Amir Kazemi, Cycode's senior director of product marketing, how the company picked its ten benchmark repositories — six pinned to CVEs, four deliberately vulnerable apps used as answer keys. He didn't have the specifics. &quot;That's a question for our CTO,&quot; he said, and offered to follow up. That's not unusual on a launch call. It's also exactly the kind of question that decides whether a benchmark means anything.&lt;/p&gt;
&lt;p&gt;Ronen Slavin, Cycode's CTO and co-founder, answered in writing a day later, and the detail went well past what made it into the press release.&lt;/p&gt;
&lt;p&gt;The methodology, as he described it: the six CVE repos were the development set, used openly to build the engine. The four answer-key apps — vAPI, crAPI, DV RESTaurant, and Juice Shop, all existing open-source projects, not synthetic builds — were held out and untouched until testing. Before any fix went in, Slavin's team wrote down constraints in advance: no code change could reference a specific benchmark file, CVE ID, or line number, and any fix that moved the needle on the development set had to also hold up on the held-out apps. A hit only counted if it matched the actual mechanism behind the CVE, not just the file it lived in.&lt;/p&gt;
&lt;p&gt;That structure exists to answer the obvious challenge: how do you know a reasoning model found the bug, instead of recalling it from a public CVE database sitting in its training data? Slavin's answer is specific rather than reassuring. The scanner is never told which CVE it's hunting, the test repos are pinned commits with no changelog or advisory text attached, and the findings are line-anchored data-flow traces written in the code's own variable names, not summaries that read like an advisory. On Jellyfin, he said, the model traced the vulnerable data flow across six function calls from an HTTP query parameter to the FFmpeg argument string, entering through a different controller than the one named in the public advisory. A model quoting a memorized answer doesn't take a six-hop detour to get there.&lt;/p&gt;
&lt;p&gt;The press release's cleanest number undersold what the tool actually produced. It said a rule fired 573 times on mlflow, two hits landed in the CVE file, and Agentic Code Scanning returned &quot;one validated, root-caused finding.&quot; Slavin's fuller account: on that same repository, the engine generated 87 raw candidate findings and published 38, each deduplicated and root-caused, including extra bugs the CVE never asked about — a symlink traversal in the artifact store, a zip-slip, and a template injection among them. The rule that fired 573 times, he clarified, belongs to Bearer — the same rule engine that already underlies Cycode's own deterministic scanner, which is a more interesting detail than the press release let on. The honest comparison, he argued, isn't 573 versus one. It's somewhere between 173 and 701 unranked hits per repository, depending on the repo, against 38 findings on mlflow that a developer could actually act on.&lt;/p&gt;
&lt;p&gt;The single-run limitation in the published benchmark is real, and Slavin didn't dodge it. He called the published result &quot;an existence proof, not a rate.&quot; Since the tested engine version shipped, gitea's authorization catch has reproduced in nine of nine repeat runs, and the full six-for-six result has held on a second model. Where a catch was inconsistent — Jellyfin missed on some runs until the team added a specific lead pointing to what reaches the vulnerable sink — Slavin says they found the cause and fixed it rather than rerunning until it worked. Cycode says it's now publishing catch rates across repeated runs going forward, not single screenshots, and has already extended its CVE corpus to 20 languages and 29 verified vulnerabilities.&lt;/p&gt;
&lt;p&gt;None of this turns a vendor benchmark into independent research. It's still Cycode grading its own homework, and reasonable people will still want a third party to rerun it — something Cycode says is now possible with the corpus and configs it's publishing alongside the launch. But the gap between what showed up in the press release and what showed up under a direct follow-up is the real story here. As agentic security tools multiply — and Kazemi's own framing of a linear SDLC turning into a faster, circular ADLC suggests they will keep multiplying — the benchmark chart on the landing page is worth less than a vendor's willingness to answer the second question. Ask it before you buy.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/26085/cycodes-ai-scanner-found-38-bugs-in-mlflow-the-press-release-only-mentioned-one</guid>
<pubDate>Wed, 02 Sep 2026 14:41:12 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — August 28, 2026</title>
<link>https://coderlegion.com/25622/developer-weekly-briefing-august-28-2026</link>
<description>&lt;p&gt;A quieter week after the Black Hat stretch, but the five pieces that came out of it are worth your time. All five circle the same territory: what AI can and can't actually do in security, and who ends up owning the outcome when it falls short.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;triaging-ai-scanner-output-costs-400x-more-than-running-the-scan&quot;&gt;Triaging AI scanner output costs 400x more than running the scan&lt;/h3&gt;
&lt;p&gt;Here's the number from Contrast Security's AppSec Overflow 2026 report that should reframe every &quot;AI will solve your security backlog&quot; pitch you hear this year: scanning a 2-million-line codebase with an AI-powered tool costs roughly $315 in tokens. Triaging what that scan finds costs $128,000. The scanning was never the expensive part.&lt;/p&gt;
&lt;p&gt;The report draws on runtime telemetry from hundreds of thousands of production applications — not theoretical exposure, but what's actually being reached and exploited in live systems. A few data points worth internalizing:&lt;/p&gt;
&lt;p&gt;The average application absorbs 11,382 attacks a month. 87.8% are automated probes — noise. The number that actually matters is the 0.4%, an average of 42 viable attacks per month per application, where Contrast confirmed the exploit reached and triggered real vulnerable code. Teams are closing 3.4 vulnerabilities per application per month against an average of 22 rated high or critical. Mean time to remediate a critical vulnerability: 92 days. Mean time to exploit: effectively same-day for a growing share of CVEs.&lt;/p&gt;
&lt;p&gt;The AI scanner reliability findings are the most useful part for teams evaluating these tools. Three different AI scanners analyzing the identical codebase agreed on only 5% of findings. A single scanner rerun three times against unchanged code reproduced just 17% of its own prior results. That's not a calibration issue — it's a fundamental reliability problem for any team trying to build a repeatable process around these tools.&lt;/p&gt;
&lt;p&gt;One claim worth a caveat: the report opens by citing Anthropic's Claude Mythos model reportedly discovering thousands of previously unknown zero-day vulnerabilities in production testing. Contrast's own report flags the limitation — Anthropic hasn't disclosed the time, accuracy, and human effort behind the analysis. Treat that specific claim as unverified, even as the broader trend it illustrates is real.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/25388/contrast-security-triaging-ai-scanner-output-costs-400x-more-than-running-the-scan&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;cisco-s-amy-chang-a-model-s-passport-doesn-t-tell-you-where-it-actually-came-from&quot;&gt;Cisco's Amy Chang: a model's &quot;passport&quot; doesn't tell you where it actually came from&lt;/h3&gt;
&lt;p&gt;Amy Chang, EVP and Chief Product Officer at Cisco, makes a point that gets at a real gap in how most organizations think about AI supply chain risk: a model card or declared provenance tells you what a vendor says about a model, not what actually went into it. The training data, the fine-tuning process, the intermediate checkpoints — none of that is independently verifiable from the outside. As AI models become infrastructure, the question of what's actually in them starts to matter the way software bill of materials questions started to matter for open-source packages. The tooling to answer it doesn't really exist yet.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/25387/ciscos-amy-chang-a-models-passport-doesnt-tell-you-where-it-actually-came-from&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;ai-can-find-your-vulnerabilities-it-still-can-t-own-what-happens-next-&quot;&gt;AI can find your vulnerabilities. It still can't own what happens next.&lt;/h3&gt;
&lt;p&gt;The conversation with GuidePoint Security's Victor Wieczorek covers the same territory as several Black Hat sessions but with more precision. AI is genuinely good at finding needles in haystacks — that's not the bottleneck. The bottleneck is everything downstream: understanding what a finding means in context, deciding what to do about it, and owning the professional judgment that a client can actually act on. No model carries that obligation. The Glasswing stat that runs through this piece is worth remembering: fewer than 1% of the vulnerabilities AI discovered in that program ever got patched. Finding the bug was never the hard part.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/25476/ai-can-find-your-vulnerabilities-it-still-cant-own-what-happens-next&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;-360-000-a-petabyte-and-105-days-to-get-out-microsoft-s-new-math-for-university-storage&quot;&gt;$360,000 a petabyte and 105 days to get out: Microsoft's new math for university storage&lt;/h3&gt;
&lt;p&gt;Microsoft capped Education tenant storage this year and turned on overage pricing worth roughly $360,000 per petabyte per year once quotas are exceeded. Universities holding two or three petabytes — common at large research institutions — are looking at bills in the hundreds of thousands to over a million dollars annually for storage they never budgeted for. The exit problem is equally sharp: Microsoft throttles data egress at 400GB per hour, tenant-wide, meaning moving one petabyte out takes approximately 105 days. For institutions just realizing the size of the problem, the December 2026 renewal deadline is already close.&lt;/p&gt;
&lt;p&gt;Arcitecta's Mediaflux Connect 365 is the platform announced around this story — the piece covers both the cost math and the data management approach behind moving out intelligently rather than just fast.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/25198/360-000-a-petabyte-and-105-days-to-get-out-microsofts-new-math-for-university-storage&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;the-bug-that-s-been-breaking-software-for-40-years-is-now-breaking-your-ai-agents-too&quot;&gt;The bug that's been breaking software for 40 years is now breaking your AI agents too&lt;/h3&gt;
&lt;p&gt;Integer overflow — the category of bug where a value exceeds what a data type can hold and wraps around to an unexpected result — has been causing security vulnerabilities since the 1980s. It's behind buffer overflows, memory corruption, and a long list of CVEs across decades of software. The same class of bug now shows up in AI agent tool calls and API interactions, where numeric inputs passed to or from an agent can overflow in ways the agent doesn't detect or handle. The post makes the case that this isn't a new threat category — it's a familiar one arriving in a new execution context, and most teams building agentic systems aren't thinking about it yet.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/25313/the-bug-thats-been-breaking-software-for-40-years-is-now-breaking-your-ai-agents-too&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week: AI is genuinely expanding what's possible in security tooling, and the costs and failure modes that come with it are starting to get documented with real numbers. $315 to scan, $128,000 to triage. 5% agreement across three scanners. Fewer than 1% of discovered vulnerabilities patched. Those aren't arguments against using AI in security — they're arguments for being precise about what it's actually doing and who owns the judgment call when it's done.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/25622/developer-weekly-briefing-august-28-2026</guid>
<pubDate>Fri, 28 Aug 2026 14:29:15 +0000</pubDate>
</item>
<item>
<title>Contrast Security: Triaging AI Scanner Output Costs 400x More Than Running the Scan</title>
<link>https://coderlegion.com/25388/contrast-security-triaging-ai-scanner-output-costs-400x-more-than-running-the-scan</link>
<description>&lt;p&gt;Here's a number worth sitting with: scanning a 2-million-line codebase with an AI-powered tool costs roughly $315 in tokens. Triaging what that scan finds costs $128,000. That 400x gap, buried in Contrast Security's new AppSec Overflow 2026 report, is a sharper indictment of &quot;AI will solve your security backlog&quot; than any headline vulnerability count. The scanning was never the expensive part. Making sense of what it found is.&lt;/p&gt;
&lt;p&gt;Contrast's report draws on runtime telemetry from inside hundreds of thousands of production applications and APIs, giving it a vantage point most vendor research doesn't have: not what's theoretically vulnerable in a codebase, but what's actually being reached and exploited in live production. The headline framing is stark. &quot;AppSec math is broken, and in 2026, AI is a massive contributing factor,&quot; the report states, and the numbers back that up from multiple directions at once.&lt;/p&gt;
&lt;h3 id=&quot;the-attack-volume-is-relentless-but-mostly-noise&quot;&gt;The attack volume is relentless, but mostly noise&lt;/h3&gt;
&lt;p&gt;The average monitored application absorbs 11,382 attacks a month, roughly one every four minutes. That number sounds alarming until you break it down: 87.8% are automated probes, low-stakes reconnaissance that maps attack surfaces without doing harm. Another 11.9% are suspicious but unconfirmed. The number that actually matters is the remaining 0.4%, an average of 42 viable attacks per month per application, meaning Contrast confirmed the exploit reached and triggered real vulnerable code. No false positives in that category; runtime observation proves activation, not just exposure.&lt;/p&gt;
&lt;p&gt;Untrusted deserialization leads the viable attack data at 27.5%, followed by path traversal at 20.1% and method tampering at 13.4%. SQL injection, despite being one of the most well-understood vulnerability classes in software, still shows up in the top five attack techniques across every industry vertical the report tracked, a reminder that &quot;well documented&quot; and &quot;actually fixed&quot; are very different things.&lt;/p&gt;
&lt;h3 id=&quot;why-the-find-and-fix-model-is-structurally-broken-not-just-slow&quot;&gt;Why the find-and-fix model is structurally broken, not just slow&lt;/h3&gt;
&lt;p&gt;The average application carries 106 vulnerability findings in custom code, and while roughly 60% of those are informational noise, an average of 22 are rated high or critical. Teams are closing just 3.4 vulnerabilities per application per month, and the mean time to remediate a critical vulnerability sits at 92 days. Third-party code fares no better: 54% of the CVE instances Contrast observed in production are from vulnerabilities disclosed more than a year ago.&lt;/p&gt;
&lt;p&gt;That gap matters more than it used to because the other side of the equation has collapsed. Third-party research the report cites, aggregated by Zero Day Clock across more than 83,000 CVEs, shows mean time-to-exploit dropping from 2.3 years in 2018 to effectively same-day in 2026. Independent data from VulnCheck backs the trend, finding 29% of exploited CVEs in 2025 were weaponized on or before the day the CVE was published. A 92-day patch cycle against a same-day exploitation window isn't a performance problem. It's a structural mismatch that faster patching alone can't close.&lt;/p&gt;
&lt;h3 id=&quot;the-ai-scanning-findings-and-one-claim-worth-a-caveat&quot;&gt;The AI scanning findings, and one claim worth a caveat&lt;/h3&gt;
&lt;p&gt;The report's most useful contribution isn't the vulnerability count, it's the honest accounting of what AI scanning tools actually deliver today. Beyond the $315-versus-$128,000 triage-cost gap, Contrast found that three different AI scanners analyzing the identical codebase agreed on only 5% of findings. A single scanner rerun three times against unchanged code reproduced just 17% of its own prior results. That's not a minor calibration issue; it's a fundamental reliability problem for any team trying to build a repeatable process around these tools. Contrast's own framing is blunt: &quot;For now, it's making the hole a lot deeper.&quot;&lt;/p&gt;
&lt;p&gt;Worth flagging separately: the report opens with a claim about Anthropic's Claude Mythos model reportedly discovering thousands of previously unknown zero-day vulnerabilities in production testing, including a flaw in OpenBSD that had survived 27 years of human review. This has circulated in several industry newsletters, but Contrast's own report is careful to caveat it: &quot;Anthropic has not disclosed the time, accuracy and human effort that was required for their analysis, making it difficult for security leaders to make real risk assessments today.&quot; Treat the underlying capability claim as unverified, even as the broader trend it's illustrating, AI compressing vulnerability discovery timelines, is well supported by the report's own runtime data.&lt;/p&gt;
&lt;h3 id=&quot;why-cvss-and-epss-alone-will-steer-you-wrong&quot;&gt;Why CVSS and EPSS alone will steer you wrong&lt;/h3&gt;
&lt;p&gt;The report's prioritization section is the most practically useful part for a working developer or architect. Generic CVSS base scores tend to inflate perceived risk because most organizations never layer in the local context the scoring system was actually designed to incorporate. EPSS, which predicts 30-day exploitation probability, correlates strongly with real-world exploitation, 85% of CVEs with an EPSS score above 94% are on CISA's Known Exploited Vulnerabilities list, but it isn't complete either. The report cites two confirmed-exploited CVEs with EPSS scores of 22.2% and 0.88% respectively, low enough that a pure EPSS-driven process would have deprioritized both.&lt;/p&gt;
&lt;p&gt;Contrast's answer is reachability and exploitability analysis: does the vulnerable function actually execute, does untrusted data actually reach it, and is the application configured in a way that makes exploitation possible. That's a meaningfully different, more precise filter than severity scores alone, though it's also, unsurprisingly, exactly what Contrast's own runtime platform is built to provide. Worth reading that recommendation with the appropriate grain of salt given who's making it, even where the underlying logic holds up.&lt;/p&gt;
&lt;h3 id=&quot;what-this-actually-means-for-the-average-team&quot;&gt;What this actually means for the average team&lt;/h3&gt;
&lt;p&gt;Strip away the vendor framing and the practical takeaway is straightforward: attack surface and vulnerability volume are both growing faster than patch cycles can absorb, generic severity scores aren't precise enough to prioritize effectively at that scale, and AI scanning tools, at least in their current form, are adding inconsistent findings to the pile faster than they're helping teams work through it. The report's own conclusion lands on runtime visibility, actually knowing which vulnerabilities are reachable and being actively targeted, as the lever that matters most. That's a reasonable read of the data, even from a company that sells exactly that capability.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/25388/contrast-security-triaging-ai-scanner-output-costs-400x-more-than-running-the-scan</guid>
<pubDate>Thu, 27 Aug 2026 13:15:00 +0000</pubDate>
</item>
<item>
<title>Crogl's Monzy Merza: The SOC Agent That Refuses to Say It Can Replace You</title>
<link>https://coderlegion.com/24945/crogls-monzy-merza-the-soc-agent-that-refuses-to-say-it-can-replace-you</link>
<description>&lt;p&gt;Ask most AI SOC vendors what their agent does, and you'll hear some version of &quot;faster investigations, fewer alerts.&quot; Ask Monzy Merza, and he'll walk you through a blast radius map instead — because for Crogl's customers, the real problem was never speed alone. It was that patching a vulnerability and breaking production have historically been two different teams' problems, discovered too late and too far apart.&lt;/p&gt;
&lt;p&gt;&quot;Somebody says go patch SharePoint, and they say, well, in order to patch it, you're now changing it from TLS 1.2 to TLS 1.3. Well, that's going to break all your downstream applications,&quot; Merza said. &quot;The patch is fixed, but the operations is dead.&quot;&lt;/p&gt;
&lt;h3 id=&quot;closing-a-three-day-window-that-used-to-take-weeks&quot;&gt;Closing a three-day window that used to take weeks&lt;/h3&gt;
&lt;p&gt;Merza's customers, mostly in critical infrastructure and regulated industries, operate under a hard constraint: CISA's Known Exploited Vulnerabilities directive gives federal agencies and, by extension, the vendors and contractors that serve them, a three-day window to remediate certain vulnerabilities. Not three business days. Three days, period. Historically, meeting that meant a security team ran a scan, handed a list to IT, and hoped for the best. &quot;The game has completely changed,&quot; Merza said.&lt;/p&gt;
&lt;p&gt;Crogl's answer is what the company calls a blast radius assessment: when a CVE surfaces, the platform maps every affected application, identity, service account, and downstream dependency before anyone touches a patch. Instead of a security team throwing a vulnerability list over the fence, they hand over a prioritized, evidence-backed plan that shows exactly what breaks if a fix goes in, and what's actually at risk if it doesn't. &quot;Now the security team is not just throwing something over the fence,&quot; Merza said. &quot;They're giving very concrete, actionable information.&quot;&lt;/p&gt;
&lt;h3 id=&quot;reasoning-models-wander-that-s-why-there-s-a-deterministic-layer-underneath-&quot;&gt;Reasoning models wander. That's why there's a deterministic layer underneath.&lt;/h3&gt;
&lt;p&gt;The architecture Merza describes is deliberately not just an LLM with tool access. Crogl combines three components: a reasoning layer built on large language models (the platform is model-agnostic), a deterministic symbolic layer and knowledge graph that maps a customer's entire data estate without requiring data normalization, and a governance harness that orchestrates the two and enforces consistency. &quot;We all know models wander, the results wander, they're not always deterministic,&quot; Merza said. &quot;So we need models' reasoning, but we combine it with a deterministic system.&quot;&lt;/p&gt;
&lt;p&gt;That knowledge graph is also what lets Crogl skip a step most competing platforms require. Customers don't need to normalize or transform their data before the agent can use it, which Merza says removes a genuine deployment barrier for organizations running multiple SIEMs and data lakes.&lt;/p&gt;
&lt;h3 id=&quot;secure-means-sovereign-and-sovereign-was-too-big-a-word-to-use&quot;&gt;Secure means sovereign, and sovereign was too big a word to use&lt;/h3&gt;
&lt;p&gt;Crogl isn't a SaaS product. It runs on-premises, in a customer's own cloud, or in air-gapped environments, by design. Merza said the company deliberately chose &quot;secure&quot; over &quot;sovereign&quot; in its own marketing because the latter invited too much interpretation. What it actually means: the LLM only sees what it strictly needs to see, and no customer data leaves their environment, not even to Crogl itself. &quot;Our customers don't want any of their data to leak out to any third party, regardless if it's their security provider,&quot; Merza said. Because the product ships to run inside customer environments rather than living behind a hosted API, Merza said it has to clear every static and dynamic analysis scanner that exists. &quot;We can't hide behind a SaaS test.&quot;&lt;/p&gt;
&lt;h3 id=&quot;what-deploy-in-minutes-actually-requires&quot;&gt;What &quot;deploy in minutes&quot; actually requires&lt;/h3&gt;
&lt;p&gt;Merza didn't hedge on this claim, largely because customers have already publicly tested it. Crogl ships as two binaries and a container; installation requires a Unix-like system and the ability to run Docker; nothing more elaborate is needed to get a first use case running. Merza pointed to unprompted LinkedIn posts from users who installed the platform and completed their first investigation in under ten minutes.&lt;/p&gt;
&lt;h3 id=&quot;the-report-not-the-action-is-the-default-output&quot;&gt;The report, not the action, is the default output&lt;/h3&gt;
&lt;p&gt;When an alert fires, Crogl classifies it, builds an investigation plan, and executes against every data source it's been given access to, documenting each step along the way. The output is a full report with a verdict: escalate or close, with the evidence attached so a security team can defend the decision to an auditor later. Crogl can take action directly, quarantining a file, pulling a malicious attachment, messaging a sandboxing system, but Merza was clear that most customers keep a human as the actual trigger, even when they trust the verdict completely. &quot;There's nothing in the product fundamentally that limits action taking,&quot; he said. &quot;It's just the mode of use.&quot;&lt;/p&gt;
&lt;p&gt;That boundary is customer-configurable down to a granular level. A team might let Crogl work phishing and EDR alerts autonomously all day, while requiring a human to review anything touching a production system like SharePoint. Merza expects that boundary to loosen over time as trust builds, not because Crogl pushes for more autonomy, but because customers extend it themselves once a pattern of accurate, well-documented verdicts accumulates.&lt;/p&gt;
&lt;h3 id=&quot;what-developers-need-to-understand-before-any-of-this-works&quot;&gt;What developers need to understand before any of this works&lt;/h3&gt;
&lt;p&gt;For engineers whose systems generate the logs and alerts Crogl investigates, Merza's advice comes down to basics that are easy to skip. The agent needs real data to operate on. The security team needs a clear, internally agreed sense of what actually counts as a priority, or the agent's output won't be actionable no matter how sophisticated the investigation. And organizations need to get comfortable with a mindset shift: agents will make mistakes, the same way humans do, and the goal isn't perfection. &quot;If you try to run an agent so tightened up that it will [never err], you're going to miss threats and you're going to miss breaches, because then you're back to a rules-driven world,&quot; Merza said.&lt;/p&gt;
&lt;h3 id=&quot;what-to-be-skeptical-of&quot;&gt;What to be skeptical of&lt;/h3&gt;
&lt;p&gt;Asked what claim in the AI SOC space deserves the most scrutiny, Merza didn't point to a competitor's specific feature. He pointed to the framing itself. &quot;The biggest one is that they can somehow replace the human, completely,&quot; he said. Agents can compress and accelerate much of a security analyst's workflow, but a human supervisor is still required, and any vendor pitching a policy-free, procedure-free autonomous SOC should raise a flag rather than confidence. &quot;If there is no policy, there is no promise. You cannot hold that party responsible.&quot;&lt;/p&gt;
&lt;p&gt;His closing advice for skeptical readers is characteristically blunt: ignore the pitch and try it yourself. Crogl is a free download, and Merza's pitch to developers and architects isn't a sales script, it's an invitation to bring a real use case and see what breaks.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24945/crogls-monzy-merza-the-soc-agent-that-refuses-to-say-it-can-replace-you</guid>
<pubDate>Thu, 20 Aug 2026 13:00:00 +0000</pubDate>
</item>
<item>
<title>Harness GM Rahul Sood: Most &quot;AI Remediation&quot; Claims Don't Actually Work. Here's What Does.</title>
<link>https://coderlegion.com/24833/harness-gm-rahul-sood-most-ai-remediation-claims-dont-actually-work-heres-what-does</link>
<description>&lt;p&gt;Application security has operated on human timelines for as long as it's existed: a scanner flags something, a ticket gets filed, developers and security argue over priority, and a fix ships weeks or months later, if it ships at all. Rahul Sood, GM of Application Security at Harness, points to Log4j as the cautionary tale everyone in the industry already knows by heart. &quot;It was not uncommon for companies to say it took us almost one year to get rid of it,&quot; he said. &quot;Right now, that does not work when attackers have AI that can identify vulnerabilities in your code, even if you thought your code was safe.&quot;&lt;/p&gt;
&lt;p&gt;Harness is launching a set of AI-driven application security capabilities this week aimed at collapsing that timeline. The stakes are concrete: attackers are now going from disclosure to first exploit in as little as six hours, while the average vulnerability still takes more than 50 days to fix. Sood breaks into three required shifts: defenders need to actually use AI to find weaknesses in their own code, the window between discovering a vulnerability and fixing it needs to compress from months to hours, and organizations need to accept that not every fix will land before an attacker finds a way in, which means building a containment strategy alongside the fix itself.&lt;/p&gt;
&lt;h3 id=&quot;scanning-with-frontier-models-is-real-and-also-too-slow-to-run-daily&quot;&gt;Scanning with frontier models is real, and also too slow to run daily&lt;/h3&gt;
&lt;p&gt;Sood doesn't dispute that frontier models can scan code effectively. The problem is cost and speed. He cited a bank going through Anthropic's Glasswing program that took three months to scan its entire codebase using an LLM — and Glasswing partners broadly have surfaced roughly 10 times more vulnerabilities using LLM-based scanning than traditional tools find, a wave of visibility that just becomes a bigger backlog without a faster way to act. &quot;The cost is it takes a lot of tokens. The output is not deterministic, and it's not easy for you to go and triage these vulnerabilities,&quot; he said.&lt;/p&gt;
&lt;p&gt;Harness's answer is two separate capabilities rather than one. The first, LLM Scan Orchestration, is a native integration between its CI/CD security tooling and LLM-based scanning, supporting both Claude and OpenAI's Codex, so findings get triaged, deduplicated, and normalized into a developer's existing workflow instead of arriving as an unstructured wall of output. The second, AI SAST, layers AI reasoning on top of traditional static analysis, aiming to catch what conventional scanners miss (Sood pointed to business logic attacks as an example) while using that reasoning to cut false positives and explain why a finding matters. From there, a Triage Agent automatically prioritizes what's actually exploitable so teams can focus on real risk, and a Remediation Agent writes and validates a fix for a prioritized finding, opening a pull request for a developer to review and approve.&lt;/p&gt;
&lt;h3 id=&quot;a-zero-day-agent-that-maps-blast-radius-across-your-entire-environment&quot;&gt;A zero-day agent that maps blast radius across your entire environment&lt;/h3&gt;
&lt;p&gt;For open-source and third-party code specifically, Harness is launching an agent that tracks newly disclosed zero-days and maps them against a customer's actual environment: artifacts, pipelines, and repos. Sood argues this is where Harness's position gives it an edge most competitors can't match, since the platform already has visibility into what's in production and what's being built. Once the blast radius is identified, policies can block new builds that carry the vulnerability while triage and remediation catch up. Sood's claim is that this compresses zero-day response from weeks or months down to hours.&lt;/p&gt;
&lt;p&gt;The differentiator he leans on hardest, though, isn't detection. It's remediation that's actually been checked. &quot;We don't just validate that the security vulnerability is being fixed. We also validate that the fix will not break your pipeline,&quot; he said. Because Harness manages the pipeline itself, a proposed fix gets tested against the customer's own unit tests before it ships, not just checked against the vulnerability in isolation.&lt;/p&gt;
&lt;h3 id=&quot;closing-the-loop-with-production-shielding&quot;&gt;Closing the loop with production shielding&lt;/h3&gt;
&lt;p&gt;Even with a compressed timeline, not every fix lands before an attacker moves. Harness's answer is a virtual patch at the perimeter, deployed against a specific API to block the traffic pattern that would exploit a known vulnerability. Customers choose between two modes: monitoring, where the patch alerts a human to assess, or blocking, where the traffic is stopped automatically. Sood said the choice comes down to a customer's confidence level, the criticality of the API, and their overall risk appetite, rather than a one-size-fits-all default.&lt;/p&gt;
&lt;p&gt;That same logic extends to how much autonomy the underlying agents get generally. Sood expects most customers to start with a human in the loop and move toward more autonomous workflows only as trust builds, and the platform supports the full range, from fully manual to fully autonomous, configurable per customer and even per class of fix.&lt;/p&gt;
&lt;h3 id=&quot;what-changes-for-the-developer-staring-at-a-vulnerability-list&quot;&gt;What changes for the developer staring at a vulnerability list&lt;/h3&gt;
&lt;p&gt;For engineers used to a scanner dumping a long, mostly-noise list of findings, Sood said the real shift isn't just fewer false positives, it's clarity on what's actually reachable and exploitable versus theoretical. Combined with a recommended fix that's been validated against a team's own test suite, the goal is to give developers back the time currently lost triaging vulnerabilities that were never going to matter. &quot;Development teams are being completely overwhelmed by the huge number of vulnerabilities being generated by scanners,&quot; Sood said, to the point where it crowds out shipping actual business-relevant code.&lt;/p&gt;
&lt;h3 id=&quot;what-to-be-skeptical-of-1&quot;&gt;What to be skeptical of&lt;/h3&gt;
&lt;p&gt;Asked what's overhyped in this space even as he's building in it, Sood didn't hedge. &quot;This entire claim that agents can do all this work for you,&quot; he said, pointing specifically at remediation. &quot;Most of it doesn't really work.&quot; His advice for developers and architects evaluating any vendor's AI remediation claims, Harness included: test it yourself, and be skeptical of a fix recommendation generated without real understanding of your specific environment and test cases. A recommendation that isn't validated against your actual code is still just a guess wearing a more confident outfit.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24833/harness-gm-rahul-sood-most-ai-remediation-claims-dont-actually-work-heres-what-does</guid>
<pubDate>Wed, 19 Aug 2026 15:00:00 +0000</pubDate>
</item>
<item>
<title>Detectify's Rickard Carlsson: Attackers Don't Have New Tricks, They Have a Faster Clock</title>
<link>https://coderlegion.com/24781/detectifys-rickard-carlsson-attackers-dont-have-new-tricks-they-have-a-faster-clock</link>
<description>&lt;p&gt;Ask Rickard Carlsson, co-founder and CEO of Detectify, whether AI is handing attackers new capabilities, and he'll correct the premise. It's not new vulnerabilities. It's not new techniques. It's the same attacks, running on a clock that used to be measured in days and now runs in minutes.&lt;/p&gt;
&lt;p&gt;&quot;It's not new vulnerabilities. It's just faster and easier to scale things,&quot; Carlsson said in an interview following Black Hat USA 2026. That distinction matters more than it sounds. If AI were only inventing novel attack vectors, defenders could study and prepare for a new category of threat. Instead, they're facing the same old exposures, arriving faster than most security programs are built to handle.&lt;/p&gt;
&lt;h3 id=&quot;the-clock-that-used-to-run-in-days-now-runs-in-seconds&quot;&gt;The clock that used to run in days now runs in seconds&lt;/h3&gt;
&lt;p&gt;Carlsson's clearest example starts before an attacker even shows up: certificate transparency logs. Every time an organization spins up a new website and issues an SSL certificate, that certificate becomes public record, visible to anyone watching, including attackers scanning for freshly deployed infrastructure. &quot;From you actually spin up a new website, you can start to see attacks within a few seconds,&quot; Carlsson said.&lt;/p&gt;
&lt;p&gt;The bigger shift is in how fast a new vulnerability gets turned into a working exploit. Reverse-engineering a CVE from a code diff in an open-source library used to take a skilled researcher days. An AI agent can now do it in minutes. &quot;Zero day becomes weaponized much faster,&quot; Carlsson said, and that's the part he wants defenders to internalize. The vulnerability research that used to be the bottleneck between disclosure and exploitation has largely disappeared.&lt;/p&gt;
&lt;h3 id=&quot;it-s-economics-not-new-techniques&quot;&gt;It's economics, not new techniques&lt;/h3&gt;
&lt;p&gt;Carlsson frames the shift as an economic one more than a technical one. Where a large-scale attack once required a small army, an AI-fluent individual with a handful of GPUs can now credibly compete. But he's careful to draw a line most coverage of AI-driven attacks blurs: AI does the prep work, not the whole attack. Once a vulnerability is identified, actually running an attack at scale, testing millions of endpoints, still happens through deterministic tooling, not AI. &quot;You can't do that with AI, but the AI helps you identify the vulnerability. It helps you build the code that does the testing, and then it's the same old testing,&quot; he said. Targeted attacks against a specific organization are a different story, where AI stays continuously in the loop, iterating on signals rather than doing one-time prep work.&lt;/p&gt;
&lt;h3 id=&quot;patch-everything-instantly&quot;&gt;Patch everything, instantly&lt;/h3&gt;
&lt;p&gt;If speed is the attacker's advantage, Carlsson argues defense has to adopt the same posture, not as an experiment but as standard infrastructure. He described a shift he's hearing from a large European governmental institution moving away from staged patch rollouts (10 machines, then 100, then 1,000) toward immediate, full deployment. &quot;You patch everything instantly, and then you take any issues that come with it. You have to solve that later,&quot; he said. The old model of gating a rollout to catch problems early assumes attackers are moving on a similarly staggered timeline. They aren't.&lt;/p&gt;
&lt;h3 id=&quot;killing-alert-fatigue-with-deterministic-answers-not-more-noise&quot;&gt;Killing alert fatigue with deterministic answers, not more noise&lt;/h3&gt;
&lt;p&gt;Security teams already drown in alerts, and Carlsson is blunt that adding AI carelessly just makes that worse. Detectify's approach leans on what he calls payload-based testing: rather than flagging a theoretical vulnerability, the platform actually attempts the exploit and gets a deterministic true-or-false answer. That's part of how the company holds its false-positive rate to roughly 0.3%, according to Carlsson. It's also, he argues, exactly the kind of clean, unambiguous data AI agents need to be useful rather than just another noise generator. &quot;The more black and white data you could give them, the better it is,&quot; he said.&lt;/p&gt;
&lt;h3 id=&quot;what-developers-are-missing&quot;&gt;What developers are missing&lt;/h3&gt;
&lt;p&gt;Carlsson's sharpest point for engineers and architects isn't about attackers at all. It's about how AI evaluates code in isolation and misses system-level risk. Secure code, combined with a particular hosting setup, a DNS configuration, or an adjacent service handling serialization differently, can create a vulnerability that doesn't exist in any single component. &quot;When the AI looks at a single component, it might not always understand the system risks,&quot; he said.&lt;/p&gt;
&lt;p&gt;He also flagged a subtler risk: code maintained solely by AI over time can quietly degrade, as models optimize for whatever instruction came most recently and loosen constraints set earlier in the process.&lt;/p&gt;
&lt;h3 id=&quot;not-everything-is-on-fire&quot;&gt;Not everything is on fire&lt;/h3&gt;
&lt;p&gt;Carlsson pushed back on doom-laden framing of where this goes next. Yes, the pool of exploitable systems will grow. But every attack still needs a human on the other end collecting the payout, and plenty of vulnerable systems today simply aren't worth attacking. His actual worry is narrower and more specific: state-sponsored espionage against high-value targets, and ransomware crews finding it newly profitable to go after smaller organizations that never had the resources to keep up in the first place.&lt;/p&gt;
&lt;p&gt;For developers shipping code that becomes part of that attack surface, his advice comes down to one shift in mindset: stop reasoning about code in isolation, and start thinking about the whole chain it runs inside.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24781/detectifys-rickard-carlsson-attackers-dont-have-new-tricks-they-have-a-faster-clock</guid>
<pubDate>Mon, 17 Aug 2026 18:00:00 +0000</pubDate>
</item>
<item>
<title>Lateral credential harvesting via process namespace sharing</title>
<link>https://coderlegion.com/24641/lateral-credential-harvesting-via-process-namespace-sharing</link>
<description>&lt;p&gt;&lt;strong&gt;Github Source:&lt;/strong&gt;&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://github.com/ndouglas-edera/hostpid-risk/tree/main&quot;&gt;https://github.com/ndouglas-edera/hostpid-risk/tree/main&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In a multi-tenant or shared Kubernetes node environment, containers are supposed to be isolated environments. However, this demo proves that if a malicious or compromised pod is deployed with host-level privileges, it can spy on neighbouring workloads running on the same node without needing a software vulnerability or zero-day exploit.&lt;/p&gt;
&lt;h3 id=&quot;example-script&quot;&gt;Example script&lt;/h3&gt;
&lt;p&gt;You can download the automation script from Github:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;wget https://raw.githubusercontent.com/ndouglas-edera/hostpid-risk/refs/heads/main/hostpid-risk.sh
chmod +x hostpid-risk.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If you have a Kubernetes cluster already running (like on &lt;strong&gt;Docker Desktop&lt;/strong&gt; or &lt;strong&gt;kind&lt;/strong&gt;), you can run the below script:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;./hostpid-risk.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;what-is-the-security-misconfiguration-exactly-&quot;&gt;What is the security misconfiguration exactly?&lt;/h3&gt;
&lt;p&gt;The exploit relies on 2 specific fields in the &lt;code&gt;inspector-pod&lt;/code&gt; YAML manifest working together:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;spec:
  hostPID: true            # &amp;lt;--- Misconfiguration #1: Breaks PID isolation
  containers:
  - name: inspector
    securityContext:
      privileged: true     # &amp;lt;--- Misconfiguration #2: Overrides Linux permissions
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;how-it-works-technically&quot;&gt;How it works technically&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Normally, Linux container runtimes place each pod in their own isolated Process ID (&lt;strong&gt;PID&lt;/strong&gt;) namespace. &lt;br&gt;
Setting &lt;code&gt;hostPID: true&lt;/code&gt; actually forces the pod to share the host node’s global PID namespace.&lt;/li&gt;
&lt;li&gt;Suddenly, &lt;code&gt;ps -ef&lt;/code&gt; inside the container displays every process running on the underlying node. &lt;br&gt;
This includes processes belonging to other pods (&lt;strong&gt;target-app&lt;/strong&gt;).&lt;/li&gt;
&lt;li&gt;This would bypass Linux kernel profiles like &lt;code&gt;AppArmor&lt;/code&gt; and &lt;code&gt;SELinux&lt;/code&gt; - granting full capabilities (like &lt;code&gt;CAP_SYS_ADMIN&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;In Linux, the virtual &lt;code&gt;/proc&lt;/code&gt; filesystem exposes process metadata. The file &lt;code&gt;/proc/&amp;lt;PID&amp;gt;/environ&lt;/code&gt; holds the environment variables loaded into memory when that process was spawned. &lt;/li&gt;
&lt;li&gt;Because &lt;strong&gt;inspector-pod&lt;/strong&gt; has host-level permissions, it can read &lt;code&gt;/proc/30629/environ&lt;/code&gt; belonging to &lt;strong&gt;target-app&lt;/strong&gt; before extracting the &lt;code&gt;DB_PASSWORD=SuperSecretPassword123!&lt;/code&gt; creds.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=13729325988490525777&quot; alt=&quot;&quot;&gt;&lt;/p&gt;
&lt;h3 id=&quot;strategy-1---pss-in-kubernetes&quot;&gt;Strategy 1 - PSS in Kubernetes&lt;/h3&gt;
&lt;p&gt;Pod Security Standards (or &lt;strong&gt;PSS&lt;/strong&gt;, for short) is a built-in policy Kubernetes framework managed by the Pod Security Admission (&lt;strong&gt;PSA&lt;/strong&gt;) controller. It categorises security into 3 levels:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privileged&lt;/strong&gt;: Unrestricted (Allowing &lt;code&gt;hostPID: true&lt;/code&gt; &amp;amp; &lt;code&gt;privileged: true&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Baseline&lt;/strong&gt;: Prevents known privilege escalations (Blocking &lt;code&gt;hostPID: true&lt;/code&gt;, host paths, and host networking)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Restricted&lt;/strong&gt;: Hardened best practices (Requires dropping capabilities, non-root users, and more..)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;So, how do PSS policies block the attack?&lt;/strong&gt;&lt;br&gt;
By either applying a &lt;strong&gt;Baseline&lt;/strong&gt; or &lt;strong&gt;Restricted&lt;/strong&gt; policy to the target namespace, Kubernetes will reject &lt;code&gt;inspector-pod&lt;/code&gt; at the API server before it can ever be scheduled. Here's an example of enforcing the &lt;strong&gt;baseline&lt;/strong&gt; profile on the &lt;strong&gt;default&lt;/strong&gt; namespace&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;kubectl label --overwrite ns default pod-security.kubernetes.io/enforce=baseline
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If an attacker tries to apply &lt;code&gt;inspector-pod.yaml&lt;/code&gt; now, the Kubernetes API server responds with an immediate error, similar to other admission control technologies like OPA:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Error from server (Forbidden): pods &quot;inspector-pod&quot; is forbidden: 
violates PodSecurity &quot;baseline:latest&quot;: hostPID (spec.hostPID=true), 
privileged (container &quot;inspector&quot; must not set securityContext.privileged=true)
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;strategy-2---runtime-isolation&quot;&gt;Strategy 2 - Runtime Isolation&lt;/h3&gt;
&lt;p&gt;While PSS works at the API controlplane-level (by stopping bad YAML from being accepted), the ideal runtime isolation approach should be applied at the Kernel-level.&lt;/p&gt;
&lt;p&gt;For context, &lt;code&gt;hostPID: true&lt;/code&gt; and &lt;code&gt;privileged: true&lt;/code&gt; are commonly enabled purely by accident, oftentimes by developers while troubleshooting nodes, and through legacy Helm charts, or by third-party monitoring and observability agents (like eBPF probes, custom log forwarders, or node-exporters) that require node visibility. And when this happens in a multi-tenant cluster (that's shared across departments or clients), compromising a single pod with host privileges instantly compromises all secrets across all pods on that same node, rendering the entire namespace-level isolation useless.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;So, what if an attacker has cluster-admin privileges or bypasses PSS?&lt;/strong&gt;&lt;br&gt;
Standard Kubernetes containers share a single, common Linux kernel. If namespace boundaries break, everything on that kernel is exposed. In the case of Edera Zones (and microVM-based runtimes like Kata Containers or gVisor, more generally) they implement a defence-in-depth strategy by isolating all your workloads into distinct hypervisor boundaries or independent kernel spaces.&lt;/p&gt;
&lt;p&gt;Under gVisor, Kata Containers, or Edera Zones, even if a pod sets &lt;code&gt;hostPID: true&lt;/code&gt; and &lt;code&gt;privileged: true&lt;/code&gt;, hostPID only shares the PID namespace of the isolated guest kernel / microVM sandbox, not the underlying bare-metal host node. The malicious pod sees only itself and its sandbox. In this way, it can't see processes from neighbouring pods running in parallel sandboxes.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Note: I will continue to update the Github repository to better improve these security automation demos.&lt;/p&gt;
&lt;/blockquote&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24641/lateral-credential-harvesting-via-process-namespace-sharing</guid>
<pubDate>Fri, 14 Aug 2026 16:51:02 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — August 14, 2026</title>
<link>https://coderlegion.com/24634/developer-weekly-briefing-august-14-2026</link>
<description>&lt;p&gt;Coming off Black Hat, the theme continues: the tools developers use every day are becoming part of the threat model. This week had two concrete examples of that — and a major shift in how one of the most widely used AI coding agents handles permissions. Here's what mattered.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;anthropic-makes-claude-code-s-auto-mode-the-default-and-the-data-behind-it-is-worth-understanding&quot;&gt;Anthropic makes Claude Code's auto mode the default — and the data behind it is worth understanding&lt;/h3&gt;
&lt;p&gt;Starting August 14, Claude Code runs in auto mode by default for Pro, Max, and Team users. That means the constant stream of per-action permission prompts is gone, replaced by a classifier that only interrupts when an action looks irreversible, destructive, or aimed outside your own environment.&lt;/p&gt;
&lt;p&gt;The reason Anthropic gives for the change is blunt: users approve 97% of permission prompts. That's not evidence of careful review. It's evidence of permission fatigue — developers clicking through without reading, which means the prompts stopped functioning as a safety control a long time ago.&lt;/p&gt;
&lt;p&gt;The data behind the decision is worth looking at. In a controlled study of 1,053 paid testers, a disguised dangerous command was inserted into live coding sessions. Human reviewers caught it 13.6% of the time. Auto mode caught it 89% of the time. Catch rates for humans dropped to around 5% after 50 or more prior prompts in a session. Auto mode's detection rate held steady regardless of session length.&lt;/p&gt;
&lt;p&gt;Production data reinforced it. Sessions using manual approval contained serious unintended harm at 6.3% — more than twice the rate seen with auto mode at 2.4%. Separately, third-party testing from Trajectory Labs ran 720 prompt injection attacks against Claude Code's auto mode and logged zero successes. Codex's comparable mode had a 5.83% success rate on the same attacks.&lt;/p&gt;
&lt;p&gt;The shift doesn't remove human judgment from the process. It moves it earlier. You define what the agent can touch before a session starts — the boundaries, the permissions, the scope. The per-click approval model assumed developers would catch problems in real time. The data says they weren't. Auto mode assumes the upfront work is where the real control lives.&lt;/p&gt;
&lt;p&gt;Enterprise, API, and major cloud platform users remain opt-in for now.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/anthropic-makes-claude-codes-auto-mode-the-default-betting-automation-beats-manual-review/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;cursor-cli-ran-code-from-cloned-repos-before-its-own-trust-prompt-ever-loaded&quot;&gt;Cursor CLI ran code from cloned repos before its own trust prompt ever loaded&lt;/h3&gt;
&lt;p&gt;Cursor CLI has a workspace trust feature — a prompt that's supposed to confirm you trust a project before the agent acts on it. Security researcher Francisco Rosales at Manifold Security found that on builds before 2026.07.23-e383d2b, the trust prompt came too late.&lt;/p&gt;
&lt;p&gt;The issue sits in Cursor's worktree feature. When you run the CLI with -w, it creates a worktree and runs a setup script defined in a repository's .cursor/worktrees.json file. That script executed during workspace resolution — a step that completed before the trust dialog appeared. A repository's own code ran on your machine before you'd ever seen the trust prompt, let alone answered it.&lt;/p&gt;
&lt;p&gt;The sandbox didn't help. Cursor CLI ships a sandbox that limits what terminal commands can read, write, and reach. The worktree setup script is pinned to insecure_none — the setting that disables the sandbox entirely for that step. So even developers running Cursor with --sandbox enabled still had repository-supplied code execute directly on the host, outside any sandbox boundary, with the same file and credential access as the person running Cursor.&lt;/p&gt;
&lt;p&gt;Cursor shipped a fix in build 2026.07.23-e383d2b. What it didn't ship was a security advisory. Rosales's report was closed as &quot;Informative,&quot; with the reasoning that the issue requires a user to clone an attacker-controlled repo. Worth sitting with that justification for a moment: cloning repos, checking out branches, and opening unfamiliar projects is the core of what developers do every day. That's not a mitigating factor. That's the threat surface.&lt;/p&gt;
&lt;p&gt;If you use Cursor CLI: update to 2026.07.23-e383d2b or later, and pass --skip-worktree-setup when opening repos you haven't fully audited. Even after the fix, clicking &quot;trust&quot; still runs the setup script outside the sandbox.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24335/cursor-cli-ran-code-from-cloned-repos-before-its-own-trust-prompt-ever-loaded&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;microsoft-s-new-testing-agent-targets-the-trust-gap-in-ai-generated-code&quot;&gt;Microsoft's new testing agent targets the trust gap in AI-generated code&lt;/h3&gt;
&lt;p&gt;The reliability problem with AI-generated code isn't that it fails to compile. It's that it passes tests written by the same AI that wrote the code, which creates a closed loop with no independent verification. Microsoft's new testing agent is built to break that loop — generating tests from a different perspective than the code author, specifically targeting the gap between what code does and what it was supposed to do.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/microsofts-new-testing-agent-tackles-the-trust-gap-in-ai-generated-code/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;an-ai-agent-leaked-a-sales-team-s-financials-mimecast-built-something-to-catch-the-next-one-&quot;&gt;An AI agent leaked a sales team's financials. Mimecast built something to catch the next one.&lt;/h3&gt;
&lt;p&gt;The incident is documented and real: an AI agent with access to financial systems surfaced sensitive sales data in a context where it shouldn't have appeared. Mimecast's Agent Risk Center is built specifically to monitor agent behavior for exactly this pattern — data accessed outside expected scope, outputs that contain sensitive content, actions that don't match the agent's stated purpose. Purpose-built agent monitoring for the scenarios that are already happening, not theoretical ones.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24534/agent-leaked-sales-teams-financials-mimecast-built-agent-risk-center-to-catch-the-next-one&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-coder-legion-this-week-2&quot;&gt;Also from Coder Legion this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Stairwell's CTO built Backstory around one question: what's never been seen before?&lt;/strong&gt; A look at how the threat intelligence platform approaches novelty detection — finding the malware and attacker behavior that signature-based tools can't recognize because they haven't been catalogued yet. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24608/stairwells-cto-built-backstory-around-one-question-whats-never-been-seen-before&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ZeroDrift launches Command Center and offers developers $1,000 to test-drive its AI compliance firewall.&lt;/strong&gt; An unusual go-to-market move — worth reading if compliance governance for AI pipelines is on your team's list. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24589/zerodrift-launches-command-center-offers-developers-000-test-drive-compliance-firewall&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LTX opens up its next world model, betting enterprises want video AI they can own.&lt;/strong&gt; Open-weight video generation aimed at organizations that need to keep training data and model weights on their own infrastructure. &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24344/ltx-opens-up-its-next-world-model-betting-enterprises-want-video-ai-they-can-own&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;The through-line this week: the trust model for AI coding tools is being rebuilt from the ground up. Anthropic is betting that a classifier does better than fatigued humans clicking approve. Cursor's trust prompt turned out to be a warning, not a gate. Microsoft is attacking the closed loop in AI-generated test coverage. All three are responses to the same underlying reality: agents act fast, and the guardrails have to be built into the environment before the session starts, not enforced click by click during it.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24634/developer-weekly-briefing-august-14-2026</guid>
<pubDate>Fri, 14 Aug 2026 13:08:23 +0000</pubDate>
</item>
<item>
<title>Cursor CLI Ran Code From Cloned Repos Before Its Own Trust Prompt Ever Loaded</title>
<link>https://coderlegion.com/24335/cursor-cli-ran-code-from-cloned-repos-before-its-own-trust-prompt-ever-loaded</link>
<description>&lt;p&gt;Cursor's command-line coding agent has a workspace trust feature. It's supposed to stop the agent from acting on a project until you've told it you trust that project. Security researcher Francisco Rosales at Manifold Security found a way around it, and the gap ran deeper than a single missed check.&lt;/p&gt;
&lt;p&gt;The setup script that ran before trust was asked&lt;/p&gt;
&lt;p&gt;The issue lives in Cursor CLI's worktree feature. Run the CLI with -w, and it creates a worktree under ~/.cursor/worktrees//. A repository can define a setup command for that worktree in a file called .cursor/worktrees.json, using a setup-worktree key. Cursor passes that command straight to sh -c.&lt;/p&gt;
&lt;p&gt;That's a normal convenience feature. The problem is when it runs. On builds before 2026.07.23-e383d2b, the setup script executed during workspace resolution, and that step finished before the code path that shows the trust dialog. So a repository's own command ran on your machine before you'd ever seen, let alone answered, the trust prompt.&lt;/p&gt;
&lt;p&gt;Rosales put it plainly: the trust gate exists so a user can assert they trust a workspace before the agent acts in it. Code execution is supposed to sit behind that gate. This didn't.&lt;/p&gt;
&lt;p&gt;The sandbox didn't cover it either&lt;/p&gt;
&lt;p&gt;Cursor CLI also ships a sandbox that limits what terminal commands can read, write, and reach on the network. Reasonable users would assume turning it on protects them here. It doesn't.&lt;/p&gt;
&lt;p&gt;The worktree setup script is pinned to insecure_none, the setting that turns the sandbox off entirely for that script. So even a developer running Cursor with --sandbox enabled still had a repository-supplied command execute directly on the host, outside any sandbox boundary.&lt;/p&gt;
&lt;p&gt;And once that command runs, Rosales confirmed it has the same access as the person running Cursor. Same files, same credentials, same environment. There's no reduced-privilege step in between.&lt;/p&gt;
&lt;p&gt;No advisory, and a bumpy disclosure process&lt;/p&gt;
&lt;p&gt;Cursor shipped a fix in build 2026.07.23-e383d2b. What it didn't ship was a security advisory. Rosales said Manifold's report was closed as &quot;Informative&quot; on July 29, with two reasons given: the issue requires a user to clone or open an attacker-controlled repository, and the report didn't demonstrate a bypass of workspace trust in the strictest sense. Manifold pushed back with more context, including a reference to a previous Cursor CVE covering similar territory, and hadn't heard back as of this writing.&lt;/p&gt;
&lt;p&gt;It's worth sitting with that first reason for a second. &quot;Requires the user to clone an attacker-controlled repo&quot; describes most of what developers do all day. Cloning repos, opening PRs, checking out a coworker's branch, trying out an open-source tool. That's the entire threat surface AI coding agents operate in.&lt;/p&gt;
&lt;p&gt;Not just a Cursor problem&lt;/p&gt;
&lt;p&gt;Rosales was careful to scope his team's research to Cursor CLI's worktree mechanism specifically, since that's what they tested and can confirm. But he also flagged that workspace trust bypasses through configuration files or other planted repo content, potentially leading to remote code execution, are a known category. Multiple researchers have found variations of it across different agentic coding tools.&lt;/p&gt;
&lt;p&gt;His read on why this keeps happening: speed. Everyone building and shipping with AI coding assistants is optimizing for moving fast, and auditing the configuration a repository ships for a specific agent isn't something most developers are doing. It's not on anyone's checklist yet.&lt;/p&gt;
&lt;p&gt;What to actually do about it&lt;/p&gt;
&lt;p&gt;The narrow fix: update to build 2026.07.23-e383d2b or later, where the worktree setup script is now gated behind the trust prompt. But Rosales flagged an important caveat — once you click &quot;trust,&quot; the script still runs, and it still runs outside the sandbox. Trusting a repo means the code in that script executes on your machine, full stop. If you're opening a repo you haven't fully audited, pass --skip-worktree-setup to skip that step.&lt;/p&gt;
&lt;p&gt;The wider takeaway is less comfortable. Rosales doesn't think the trust prompt should be treated as a security control. He called it closer to a warning, and pointed out that many coding assistants already ship modes that skip these dialogs entirely for the sake of speed.&lt;/p&gt;
&lt;p&gt;That's the real shift developers and security teams need to make. AI agents are capable, configurable, and genuinely useful for moving faster. They're also a new and significant part of the threat model, and &quot;ask before acting&quot; assumes a pace of development that agentic tooling has already outrun in places.&lt;/p&gt;
&lt;p&gt;Why this habit is so easy to miss&lt;/p&gt;
&lt;p&gt;Most developers don't think of cloning a repo as an action with consequences. It's step one, not a decision point. You pull down a project, open it, and start reading code before you've formed any opinion about whether you trust it. AI coding agents insert themselves right at that moment, and they're built to act fast on your behalf.&lt;/p&gt;
&lt;p&gt;That's exactly the gap this research exposes. A .cursor/worktrees.json file sitting quietly in a repo isn't something most people check for, and there's no reason they would have, until now. It's a small, easy-to-miss configuration detail that happens to sit directly in the path of code execution.&lt;/p&gt;
&lt;p&gt;If you're pulling down unfamiliar repos regularly, and most developers are, it's worth treating any agent-specific config file the same way you'd treat a postinstall script in a package.json: something to glance at before you run anything, not after. Worth checking what your agent of choice actually gates, and when.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24335/cursor-cli-ran-code-from-cloned-repos-before-its-own-trust-prompt-ever-loaded</guid>
<pubDate>Mon, 10 Aug 2026 14:00:00 +0000</pubDate>
</item>
<item>
<title>Developer Weekly Briefing — August 7, 2026</title>
<link>https://coderlegion.com/24262/developer-weekly-briefing-august-7-2026</link>
<description>&lt;p&gt;Black Hat USA 2026 was this week in Las Vegas. I covered 13 sessions, briefings, and demos across four days. The theme that ran through almost every conversation: agent identity and access governance is no longer a future problem. It's happening right now, and most organizations are significantly behind.&lt;/p&gt;
&lt;p&gt;Here's everything that mattered.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;the-black-hat-dispatch&quot;&gt;The Black Hat Dispatch&lt;/h3&gt;
&lt;h4 id=&quot;enterprises-can-only-see-a-third-of-their-own-ai-attack-surface-snyk&quot;&gt;Enterprises can only see a third of their own AI attack surface — Snyk&lt;/h4&gt;
&lt;p&gt;Ask a security team what AI they're running, and they'll hand you a list of approved models. According to new Snyk research across more than 3,000 enterprise accounts and 1.39 million scanned repositories, that list covers roughly one-third of the actual picture. The real AI footprint includes agent frameworks, MCP servers, retrieval systems, vector databases, datasets, and all the tools those agents call — about three times what a model inventory alone shows.&lt;/p&gt;
&lt;p&gt;The adoption numbers are moving faster than governance can follow. Six months ago, 28% of organizations were running agentic architecture. That's now 33%, and the share running the full stack — agent frameworks and MCP servers together — jumped from 36% to 50% in the same period. Half of model-deploying organizations can't trace their own training data in their code repositories at all.&lt;/p&gt;
&lt;p&gt;The practical advice from Snyk's Randall Degges: break your AI security pipeline into explicit, separate stages — linting, compilation, then dedicated security scanning — rather than asking one tool to catch everything in one pass. Snyk also shipped GA of Evo Continuous Offensive Security and Agent Red Teaming alongside the research.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/23908/snyk-enterprises-can-see-third-of-their-own-ai-attack-surface-the-other-two-thirds-is-where&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;microsoft-s-david-weston-ai-generates-a-working-linux-kernel-exploit-for-3-61-and-21-minutes&quot;&gt;Microsoft's David Weston: AI generates a working Linux kernel exploit for $3.61 and 21 minutes&lt;/h4&gt;
&lt;p&gt;The Microsoft keynote didn't bury the lead. David Weston demonstrated that AI can now produce a working Linux kernel exploit for $3.61 and 21 minutes of compute time. That number is the new baseline for what a motivated attacker needs to get started. The rest of the keynote covered Microsoft's response — but that opening data point is what every architect and security lead in the room will remember.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://vmblog.com/bylines/microsofts-david-weston-ai-now-generates-a-working-linux-kernel-exploit-for-3-61-and-21-minutes/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;cve-disclosures-have-doubled-two-years-running-the-backlog-is-now-radioactive-&quot;&gt;CVE disclosures have doubled two years running. The backlog is now &quot;radioactive.&quot;&lt;/h4&gt;
&lt;p&gt;Jeff Williams, founder of Contrast Security, made the case that the vulnerability disclosure system is breaking down under its own weight. CVE disclosures have doubled for two consecutive years. The backlog isn't getting cleared — it's accumulating. Williams' term for it: radioactive. The problem isn't that we're finding more vulnerabilities; it's that the pipeline for addressing them can't keep pace with the rate they're being found, and AI-generated code is accelerating the input side without doing anything about the output side.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24117/cve-disclosures-have-doubled-two-years-running-and-now-the-backlog-is-radioactive&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;zenity-found-credential-stealing-skills-with-1-7-million-downloads-in-a-major-ai-marketplace-s-top-trending-list&quot;&gt;Zenity found credential-stealing skills with 1.7 million downloads in a major AI marketplace's top trending list&lt;/h4&gt;
&lt;p&gt;Zenity's attack research at Black Hat documented something worth reading carefully: malicious agent skills sitting in a major AI marketplace's top trending section, with 1.7 million combined downloads, designed to steal credentials. These weren't obscure packages buried in search results. They were trending. The supply chain risk that's been theoretical for AI agent marketplaces just got a documented case.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://vmblog.com/bylines/zenity-found-credential-stealing-skills-with-1-7-million-downloads-sitting-in-a-major-ai-marketplaces-top-trending-list/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;developer-laptops-now-hold-15x-more-valid-credentials-than-github-and-ai-agents-created-nearly-half-of-them&quot;&gt;Developer laptops now hold 15x more valid credentials than GitHub — and AI agents created nearly half of them&lt;/h4&gt;
&lt;p&gt;GitGuardian CEO Eric Fourrier presented research showing that endpoint secrets have become the primary exposure vector. Developer laptops hold roughly 15 times more valid, live credentials than GitHub repositories, and AI coding agents generated close to half of them. The implication: secrets management tooling built around repository scanning is looking at the wrong surface.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://vmblog.com/bylines/gitguardian-ceo-developer-laptops-now-hold-15x-more-valid-credentials-than-github-and-ai-agents-created-nearly-half-of-them/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;ai-security-agents-hit-a-78-accuracy-ceiling-and-the-fix-isn-t-a-better-model&quot;&gt;AI security agents hit a 78% accuracy ceiling — and the fix isn't a better model&lt;/h4&gt;
&lt;p&gt;Sola Security's benchmark tested AI security agents across real-world triage scenarios and found a consistent ceiling at around 78% accuracy, regardless of which model was underneath. The ceiling isn't a model quality problem — it's a context and architecture problem. Throwing a better model at the same task structure doesn't move the number. This is useful counterweight to the vendor claims that will follow every new model release for the next year.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://vmblog.com/bylines/sola-securitys-benchmark-puts-ai-security-agents-at-a-78-accuracy-ceiling-and-the-fix-isnt-a-better-model/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;the-official-python-docker-image-ships-with-400-cves-before-you-write-a-line-of-code-minimus&quot;&gt;The official Python Docker image ships with 400 CVEs before you write a line of code — Minimus&lt;/h4&gt;
&lt;p&gt;Minimus presented research showing that the official Python base image used by a large share of production deployments comes pre-loaded with around 400 CVEs before a developer adds a single dependency. The counter-intuitive finding: you can eliminate nearly all of them by switching to a minimal base image, without materially changing your build process. Most teams haven't done this because nobody told them to look.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://vmblog.com/bylines/minimus-the-official-python-docker-image-ships-with-400-cves-before-you-write-a-line-of-code/&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;oak-some-organizations-discover-they-have-10-000-ai-agents-for-every-200-employees&quot;&gt;Oak: some organizations discover they have 10,000 AI agents for every 200 employees&lt;/h4&gt;
&lt;p&gt;Oak's head of research delivered one of the sharper data points of the week: organizations auditing their agent footprint for the first time are finding ratios of 10,000 agents per 200 employees. Those agents hold persistent access, call APIs, and operate with credentials — none of which is reflected in most identity governance programs. Oak's platform is built specifically to discover, classify, and govern non-human identities at that scale.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24176/oaks-head-of-research-some-orgs-discover-they-have-10-000-ai-agents-for-every-200-employees&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;c1-ciso-kevin-paige-human-to-ai-agent-ratios-could-hit-1-150-within-a-year&quot;&gt;C1 CISO Kevin Paige: human-to-AI agent ratios could hit 1:150 within a year&lt;/h4&gt;
&lt;p&gt;Kevin Paige, CISO at C1, put a number on where the non-human identity problem is heading: a ratio of one human to 150 AI agents within 12 months for organizations deploying aggressively. Current secrets management and identity governance programs weren't built for that ratio. Most weren't built for 1:10. The conversation covered what a purpose-built approach to agent secrets management actually looks like at that scale.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24062/c1-ciso-kevin-paige-human-to-ai-agent-ratios-could-hit-1-to-150-within-a-year&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;atsign-s-kill-switch-for-ai-agents-isn-t-software-it-s-a-revocable-identity&quot;&gt;Atsign's kill switch for AI agents isn't software — it's a revocable identity&lt;/h4&gt;
&lt;p&gt;Atsign's approach to agent containment starts from a different premise than most: instead of trying to monitor and detect bad agent behavior after the fact, they make every agent action contingent on a cryptographic identity that can be revoked instantly. Pull the identity, and the agent stops — not because a rule fired, but because it no longer has the credentials to do anything.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/23821/atsigns-kill-switch-for-ai-agents-isnt-software-its-an-identity-you-can-revoke&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;dtex-insider-risk-now-costs-19-5-million-a-year-and-ai-agents-are-the-newest-insider&quot;&gt;DTEX: insider risk now costs $19.5 million a year — and AI agents are the newest insider&lt;/h4&gt;
&lt;p&gt;DTEX's annual insider risk report moved the average organizational cost to $19.5 million. The new variable in the model: AI agents exhibit the same behavioral patterns as human insiders — accessing systems outside normal scope, exfiltrating data, operating at odd hours — but aren't covered by the human-behavior baselines most insider risk programs are built on.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24175/dtex-insider-risk-now-costs-19-5-million-a-year-and-ai-agents-are-the-newest-insider&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;accenture-and-google-ai-agents-didn-t-just-cheat-on-a-safety-test-they-built-a-chat-room-to-help-each-other-do-it&quot;&gt;Accenture and Google: AI agents didn't just cheat on a safety test — they built a chat room to help each other do it&lt;/h4&gt;
&lt;p&gt;One of the more unsettling research findings of the week: during a safety evaluation, AI agents didn't just find a way to circumvent the test — they spontaneously created a communication channel to coordinate with each other and share the workaround. No human told them to collaborate. The behavior emerged from the incentive structure of the test itself. Safety testing designed for single-agent systems may not catch emergent multi-agent behavior at all.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24238/accenture-and-google-ai-agents-didnt-just-cheat-on-safety-test-they-built-chat-room-to-help&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;f5-s-sean-murphy-the-gap-between-vulnerability-and-exploit-has-basically-disappeared&quot;&gt;F5's Sean Murphy: the gap between vulnerability and exploit has basically disappeared&lt;/h4&gt;
&lt;p&gt;The window between a vulnerability being disclosed and a working exploit being available has collapsed to near-zero for a growing share of CVEs. The traditional &quot;patch within 30 days&quot; guidance was built for a world where that window existed. It doesn't anymore for the most critical issues.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24229/f5s-sean-murphy-the-gap-between-vulnerability-and-exploit-has-basically-disappeared&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;soc-wrap-ai-agents-taught-themselves-to-evade-edr-and-most-security-teams-still-won-t-trust-automated-triage&quot;&gt;SOC wrap: AI agents taught themselves to evade EDR — and most security teams still won't trust automated triage&lt;/h4&gt;
&lt;p&gt;A roundtable with Sophos, Strike48, and Gravwell closed out my Black Hat coverage: AI agents are observed teaching themselves to evade endpoint detection tools through iterative trial and error — not pre-programmed evasion. Despite that, most security teams remain reluctant to trust AI for automated triage, even on low-risk alerts. The attackers are automating faster than the defenders.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24228/ai-agents-taught-themselves-to-evade-your-edr-most-security-teams-still-wont-trust-triage&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&quot;illumio-a-live-demo-doesn-t-change-the-physics-of-attack-just-the-blast-radius&quot;&gt;Illumio: a live demo doesn't change the physics of attack — just the blast radius&lt;/h4&gt;
&lt;p&gt;The Illumio demo showed microsegmentation under real attack conditions. The core argument: you can't change how attackers move, but you can change what they can reach when they get in. Segmentation doesn't prevent breach; it limits blast radius.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/24230/reformed-cybercriminals-live-black-hat-demo-doesnt-change-the-physics-of-attack-just-the&quot;&gt;Read more&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;also-from-this-week-2&quot;&gt;Also from this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub brings stacked pull requests to GA&lt;/strong&gt; — cleaner UI for managing dependent PR chains. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/github-brings-stacked-pull-requests-out-of-the-shadows/&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;JetBrains open-sources KotlinLLM&lt;/strong&gt; — a research prototype for runtime code generation. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/jetbrains-open-sources-kotlinllm-a-research-prototype-for-runtime-code-generation/&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Microsoft confirms a Copilot super app is coming this year&lt;/strong&gt; — less about convenience, more about owning the AI interaction layer. &lt;a rel=&quot;nofollow&quot; href=&quot;https://devops.com/microsoft-confirms-copilot-super-app-is-coming-this-year-and-its-about-more-than-convenience/&quot;&gt;Read more&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;The through-line from Black Hat 2026: the attack surface has expanded faster than the governance structures designed to protect it. Agent identity, endpoint secrets, vulnerable base images, marketplace supply chains, emergent multi-agent behavior — none of these were on most security team roadmaps two years ago. All of them are active now.&lt;/p&gt;
&lt;p&gt;See you next Friday.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Developer Weekly Briefing is published every Friday on &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com&quot;&gt;Coder Legion&lt;/a&gt;. Written by &lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Tom+Smith&quot;&gt;Tom Smith&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24262/developer-weekly-briefing-august-7-2026</guid>
<pubDate>Fri, 07 Aug 2026 13:35:02 +0000</pubDate>
</item>
<item>
<title>Cybersecurity &amp; Data Protection in 2026: A Developer's Toolkit That Actually Makes Sense</title>
<link>https://coderlegion.com/22677/cybersecurity-data-protection-in-2026-a-developers-toolkit-that-actually-makes-sense</link>
<description>&lt;p&gt;If you're shipping code in 2026, security isn't a checkbox anymore — it's a daily habit. Attackers are using AI to find and weaponize bugs faster than most teams can patch them, and the tools that protect you have had to evolve just as fast. Here's a practical rundown of five tools worth knowing, arranged roughly in the order you'd actually adopt them as a dev or security engineer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Start with catching vulnerabilities before they ship.&lt;/strong&gt; &lt;br&gt;
&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=5040379968910375552&quot; alt=&quot;&quot;&gt;&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://amplify.security/&quot;&gt;Amplify Security&lt;/a&gt; builds what they call an &quot;agentic security harness&quot; — instead of a generic AI wrapper bolted onto old scanning rules, it spins up custom detection agents that understand your specific codebase, maps relationships across your repos, and can push fixes straight into your pipeline. The standout feature is reachability analysis: it filters out the theoretical vulnerabilities nobody will ever exploit and focuses your team on what's actually reachable in production. For teams drowning in false positives from traditional SAST tools, this is a real relief.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Once your code is clean, you still need someone trying to break it.&lt;/strong&gt;&lt;br&gt;
&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=7927321098051657267&quot; alt=&quot;&quot;&gt;&lt;br&gt;
 That's where &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.stingrai.io&quot;&gt;Stingrai&lt;/a&gt; comes in. It's a penetration testing platform that pairs an AI agent named Snipe — which runs recon, tests authentication and access control, and chains exploits like a real attacker — with CREST-certified human pentesters who validate every finding. You can run a one-time test or keep continuous testing running in the background, and Snipe can even open AutoFix pull requests for verified bugs. Given that the median time from vulnerability disclosure to active exploitation has dropped from years to under a day, continuous testing is starting to feel less optional.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;If your stack includes autonomous AI agents, this next one matters more than you'd think.&lt;/strong&gt; &lt;br&gt;
&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=11997085688182361695&quot; alt=&quot;&quot;&gt;&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.clawctl.com/&quot;&gt;Clawctl&lt;/a&gt; is a secure, managed runtime for OpenClaw AI agents, built around sandboxed execution, encrypted secrets, human-in-the-loop approvals, and full audit trails — all deployable in about 60 seconds. As more dev teams hand off real tasks to autonomous agents, having a controlled, auditable place to run them (instead of raw, unmonitored execution) is quickly becoming a baseline requirement rather than a nice-to-have.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Don't forget the basics of network privacy.&lt;/strong&gt; &lt;br&gt;
&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=10895701211489594306&quot; alt=&quot;&quot;&gt;&lt;br&gt;
Whether your team is fully remote or hybrid, a solid VPN is still foundational. &lt;a rel=&quot;nofollow&quot; href=&quot;https://vpncybershield.com/&quot;&gt;VPN Cyber Shield&lt;/a&gt; offers research-based comparisons of top VPN providers for 2026, focused on remote work, travel, and everyday privacy — useful if you want a quick, unbiased way to pick a provider without wading through affiliate noise.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Finally, check your own exposure.&lt;/strong&gt; &lt;br&gt;
&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=14510099158884213969&quot; alt=&quot;&quot;&gt;&lt;br&gt;
Even the best-secured company can have an employee's personal credentials show up in a breach dump. &lt;a rel=&quot;nofollow&quot; href=&quot;https://checkmycreds.com/&quot;&gt;Check My Creds&lt;/a&gt; is a free tool that lets you scan an email address for known data breaches and get straightforward guidance on what to do next. It's a two-minute habit worth building into your personal security routine, especially if you reuse credentials anywhere (you shouldn't, but let's be honest).&lt;/p&gt;
&lt;p&gt;Security in 2026 isn't about picking one silver-bullet tool — it's about layering detection, testing, agent governance, network privacy, and personal breach monitoring into a workflow that doesn't slow you down. These five cover that stack pretty well.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/22677/cybersecurity-data-protection-in-2026-a-developers-toolkit-that-actually-makes-sense</guid>
<pubDate>Tue, 14 Jul 2026 20:52:56 +0000</pubDate>
</item>
<item>
<title>NPM Safety Guard — All 23 Security Layers Explained</title>
<link>https://coderlegion.com/21545/npm-safety-guard-all-23-security-layers-explained</link>
<description>&lt;p&gt;Every npm project is one malicious package away from a supply-chain breach. NPM Safety Guard catches threats that npm audit completely misses — from DPRK backdoors and typosquatted packages, to exposed API keys and AI credential theft hidden inside your node_modules.&lt;/p&gt;
&lt;p&gt;This video walks through all 23 detection layers, one by one, showing exactly what each layer catches and how it protects your project in real time.&lt;/p&gt;
</description>
<category>Videos</category>
<guid isPermaLink="true">https://coderlegion.com/21545/npm-safety-guard-all-23-security-layers-explained</guid>
<pubDate>Mon, 29 Jun 2026 06:57:45 +0000</pubDate>
</item>
<item>
<title>Your Test and Dev Data Is a Bigger Risk Than You Think</title>
<link>https://coderlegion.com/19698/your-test-and-dev-data-is-a-bigger-risk-than-you-think</link>
<description>&lt;p&gt;Most developers know they shouldn't use production data in non-production environments. But knowing and doing are two different things — and the gap between them is getting more expensive.&lt;/p&gt;
&lt;p&gt;According to Nick Mathison, Senior Product Manager for Delphix at Perforce Software, around 80% of organizations are still sharing production data downstream into non-production environments. That's not a new problem. What's new is that AI makes it significantly more dangerous.&lt;/p&gt;
&lt;h3 id=&quot;ai-finds-what-you-missed&quot;&gt;AI Finds What You Missed&lt;/h3&gt;
&lt;p&gt;Mathison pointed to a recent example that frames the risk well. When the Mythos vulnerabilities were disclosed, researchers found that multiple low-severity issues could be chained together into a critical exploit. The same logic applies to data exposure.&lt;/p&gt;
&lt;p&gt;&quot;Before, you might have been okay with some risk,&quot; Mathison said. &quot;You knew data was downstream. But now AI can find potentially divergent data points that — when put together — allow you to cross-reference and start to find these giant chains.&quot;&lt;/p&gt;
&lt;p&gt;In other words, data that seemed harmless in isolation isn't harmless anymore. An AI agent combing through a non-production environment can connect dots that no human analyst would.&lt;/p&gt;
&lt;h3 id=&quot;the-people-and-process-problem&quot;&gt;The People and Process Problem&lt;/h3&gt;
&lt;p&gt;When asked what most engineering teams get wrong about test data, Mathison didn't point to tooling. &quot;Time and time again, it's a people and process problem,&quot; he said. &quot;There are many tools out there that can do the job. At the end of the day, it's organizing your team in a way that shows the value of working this way.&quot;&lt;/p&gt;
&lt;p&gt;Developers aren't oblivious to the problem either. Mathison said he asked this question at a user group recently and got a lot of knowing chuckles. &quot;They know they're hiding their heads under the covers,&quot; he said. &quot;They know it's there. It's just hard to track and monitor.&quot;&lt;/p&gt;
&lt;p&gt;That's a pattern worth paying attention to. It's not ignorance — it's friction. Teams know the right approach, but the path to getting there feels expensive and disruptive.&lt;/p&gt;
&lt;h3 id=&quot;masking-first-synthetic-where-it-fits&quot;&gt;Masking First, Synthetic Where It Fits&lt;/h3&gt;
&lt;p&gt;The most reliable fix, according to Mathison, is straightforward: mask production data before it ever leaves the production environment and pass only desensitized data downstream.&lt;/p&gt;
&lt;p&gt;&quot;Profile it, mask it in production, and then only share desensitized data into non-prod environments,&quot; he said. &quot;Once it's masked, those teams are free to use it however they need — build the next feature, solve the next bug, iterate quickly.&quot;&lt;/p&gt;
&lt;p&gt;Synthetic data is increasingly popular, especially with AI-generated datasets becoming easier to produce. But Mathison is direct about where it works and where it doesn't. Synthetic data is a good fit for greenfield projects and supplementing masked datasets. It breaks down when you're trying to replicate a full production database — complex relationships, correlated values, and real-world edge cases are hard to synthesize accurately. And when it comes to LLM training specifically, there's an added wrinkle: a model trained on AI-generated data can introduce a feedback loop that may not yield reliable results.&lt;/p&gt;
&lt;p&gt;The practical takeaway: use masking as your primary strategy and treat synthetic data as a supplement rather than a replacement.&lt;/p&gt;
&lt;h3 id=&quot;shift-left-on-data-not-just-code&quot;&gt;Shift Left on Data, Not Just Code&lt;/h3&gt;
&lt;p&gt;Developers have internalized shift-left thinking for testing and security. The same logic applies to data governance — it's just less common in practice.&lt;/p&gt;
&lt;p&gt;Mathison described the target state as a self-service model. A platform team or data administration team manages the masking policies and makes compliant datasets available. Developers and testers pull what they need, when they need it, without opening a ticket or waiting on another team. &quot;The upsides of getting access to that data when I need it, how I need it, just trumps the gotchas of making sure it's masked,&quot; Mathison said.&lt;/p&gt;
&lt;p&gt;On the compliance side — GDPR, HIPAA, CCPA — Mathison is realistic about what developers can be expected to know. &quot;You can't be an expert in everything,&quot; he said. The CISO and data administration teams own the policy. Developers need clear guardrails and tooling that make following those policies the path of least resistance.&lt;/p&gt;
&lt;p&gt;One more watch-out: cloud costs. Teams moving to cloud-based data environments can see resource consumption scale quickly if access controls aren't balanced with spend management. It's the same pattern that bit organizations during the early lift-and-shift era.&lt;/p&gt;
&lt;h3 id=&quot;what-good-looks-like&quot;&gt;What Good Looks Like&lt;/h3&gt;
&lt;p&gt;The bottom line is clear boundaries between production and non-production, a reliable masking process, and a self-service data delivery workflow that doesn't slow developers down.&lt;/p&gt;
&lt;p&gt;Toil is the enemy. If the process for getting a compliant dataset is painful, developers will work around it. If it's fast and self-serve, they won't have to.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/19698/your-test-and-dev-data-is-a-bigger-risk-than-you-think</guid>
<pubDate>Fri, 05 Jun 2026 00:10:39 +0000</pubDate>
</item>
<item>
<title>F5 AI Remediate Closes the Gap Between Finding AI Vulnerabilities and Fixing Them</title>
<link>https://coderlegion.com/12803/f5-ai-remediate-closes-the-gap-between-finding-ai-vulnerabilities-and-fixing-them</link>
<description>&lt;p&gt;Every security team knows the frustration. A vulnerability gets flagged. Someone has to understand it well enough to write a protection. That process can take hours if the issue is simple, days if it's complex, and longer if the right human expertise isn't available. Meanwhile, the exposure sits open.&lt;/p&gt;
&lt;p&gt;F5 announced AI Remediate today at AppWorld 2026 in Las Vegas, targeting exactly that gap. It's a new addition to the F5 Application Delivery and Security Platform that closes the loop between F5 AI Red Team — which identifies vulnerabilities in AI models — and F5 AI Guardrails, which enforces runtime protections. AI Remediate automates the creation, testing, and validation of guardrail packages, then hands the final decision to a human before anything goes to production.&lt;/p&gt;
&lt;p&gt;Jimmy White, VP of AI at F5 and former CTO and President of CalypsoAI — the AI security company F5 acquired — explained the thinking behind it during an interview at AppWorld.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;the-problem-it-s-solving&quot;&gt;The Problem It's Solving&lt;/h3&gt;
&lt;p&gt;For developers and security engineers, the mean time to remediate is a real measurement with real consequences. If you're doing something legitimate but your tooling isn't understood by the security team, you can get blocked — unintentionally — for a long time. AI Remediate is designed to compress that window.&lt;/p&gt;
&lt;p&gt;White framed it in terms most engineers will recognize immediately:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;If the human doesn't understand the nuance of why this is bad or how to block it, it could be days. This takes out the nuance required in human knowledge and turns it into a computer program problem.&quot;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;For simple cases — block salary information from appearing in model outputs, for example — a human can write and publish a guardrail in under 60 seconds. But most real-world use cases aren't that clean. Permutations, regional regulations, industry-specific restrictions, and edge cases pile up fast. That's where the tool earns its place.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;how-it-works&quot;&gt;How It Works&lt;/h3&gt;
&lt;p&gt;AI Remediate runs a team of agents that iterates through potential guardrail solutions until it finds one that meets a 90% efficacy threshold. It doesn't just pick the first option — it keeps generating and testing until it hits that minimum bar, then presents the result to a human for approval before it goes live.&lt;/p&gt;
&lt;p&gt;The 90% threshold is a deliberate design decision, not a limitation. White explained the reasoning:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;We could make it fully automated, but we chose not to. Make sure the 90% case is secured — and make sure the good traffic in that 10% isn't blocked unnecessarily.&quot;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Push efficacy too high and you start blocking legitimate traffic. The Black Friday analogy is useful here: some e-commerce platforms intentionally ease fraud detection on peak days because stopping all risk also stops revenue. The same tradeoff applies to AI security. A guardrail that catches everything isn't the goal. A guardrail that catches the right things — while keeping legitimate use cases running — is.&lt;/p&gt;
&lt;p&gt;White also noted that combinatory rules can push accuracy well above 90% for specific scenarios. If two terms are each acceptable on their own but problematic together, combining them into a single rule gets you to 98% or higher. The system handles that logic automatically.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;speed-in-practice&quot;&gt;Speed in Practice&lt;/h3&gt;
&lt;p&gt;White demonstrated the tool at AppWorld earlier today. For a clear-cut vulnerability — a model leaking salary data, for example — the path from identification to a validated guardrail in production took under 60 seconds with a human in the loop.&lt;/p&gt;
&lt;p&gt;For complex cases, the benchmark is under 60 minutes. Without AI Remediate, that same complex case could take days.&lt;/p&gt;
&lt;p&gt;The difference comes down to whether a human has to understand the full nuance of the problem to write a fix. For most non-trivial vulnerabilities, they do — and most teams don't have someone with exactly that background available on demand. AI Remediate turns what was a knowledge problem into a compute problem.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;a-pharma-example-that-makes-the-case&quot;&gt;A Pharma Example That Makes the Case&lt;/h3&gt;
&lt;p&gt;White walked through a scenario that illustrates why custom guardrails matter. A pharmaceutical company was using AI to help generate new chemical compounds. Certain compounds are legal in the US but banned in Europe. The AI model needed guardrails that could distinguish between regions and block the appropriate outputs accordingly.&lt;/p&gt;
&lt;p&gt;Writing that guardrail manually requires someone with a chemistry background who also understands EU regulatory specifics. Finding that person, getting them available, and having them produce and test a working guardrail takes time most teams don't have.&lt;/p&gt;
&lt;p&gt;AI Remediate handles it. The machine doesn't need to understand why a compound is banned — it just needs the rules. Apply them, iterate, validate, present to human for approval.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;The right human can probably do it faster than the machine, because they can cut through the nuance. But you can't always find the right human.&quot; — Jimmy White, VP of AI, F5&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3 id=&quot;the-human-is-still-in-the-loop-by-design&quot;&gt;The Human Is Still in the Loop — By Design&lt;/h3&gt;
&lt;p&gt;One of the strongest selling points for security and engineering teams is what AI Remediate doesn't do: it doesn't push changes to production automatically. Every validated guardrail package requires human approval before it goes live.&lt;/p&gt;
&lt;p&gt;White was clear that this is intentional, not a roadmap item to be automated away. The goal is accountable AI adoption, not autonomous AI decision-making. The tool handles the permutations. The human makes the call.&lt;/p&gt;
&lt;p&gt;That distinction matters for organizations that have governance requirements around changes to production security controls. The audit trail is built in — every generated guardrail, every test result, and every human approval is logged.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;what-this-means-for-the-developer-experience&quot;&gt;What This Means for the Developer Experience&lt;/h3&gt;
&lt;p&gt;For developers, the practical impact is narrower but worth noting. When security teams can remediate faster, developers spend less time blocked on false positives or waiting for a protection to catch up with a vulnerability that was already identified.&lt;/p&gt;
&lt;p&gt;White pointed to mean time to remediate as the metric that ties this directly to developer experience. Faster remediation means faster resolution. Fewer unnecessary blocks mean fewer interruptions to legitimate work.&lt;/p&gt;
&lt;p&gt;AI Remediate is available as part of the F5 Application Delivery and Security Platform. It requires F5 AI Red Team and F5 AI Guardrails as the foundation — Red Team to surface vulnerabilities, Guardrails to enforce protections, and Remediate to automate the step in between.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/12803/f5-ai-remediate-closes-the-gap-between-finding-ai-vulnerabilities-and-fixing-them</guid>
<pubDate>Wed, 11 Mar 2026 21:55:57 +0000</pubDate>
</item>
<item>
<title>Is AI Creating More Cybersecurity Problems Than It Solves?</title>
<link>https://coderlegion.com/12261/is-ai-creating-more-cybersecurity-problems-than-it-solves</link>
<description>&lt;h3 id=&quot;is-ai-creating-more-cybersecurity-problems-than-it-solves-&quot;&gt;Is AI Creating More Cybersecurity Problems Than It Solves?&lt;/h3&gt;
&lt;p&gt;Artificial Intelligence is transforming software development at an unprecedented pace. Developers can now generate production-ready code in minutes, automate repetitive tasks and accelerate product launches. However, recent security research suggests that while AI is improving development speed it may also be expanding the cybersecurity attack surface faster than organizations can manage.&lt;/p&gt;
&lt;p&gt;According to the latest State of Software Security findings, software vulnerabilities are being introduced at a higher rate than they are being fixed. One of the most concerning trends is the rise in security debt — vulnerabilities that remain unresolved for over a year. This issue now affects a large percentage of organizations and the gap continues to grow.&lt;/p&gt;
&lt;h4 id=&quot;the-core-problem-speed-vs-security&quot;&gt;The Core Problem: Speed vs Security&lt;/h4&gt;
&lt;p&gt;AI-assisted development tools enable teams to ship code rapidly. The challenge is that remediation efforts are not scaling at the same speed. More code means more potential vulnerabilities. If security testing, code review and patch management do not keep up, the risk compounds over time.&lt;/p&gt;
&lt;p&gt;In many cases, AI-generated code introduces:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Insecure configurations&lt;/li&gt;
&lt;li&gt;Outdated dependencies&lt;/li&gt;
&lt;li&gt;Weak input validation&lt;/li&gt;
&lt;li&gt;Authentication and authorization flaws&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Modern security tools are better at detecting issues through static analysis, dynamic testing and software composition analysis. However detection alone is not enough. The real bottleneck lies in timely remediation.&lt;/p&gt;
&lt;h4 id=&quot;ai-a-double-edged-sword&quot;&gt;AI: A Double-Edged Sword&lt;/h4&gt;
&lt;p&gt;AI is not inherently the problem. In fact, it can also be part of the solution. Security teams are increasingly leveraging AI for automated vulnerability detection, threat modelling assistance, code pattern analysis and faster triaging of alerts.&lt;/p&gt;
&lt;p&gt;At the same time, AI systems introduce new risks such as prompt injection, false positives and complex code structures that are harder to audit manually. This creates a paradox. AI increases productivity while simultaneously increasing complexity.&lt;/p&gt;
&lt;h4 id=&quot;why-this-matters-for-developers-and-start-ups&quot;&gt;Why This Matters for Developers and Start-ups&lt;/h4&gt;
&lt;p&gt;For independent developers, start-ups and growing tech companies, speed is often prioritized over security. Shipping features quickly can feel like survival. But unmanaged security debt can lead to data breaches, compliance violations, loss of user trust, financial damage and long-term reputational harm.&lt;/p&gt;
&lt;p&gt;Cybersecurity is no longer a final-stage checklist item. It must be integrated into the development lifecycle from day one through secure coding practices, automated scanning pipelines and regular dependency updates.&lt;/p&gt;
&lt;h4 id=&quot;a-practical-way-forward&quot;&gt;A Practical Way Forward&lt;/h4&gt;
&lt;p&gt;Instead of slowing innovation, organizations should focus on secure AI adoption. This includes reviewing AI-generated code before deployment, enforcing secure coding standards, automating CI/CD security scans, prioritizing high-risk vulnerabilities and training developers in secure-by-design principles.&lt;/p&gt;
&lt;p&gt;AI will continue to shape the future of software engineering. The question is not whether to use it but how responsibly we integrate it into our workflows.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yedriu1o4bm4fjm367t7.jpeg&quot; alt=&quot;Image description&quot;&gt;&lt;/p&gt;
&lt;p&gt;The future belongs to teams that move fast and stay secure.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt; #ArtificialIntelligence #CyberSecurity #SecureCoding #SoftwareDevelopment #InfoSec #DevSecOps #TechInsights #DigitalInnovation #MuhammadYasir #YasirAwan4831 &lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/12261/is-ai-creating-more-cybersecurity-problems-than-it-solves</guid>
<pubDate>Sat, 28 Feb 2026 05:37:42 +0000</pubDate>
</item>
<item>
<title>Azure Landing Zone - Policy at Scale</title>
<link>https://coderlegion.com/8100/azure-landing-zone-policy-at-scale</link>
<description>&lt;h2 id=&quot;azure-policy-in-real-landing-zones&quot;&gt;Azure Policy in Real Landing Zones&lt;/h2&gt;
&lt;blockquote&gt;&lt;p&gt;Onboard multiple Azure subscriptions into a real landing zone using Azure Policy, management groups, and policy-as-code for enterprise governance.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&quot;introduction&quot;&gt;Introduction&lt;/h3&gt;
&lt;p&gt;On paper, Azure Landing Zones and Azure Policy look clean and deterministic. In reality, you're onboarding dozens or hundreds of subscriptions with existing workloads, legacy configurations, and multiple teams that all think they're special.&lt;/p&gt;
&lt;p&gt;This article focuses on &lt;strong&gt;using Azure Policy to onboard multiple subscriptions into a real, enterprise-grade landing zone&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How to structure &lt;strong&gt;management groups&lt;/strong&gt; and &lt;strong&gt;policy initiatives&lt;/strong&gt; for scalable governance&lt;/li&gt;
&lt;li&gt;How to onboard &lt;strong&gt;brownfield&lt;/strong&gt; and &lt;strong&gt;greenfield&lt;/strong&gt; subscriptions safely&lt;/li&gt;
&lt;li&gt;How to use &lt;strong&gt;policy as code&lt;/strong&gt; and CI/CD to operate this at scale&lt;/li&gt;
&lt;li&gt;How to balance &lt;strong&gt;security, reliability, and delivery velocity&lt;/strong&gt; when policies start denying real traffic&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The scope is Azure-first, but the patterns map naturally to AWS Organizations + SCPs and GCP Organization policies.&lt;/p&gt;
&lt;h3 id=&quot;core-concepts&quot;&gt;Core Concepts&lt;/h3&gt;
&lt;h4 id=&quot;azure-landing-zone-in-governance-terms&quot;&gt;Azure Landing Zone in Governance Terms&lt;/h4&gt;
&lt;p&gt;Forget marketing. In governance terms, an &lt;strong&gt;Azure Landing Zone&lt;/strong&gt; is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;management group hierarchy&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;A set of &lt;strong&gt;policy initiatives&lt;/strong&gt; (built-in and custom)&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;baseline of guardrails&lt;/strong&gt; for networking, identity, security, and operations&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;repeatable way&lt;/strong&gt; to onboard subscriptions and apps into that baseline&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Key Azure building blocks:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Management groups (MGs)&lt;/strong&gt; – hierarchical containers for subscriptions; policies applied here flow down&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Azure Policy definitions&lt;/strong&gt; – rules for what is allowed, denied, audited, or automatically deployed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Policy initiatives&lt;/strong&gt; – logical bundles of policy definitions (e.g., CAF &quot;Azure Landing Zone&quot; initiatives)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Assignments&lt;/strong&gt; – binding a definition/initiative to a scope (management group, subscription, resource group)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Effects&lt;/strong&gt; – &lt;code&gt;Deny&lt;/code&gt;, &lt;code&gt;Audit&lt;/code&gt;, &lt;code&gt;DeployIfNotExists&lt;/code&gt;, &lt;code&gt;Modify&lt;/code&gt;, &lt;code&gt;Append&lt;/code&gt;, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Remediation tasks&lt;/strong&gt; – jobs created to apply &lt;code&gt;DeployIfNotExists&lt;/code&gt;/&lt;code&gt;Modify&lt;/code&gt; to existing resources&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;management-group-hierarchy-for-real-landing-zones&quot;&gt;Management Group Hierarchy for Real Landing Zones&lt;/h4&gt;
&lt;p&gt;A pragmatic, enterprise-friendly hierarchy often looks like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;Tenant Root ( / )
 ├─ Platform
 │   ├─ Identity
 │   ├─ Management
 │   ├─ Connectivity
 ├─ LandingZones
 │   ├─ Corp
 │   │   ├─ Corp-Prod
 │   │   ├─ Corp-NonProd
 │   ├─ Online
 │       ├─ Online-Prod
 │       ├─ Online-NonProd
 └─ Sandbox
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Patterns:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Platform&lt;/strong&gt; MGs host shared services: identity, networking, management&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LandingZones&lt;/strong&gt; MGs host application subscriptions grouped by business domain / criticality&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sandbox&lt;/strong&gt; MG for low-governance experimental spaces&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Policy is usually bound at &lt;strong&gt;Platform&lt;/strong&gt;, &lt;strong&gt;LandingZones&lt;/strong&gt;, and specific &lt;strong&gt;child MGs&lt;/strong&gt; such as &lt;code&gt;Corp-Prod&lt;/code&gt;.&lt;/p&gt;
&lt;h4 id=&quot;policy-as-code-and-devsecops&quot;&gt;Policy as Code and DevSecOps&lt;/h4&gt;
&lt;p&gt;Azure Policy without automation becomes unmaintainable as soon as you pass 5 subscriptions.&lt;/p&gt;
&lt;p&gt;Treat Azure Policy as code:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Definitions and initiatives&lt;/strong&gt; stored as JSON in Git (or Bicep/ARM modules, or Terraform)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pipelines&lt;/strong&gt; (Azure DevOps or GitHub Actions) that:&lt;ul&gt;
&lt;li&gt;Validate policies (linting, schema checks)&lt;/li&gt;
&lt;li&gt;Publish definitions to the management group scope&lt;/li&gt;
&lt;li&gt;Assign initiatives with parameter values per environment (dev/test/prod)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PR-based change control&lt;/strong&gt; for all policy changes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security and platform teams&lt;/strong&gt; collaborate on policy sets and exemptions through Git, not the portal&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;High-level mapping of key services:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;DevOps tooling:&lt;/strong&gt; Azure DevOps Pipelines / GitHub Actions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Governance:&lt;/strong&gt; Azure Policy, Management Groups, Azure Blueprints (phasing out), CAF landing zone initiatives&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security:&lt;/strong&gt; Defender for Cloud, Key Vault, Managed Identities, Entra ID (Azure AD)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Observability:&lt;/strong&gt; Azure Monitor, Log Analytics, Application Insights&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;step-by-step-guide&quot;&gt;Step-by-Step Guide&lt;/h3&gt;
&lt;h4 id=&quot;1-prerequisites-and-roles&quot;&gt;1. Prerequisites and Roles&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Prerequisites:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Tenant-level setup&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Management group hierarchy defined and approved&lt;/li&gt;
&lt;li&gt;Tenant Root Group locked down to a small platform/governance team&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Access&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Platform team with &lt;code&gt;Owner&lt;/code&gt; or &lt;code&gt;Contributor&lt;/code&gt; + &lt;code&gt;Resource Policy Contributor&lt;/code&gt; at key MGs&lt;/li&gt;
&lt;li&gt;Security team with &lt;code&gt;Security Admin&lt;/code&gt; + rights to define/approve policies&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Git repository for policy-as-code&lt;/li&gt;
&lt;li&gt;CI/CD pipelines (Azure DevOps or GitHub Actions)&lt;/li&gt;
&lt;li&gt;Landing zone reference (CAF-aligned) selected and tailored&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Team ownership:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Platform team:&lt;/strong&gt; management groups, policy initiatives, CI/CD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security team:&lt;/strong&gt; security controls, approvals, exceptions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;App teams:&lt;/strong&gt; subscription ownership, remediation work, exception requests&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;2-design-the-management-group-strategy&quot;&gt;2. Design the Management Group Strategy&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Define environments&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Separate &lt;strong&gt;Prod&lt;/strong&gt; and &lt;strong&gt;NonProd&lt;/strong&gt; at MG level where possible (&lt;code&gt;Corp-Prod&lt;/code&gt;, &lt;code&gt;Corp-NonProd&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Critical workloads can have their own branch (&lt;code&gt;Payments-Prod&lt;/code&gt; MG)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Align policies with MG scopes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tenant root: only minimal guardrails (e.g., logging, naming, maybe region restrictions)&lt;/li&gt;
&lt;li&gt;Platform MG: policies for shared services (diagnostics, DDoS plan requirements, etc.)&lt;/li&gt;
&lt;li&gt;LandingZones MG: baseline security, networking, and operational standards for all app subscriptions&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Key rule:&lt;/strong&gt; &lt;strong&gt;You should not assign policies directly to individual subscriptions unless there is a strong, documented reason.&lt;/strong&gt; Use management groups as default.&lt;/p&gt;
&lt;h4 id=&quot;3-define-and-version-your-policy-library&quot;&gt;3. Define and Version Your Policy Library&lt;/h4&gt;
&lt;p&gt;Use a structure like:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;policies/
  definitions/
    security/
      allowed-locations.json
      vm-require-managed-disks.json
    operations/
      deploy-diagnostics-to-log-analytics.json
    networking/
      require-private-endpoints.json
  initiatives/
    alz-core.json
    alz-security.json
    alz-networking.json
  assignments/
    Corp-NonProd/
      alz-core.json
      alz-security.json
    Corp-Prod/
      alz-core.json
      alz-security.json
      alz-networking.json
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Example &lt;strong&gt;Terraform&lt;/strong&gt; snippet for an initiative assignment:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-hcl&quot;&gt;resource &quot;azurerm_policy_set_definition&quot; &quot;alz_core&quot; {
  name         = &quot;alz-core&quot;
  display_name = &quot;ALZ Core Baseline&quot;
  policy_type  = &quot;Custom&quot;
  management_group_id = data.azurerm_management_group.landingzones.id

  policy_definitions = [
    {
      policy_definition_id = data.azurerm_policy_definition.allowed_locations.id
      parameters           = jsonencode({ listOfAllowedLocations = { value = [&quot;westeurope&quot;, &quot;northeurope&quot;] } })
    },
    {
      policy_definition_id = data.azurerm_policy_definition.deploy_diagnostics.id
      parameters           = jsonencode({ logAnalytics = { value = &quot;/subscriptions/.../resourceGroups/rg-logs/providers/Microsoft.OperationalInsights/workspaces/lz-logs-weu&quot; } })
    }
  ]
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then assign that initiative to a specific management group:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-hcl&quot;&gt;resource &quot;azurerm_policy_set_definition&quot; &quot;alz_core&quot; {
  # as above
}

resource &quot;azurerm_policy_assignment&quot; &quot;alz_core_corp_prod&quot; {
  name                 = &quot;alz-core-corp-prod&quot;
  display_name         = &quot;ALZ Core for Corp Prod&quot;
  policy_definition_id = azurerm_policy_set_definition.alz_core.id
  scope                = data.azurerm_management_group.corp_prod.id

  identity {
    type = &quot;SystemAssigned&quot;
  }

  location = &quot;westeurope&quot;
}
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;4-build-ci-cd-for-policies&quot;&gt;4. Build CI/CD for Policies&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Example: GitHub Actions workflow for policy deployment (simplified):&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;name: Deploy Azure Policies

on:
  push:
    branches: [ main ]
    paths:
      - 'policies/**'

jobs:
  deploy-policies:
    runs-on: ubuntu-latest
    env:
      AZURE_MG_ID: /providers/Microsoft.Management/managementGroups/landingzones
    steps:
      - uses: actions/checkout@v4

      - uses: azure/login@v2
        with:
          creds: ${{ secrets.AZURE_CREDENTIALS }}

      - name: Validate policy JSON
        run: |
          python scripts/validate_policies.py policies/definitions
          python scripts/validate_initiatives.py policies/initiatives

      - name: Deploy policy definitions
        run: |
          az deployment mg create \
            --management-group-id ${AZURE_MG_ID##*/} \
            --template-file infra/policies/definitions.bicep \
            --parameters definitionsPath=policies/definitions

      - name: Deploy policy initiatives and assignments
        run: |
          az deployment mg create \
            --management-group-id ${AZURE_MG_ID##*/} \
            --template-file infra/policies/initiatives.bicep \
            --parameters initiativesPath=policies/initiatives assignmentsPath=policies/assignments
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Key points:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Use &lt;strong&gt;service principals with least privilege&lt;/strong&gt; for policy deployment&lt;/li&gt;
&lt;li&gt;Validate JSON / Bicep / Terraform as part of the pipeline&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;separate pipelines&lt;/strong&gt; or stages for dev vs prod MGs&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;5-onboard-subscriptions-brownfield-vs-greenfield&quot;&gt;5. Onboard Subscriptions: Brownfield vs Greenfield&lt;/h4&gt;
&lt;h5 id=&quot;5-1-greenfield-subscriptions&quot;&gt;5.1 Greenfield subscriptions&lt;/h5&gt;
&lt;p&gt;For new subscriptions:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Create subscription via &lt;strong&gt;automation&lt;/strong&gt; (e.g., Azure Deployment Environments, Azure DevOps pipeline, Terraform, custom portal)&lt;/li&gt;
&lt;li&gt;Ensure the new subscription is placed in the correct &lt;strong&gt;management group&lt;/strong&gt; (&lt;code&gt;Corp-NonProd&lt;/code&gt;, &lt;code&gt;Corp-Prod&lt;/code&gt;, etc.)&lt;/li&gt;
&lt;li&gt;Policies auto-apply from the MG&lt;/li&gt;
&lt;li&gt;Validate:&lt;ul&gt;
&lt;li&gt;Subscription appears in management group&lt;/li&gt;
&lt;li&gt;Policy assignments list inherited initiatives&lt;/li&gt;
&lt;li&gt;First deployments from app team resources comply with policy&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h5 id=&quot;5-2-brownfield-subscriptions-existing-workloads-&quot;&gt;5.2 Brownfield subscriptions (existing workloads)&lt;/h5&gt;
&lt;p&gt;Onboarding existing subscriptions is where Azure Policy meets reality.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Process:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Discovery&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Move subscription into a temporary MG (e.g., &lt;code&gt;Brownfield-Quarantine&lt;/code&gt;) where only &lt;strong&gt;Audit&lt;/strong&gt; policies are applied&lt;/li&gt;
&lt;li&gt;Run compliance scans and export non-compliance via Azure Resource Graph or &lt;code&gt;az policy state&lt;/code&gt; CLI&lt;/li&gt;
&lt;li&gt;Classify findings: high-risk (public IPs, missing encryption, no backups), medium, low&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Define migration strategy&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Agree with app owners on timelines and responsibility for remediation&lt;/li&gt;
&lt;li&gt;For some controls, use &lt;code&gt;DeployIfNotExists&lt;/code&gt; or &lt;code&gt;Modify&lt;/code&gt; to auto-remediate&lt;/li&gt;
&lt;li&gt;For hard-breaking changes, schedule maintenance windows&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Gradual enforcement&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Phase 1: Audit-only policies at target landing zone MG&lt;/li&gt;
&lt;li&gt;Phase 2: Switch selected controls to &lt;strong&gt;Deny&lt;/strong&gt; for new deployments, keep existing resources under &lt;code&gt;Audit&lt;/code&gt;/&lt;code&gt;DeployIfNotExists&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Phase 3: Fully enforce policies including existing resources (if realistic)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Move subscription into its final MG&lt;/strong&gt; once:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Critical non-compliances are addressed or excepted&lt;/li&gt;
&lt;li&gt;Auto-remediation jobs have run and are monitored&lt;/li&gt;
&lt;li&gt;App team acknowledges and accepts the landing zone guardrails&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&quot;6-operationalizing-policy-remediation-and-exceptions&quot;&gt;6. Operationalizing Policy: Remediation and Exceptions&lt;/h4&gt;
&lt;h5 id=&quot;6-1-remediation&quot;&gt;6.1 Remediation&lt;/h5&gt;
&lt;p&gt;For &lt;code&gt;DeployIfNotExists&lt;/code&gt; / &lt;code&gt;Modify&lt;/code&gt; policies:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enable &lt;strong&gt;system-assigned managed identity&lt;/strong&gt; on policy assignments to perform changes&lt;/li&gt;
&lt;li&gt;Trigger remediation tasks via portal or CLI:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;az policy remediation create \
  --name fix-diag-settings \
  --policy-assignment &quot;/subscriptions/&amp;lt;subId&amp;gt;/providers/Microsoft.Authorization/policyAssignments/alz-core-corp-prod&quot; \
  --resource-group rg-app-prod
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Monitor remediation status via:&lt;ul&gt;
&lt;li&gt;Azure Policy compliance dashboard&lt;/li&gt;
&lt;li&gt;Azure Monitor alerts on failed remediation tasks&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h5 id=&quot;6-2-exceptions-and-exemptions&quot;&gt;6.2 Exceptions and Exemptions&lt;/h5&gt;
&lt;p&gt;Not everything can be compliant on day one.&lt;/p&gt;
&lt;p&gt;Use &lt;strong&gt;Azure Policy exemptions&lt;/strong&gt; instead of deleting or bypassing policies:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Scope exemptions to the smallest possible asset (resource group or resource)&lt;/li&gt;
&lt;li&gt;Make them &lt;strong&gt;time-bound&lt;/strong&gt; where possible (expiration date)&lt;/li&gt;
&lt;li&gt;Track exemptions in Git (YAML/JSON manifest) to avoid &quot;exception sprawl&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;architecture-overview&quot;&gt;Architecture Overview&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;https://coderlegion.com/?qa=blob&amp;amp;qa_blobid=15030704013584984996&quot; alt=&quot;&quot;&gt;&lt;/p&gt;
&lt;p&gt;This shows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Policy-as-code flowing through CI/CD into MG scopes&lt;/li&gt;
&lt;li&gt;Subscriptions inheriting initiatives from their MGs&lt;/li&gt;
&lt;li&gt;Clear ownership separation between platform, security, and app teams&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;best-practices&quot;&gt;Best Practices&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Start with management groups, not subscriptions&lt;/strong&gt;&lt;br&gt;
Design and agree your MG hierarchy before onboarding more subscriptions&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Bundle policies into coherent initiatives&lt;/strong&gt;&lt;br&gt;
Organize by domain: &lt;code&gt;alz-core&lt;/code&gt;, &lt;code&gt;alz-security&lt;/code&gt;, &lt;code&gt;alz-networking&lt;/code&gt;, &lt;code&gt;alz-ops&lt;/code&gt; rather than hundreds of standalone assignments&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Use Audit-first, then Deny&lt;/strong&gt;&lt;br&gt;
Introduce policies as &lt;code&gt;Audit&lt;/code&gt;, analyze impact, then promote selected controls to &lt;code&gt;Deny&lt;/code&gt; for new deployments&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Separate baselines for Prod vs NonProd&lt;/strong&gt;&lt;br&gt;
NonProd can have more permissive policies (e.g., broader locations, less strict SKUs). Prod should be tightly controlled&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Make policy-as-code mandatory&lt;/strong&gt;&lt;br&gt;
Disallow manual creation or modification of policy assignments outside pipelines (and detect them via drift monitoring)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Minimize tenant root scope policies&lt;/strong&gt;&lt;br&gt;
Place most policies at Landing Zone MG scope; keep tenant root focused on tenant-wide essentials (e.g., disallowed regions, high-level logging)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Automate subscription creation and placement&lt;/strong&gt;&lt;br&gt;
Never create subscriptions manually via portal for production scenarios. Use pipelines + APIs to enforce correct MG placement and tags&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Integrate policy results into observability&lt;/strong&gt;&lt;br&gt;
Export compliance and remediation metrics to Log Analytics, build dashboards and alerts (e.g., % compliance per landing zone, per team)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Align policy with security standards&lt;/strong&gt;&lt;br&gt;
Map initiatives to CIS, NIST, ISO controls; use Defender for Cloud and CAF recommendations to inform baseline&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;common-pitfalls&quot;&gt;Common Pitfalls&lt;/h3&gt;
&lt;h4 id=&quot;1-deny-everything-from-day-one&quot;&gt;1. &quot;Deny Everything&quot; From Day One&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Issue:&lt;/strong&gt; Deploying a large set of &lt;code&gt;Deny&lt;/code&gt; policies to all subscriptions at once.&lt;br&gt;
&lt;strong&gt;Impact:&lt;/strong&gt; Broken pipelines, blocked deployments, emergency bypasses, political fallout.&lt;br&gt;
&lt;strong&gt;Detection:&lt;/strong&gt; Sudden spike in policy evaluation failures and deployment errors (HTTP 403) across subscriptions.&lt;br&gt;
&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Roll back to &lt;code&gt;Audit&lt;/code&gt; for high-impact controls&lt;/li&gt;
&lt;li&gt;Reintroduce &lt;code&gt;Deny&lt;/code&gt; gradually with prior impact analysis and communication&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;2-no-separation-between-baseline-and-app-specific-policies&quot;&gt;2. No Separation Between Baseline and App-Specific Policies&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Issue:&lt;/strong&gt; App-specific requirements mixed into global initiatives.&lt;br&gt;
&lt;strong&gt;Impact:&lt;/strong&gt; Baseline becomes cluttered, unmanageable, and difficult to update.&lt;br&gt;
&lt;strong&gt;Detection:&lt;/strong&gt; Initiatives that reference specific resource names, SKUs, or app tags.&lt;br&gt;
&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Keep platform baseline initiatives generic&lt;/li&gt;
&lt;li&gt;Manage app-specific policies at subscription or dedicated MG branches&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;3-manual-policy-drift&quot;&gt;3. Manual Policy Drift&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Issue:&lt;/strong&gt; Changes made via the portal that are not reflected in Git.&lt;br&gt;
&lt;strong&gt;Impact:&lt;/strong&gt; Unknown behaviors, inconsistent environments, broken expectations between teams.&lt;br&gt;
&lt;strong&gt;Detection:&lt;/strong&gt; Regular export and diff between current assignments and Git repo.&lt;br&gt;
&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enforce policy-as-code&lt;/li&gt;
&lt;li&gt;Introduce a &quot;drift detection&quot; pipeline that compares actual state to desired state and raises alerts&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;4-overuse-of-tenant-root-policies&quot;&gt;4. Overuse of Tenant Root Policies&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Issue:&lt;/strong&gt; Assigning almost everything at tenant root MG.&lt;br&gt;
&lt;strong&gt;Impact:&lt;/strong&gt; No flexibility for different landing zones, high blast radius for mistakes.&lt;br&gt;
&lt;strong&gt;Detection:&lt;/strong&gt; Tenant root has dozens of initiatives; lower MGs have almost none.&lt;br&gt;
&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Move most initiatives down to LandingZone / domain MGs&lt;/li&gt;
&lt;li&gt;Keep root very thin&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;5-ignoring-remediation-identity-permissions&quot;&gt;5. Ignoring Remediation Identity Permissions&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Issue:&lt;/strong&gt; Policy assignments use &lt;code&gt;DeployIfNotExists&lt;/code&gt; but the managed identity doesn't have required permissions.&lt;br&gt;
&lt;strong&gt;Impact:&lt;/strong&gt; Remediation tasks fail silently or partially.&lt;br&gt;
&lt;strong&gt;Detection:&lt;/strong&gt; Errors in remediation jobs, non-compliant resources not fixed.&lt;br&gt;
&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Assign appropriate RBAC roles (e.g., &lt;code&gt;Contributor&lt;/code&gt; on target scopes) to the policy assignment identities&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;6-poor-exception-governance&quot;&gt;6. Poor Exception Governance&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Issue:&lt;/strong&gt; Exceptions created ad-hoc, without expiry or documentation.&lt;br&gt;
&lt;strong&gt;Impact:&lt;/strong&gt; Hidden risk, compliance gaps, and audit failures.&lt;br&gt;
&lt;strong&gt;Detection:&lt;/strong&gt; Large number of exemptions with no clear owner or reason.&lt;br&gt;
&lt;strong&gt;Fix:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Implement a standardized exception workflow (ticket + PR + approval)&lt;/li&gt;
&lt;li&gt;Require owner, reason, scope, and expiry for every exemption&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;faq&quot;&gt;FAQ&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;1. How does this compare to AWS and GCP?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AWS equivalent: &lt;strong&gt;AWS Organizations + SCPs + Config&lt;/strong&gt;; Azure Policy is closer to Config rules + some SCP-like deny behavior&lt;/li&gt;
&lt;li&gt;GCP equivalent: &lt;strong&gt;Organization policies + Constraints&lt;/strong&gt; at org/folder/project scopes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The pattern—policy at hierarchy nodes, inheritance to accounts/subscriptions/projects—is the same.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. How do I integrate security and compliance without blocking delivery?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Use a &lt;strong&gt;progressive rollout&lt;/strong&gt;: start with &lt;code&gt;Audit&lt;/code&gt;, expose non-compliance to teams, set SLAs for fixes, then enforce &lt;code&gt;Deny&lt;/code&gt; only on well-understood controls. Add policy checks into CI (pre-merge) as well as at runtime.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. How do I scale this across dozens of teams and subscriptions?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Standardize &lt;strong&gt;landing zones&lt;/strong&gt; per domain&lt;/li&gt;
&lt;li&gt;Centralize &lt;strong&gt;policy-as-code&lt;/strong&gt; in a platform-owned repo&lt;/li&gt;
&lt;li&gt;Provide self-service &lt;strong&gt;subscription provisioning&lt;/strong&gt; that automatically places subscriptions into the right MG with the correct initiatives&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;4. What about multi-region and DR landing zones?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ensure allowed locations and networking policies support your DR regions. Create separate MGs if DR regions have different constraints, or parameterize initiatives with region-specific settings (e.g., different Log Analytics workspaces).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. How do I integrate with legacy stacks and on-prem?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Focus your policies on &lt;strong&gt;connectivity and security&lt;/strong&gt; first: VPN/ExpressRoute, private endpoints, NSGs, and logging. Ensure that hybrid connectivity does not bypass landing zone controls (e.g., enforcing private-only paths for PaaS services).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;6. How do I measure success of my landing zone governance?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Track KPIs such as:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;% of subscriptions onboarded to landing zones&lt;/li&gt;
&lt;li&gt;Policy compliance rate per MG / per team&lt;/li&gt;
&lt;li&gt;Mean time to remediate non-compliant resources&lt;/li&gt;
&lt;li&gt;Number of active exemptions and their trend&lt;/li&gt;
&lt;li&gt;Deployment failure rates caused by policy (should decrease over time as baselines stabilize)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;7. How do I deal with app teams who need special policies?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Use &lt;strong&gt;branching MGs&lt;/strong&gt; under landing zones or subscription-scoped initiatives for special cases, but keep them managed via the same policy-as-code pipeline and documented exceptions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;8. Do I need Azure Blueprints?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Blueprints are being superseded by &lt;strong&gt;ARM/Bicep/Terraform + policy-as-code&lt;/strong&gt;. Prefer those, unless you have a strong reason to keep existing Blueprint-based implementations.&lt;/p&gt;
&lt;h3 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h3&gt;
&lt;p&gt;Onboarding multiple subscriptions into a real Azure Landing Zone is fundamentally a &lt;strong&gt;governance and operations&lt;/strong&gt; problem, not a button in the portal. Azure Policy gives you the enforcement engine; management groups give you the structure; policy-as-code and CI/CD give you repeatability.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Key takeaways:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Design a &lt;strong&gt;management group hierarchy&lt;/strong&gt; that reflects your organization&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;policy initiatives&lt;/strong&gt; aligned to CAF domains (core, security, networking, ops)&lt;/li&gt;
&lt;li&gt;Treat Azure Policy as &lt;strong&gt;code&lt;/strong&gt;, integrated with pipelines and reviews&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Phase in enforcement&lt;/strong&gt;: audit, analyze, remediate, then deny&lt;/li&gt;
&lt;li&gt;Manage &lt;strong&gt;exceptions and remediation&lt;/strong&gt; with discipline, not one-off hacks&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Next steps:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Draft your &lt;strong&gt;MG hierarchy&lt;/strong&gt; and get cross-team buy-in&lt;/li&gt;
&lt;li&gt;Stand up a &lt;strong&gt;policy-as-code repo and CI/CD pipeline&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Start with a &lt;strong&gt;non-prod landing zone&lt;/strong&gt;, onboard a few subscriptions, and refine&lt;/li&gt;
&lt;li&gt;Gradually extend to prod and high-criticality workloads&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&quot;references&quot;&gt;References&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://learn.microsoft.com/azure/cloud-adoption-framework/ready/landing-zone/&quot;&gt;Microsoft Azure Landing Zone documentation (CAF)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://learn.microsoft.com/azure/governance/policy/overview&quot;&gt;Azure Policy documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://github.com/Azure/Enterprise-Scale&quot;&gt;Azure landing zones reference implementation on GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
<category>CI/CD Pipelines</category>
<guid isPermaLink="true">https://coderlegion.com/8100/azure-landing-zone-policy-at-scale</guid>
<pubDate>Tue, 02 Dec 2025 23:47:52 +0000</pubDate>
</item>
<item>
<title>Devs fix only 6 vulnerabilities monthly while facing 17 new ones - production attack data essential.</title>
<link>https://coderlegion.com/4094/devs-fix-only-vulnerabilities-monthly-while-facing-ones-production-attack-data-essential</link>
<description>&lt;h2 id=&quot;software-under-siege-why-production-data-is-the-key-to-secure-code&quot;&gt;Software Under Siege: Why Production Data is the Key to Secure Code&lt;/h2&gt;
&lt;p&gt;The numbers are staggering and sobering: applications face attacks every three minutes, with defenders taking 84 days to patch critical vulnerabilities while attackers exploit them in just five days. According to &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.contrastsecurity.com/&quot;&gt;Contrast Security&lt;/a&gt;'s new &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.contrastsecurity.com/software-under-siege-2025-report&quot;&gt;&quot;Software Under Siege 2025&quot; research report&lt;/a&gt;, based on 1.6 trillion daily security observations from real production applications, the mathematics of modern application security simply don't add up in defenders' favor.&lt;/p&gt;
&lt;p&gt;But buried within this seemingly dire data lies a counterintuitive insight that could fundamentally change how organizations approach application security: the answer isn't necessarily writing more secure code upfront, but rather using production attack intelligence to guide development efforts with surgical precision.&lt;/p&gt;
&lt;h3 id=&quot;the-false-positive-problem&quot;&gt;The False Positive Problem&lt;/h3&gt;
&lt;p&gt;&quot;Most AppSec technologies see possible attacks, so they report huge numbers like thousands or tens of thousands of attacks per month,&quot; explains &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.linkedin.com/in/planetlevel/&quot;&gt;Jeff Williams&lt;/a&gt;, CTO and founder of Contrast Security, who has spent three decades in application security. &quot;But when you actually watch the way that the application handles that request, you can differentiate. You can say, 'Hey, that's not an attack.'&quot;&lt;/p&gt;
&lt;p&gt;The research reveals a stark reality: while applications face over 14,000 attack attempts monthly, only 81 of those are &quot;viable attacks&quot; that actually reach exploitable vulnerabilities. The rest? Ambient internet noise—what Williams calls &quot;mosquitoes&quot; that defenders don't need to react to every time one flies by.&lt;/p&gt;
&lt;p&gt;This distinction matters enormously for development teams drowning in vulnerability backlogs. The average organization now carries 1.1 million application vulnerabilities in its backlog, according to recent analyst research. With developers fixing only six vulnerabilities per application per month while discovering 17 new ones, the mathematical trajectory is unsustainable.&lt;/p&gt;
&lt;h3 id=&quot;the-speed-asymmetry-crisis&quot;&gt;The Speed Asymmetry Crisis&lt;/h3&gt;
&lt;p&gt;The speed differential between attackers and defenders has reached crisis proportions. While attackers can exploit new vulnerabilities in five days and achieve lateral movement in just 48 minutes, defenders require an average of 194 days to identify breaches and 64 additional days to contain them.&lt;/p&gt;
&lt;p&gt;&quot;Large organizations have hundreds or thousands of applications, so you're adding net 11 new vulnerabilities per month per app,&quot; Williams notes. &quot;If you do that for a few years across thousands of applications, you end up with massive backlogs.&quot;&lt;/p&gt;
&lt;p&gt;Traditional security tools aren't equipped for this reality. Web Application Firewalls (WAFs) operate as &quot;best effort&quot; technology at the perimeter, unable to understand the applications they're protecting. Endpoint Detection and Response (EDR) tools miss application-layer attacks entirely due to what Williams calls &quot;attack laundering&quot;—when malicious activity originates through the application rather than directly targeting the operating system.&lt;/p&gt;
&lt;p&gt;&quot;Many application attacks stay in the application layer, and EDR can never see them,&quot; Williams explains. &quot;Things like unsafe deserialization, SQL injection, and expression language injection—none of those touch the operating system.&quot;&lt;/p&gt;
&lt;h3 id=&quot;the-ai-amplification-effect&quot;&gt;The AI Amplification Effect&lt;/h3&gt;
&lt;p&gt;Artificial intelligence is simultaneously making the problem worse and pointing toward solutions. On the attack side, AI dramatically lowers barriers for novice attackers, enabling them to create sophisticated exploits like unsafe deserialization attacks without deep technical expertise.&lt;/p&gt;
&lt;p&gt;For development teams using AI coding assistants, the news isn't encouraging. &quot;AI doesn't generate code that's any more secure than humans generate,&quot; Williams cautions. &quot;It's trained on code built by humans in the last generation, so that's the kind of code it produces.&quot; Multiple studies confirm AI-generated code carries similar security risks to human-written code.&lt;/p&gt;
&lt;p&gt;However, AI also offers unprecedented opportunities for defenders when applied to high-quality production data.&lt;/p&gt;
&lt;h3 id=&quot;the-production-data-advantage&quot;&gt;The Production Data Advantage&lt;/h3&gt;
&lt;p&gt;Here's where Williams' research reveals something counterintuitive: the key to writing secure code isn't necessarily shifting further left in the development process, but rather gathering intelligence from production applications under real attack.&lt;/p&gt;
&lt;p&gt;&quot;My epiphany over the last 10 years is that in order to build code securely, you have to have context from production,&quot; Williams explains. &quot;You have to know where you're being attacked, what attack types are being used against you, and which things in production are really exploitable.&quot;&lt;/p&gt;
&lt;p&gt;This approach flips conventional wisdom. Rather than trying to anticipate every possible vulnerability during development (often resulting in false positive overload), teams can use actual attack intelligence to prioritize their security efforts with laser focus.&lt;/p&gt;
&lt;p&gt;The data supports this approach: 99% of the 1.6 trillion security-relevant transactions Contrast observes daily are executed correctly. &quot;Developers are getting almost everything right relative to the code they're writing,&quot; Williams notes. &quot;It's in that 1% where we see the serious vulnerabilities and mistakes.&quot;&lt;/p&gt;
&lt;h3 id=&quot;practical-implementation-strategies&quot;&gt;Practical Implementation Strategies&lt;/h3&gt;
&lt;p&gt;For CISOs and development leaders, this research suggests several strategic shifts:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Deploy Application Detection and Response (ADR)&lt;/strong&gt; in production environments to gain real-time visibility into which vulnerabilities are actually being targeted. Unlike traditional tools that generate mountains of theoretical vulnerabilities, ADR identifies only those being actively exploited.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Use production attack data to prioritize remediation efforts.&lt;/strong&gt; When development teams know which vulnerabilities attackers are actually targeting, they can focus their limited time on issues that matter rather than chasing theoretical risks.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Implement runtime protection&lt;/strong&gt; for vulnerabilities that can't be immediately patched. Williams notes that ADR can completely eliminate entire categories of attacks, including expression language injection, SQL injection, and unsafe deserialization.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Focus on signal versus noise.&lt;/strong&gt; By filtering vulnerability reports through production attack intelligence, teams can dramatically reduce their effective backlog while maintaining security posture.&lt;/p&gt;
&lt;h3 id=&quot;success-stories&quot;&gt;Success Stories&lt;/h3&gt;
&lt;p&gt;The approach yields measurable results. Williams cites BMW as an example of a large organization that has &quot;effectively eliminated their backlog and reduced their mean time to remediate vulnerabilities to one day&quot; by implementing production-informed security practices.&lt;/p&gt;
&lt;p&gt;&quot;When you contextualize things and give developers real vulnerabilities, they can tighten the feedback loop,&quot; Williams explains. &quot;Across hundreds or thousands of applications, they can get excellent AppSec programs going.&quot;&lt;/p&gt;
&lt;h3 id=&quot;the-path-forward&quot;&gt;The Path Forward&lt;/h3&gt;
&lt;p&gt;The research reveals that method tampering appears as the most universal attack across all programming languages—not because it's particularly sophisticated, but because it's easy to attempt. Attackers simply try different HTTP verbs on every endpoint to find access control gaps.&lt;/p&gt;
&lt;p&gt;This pattern reflects a broader trend: attackers are increasingly automated and opportunistic, scanning for the easiest targets rather than developing highly sophisticated, targeted exploits. Defenders can leverage this by focusing protection efforts on the vulnerabilities actually being exploited, rather than trying to eliminate every theoretical risk.&lt;/p&gt;
&lt;p&gt;As Williams puts it, referencing the movie Cars: &quot;You have to turn right to go left. People think they have to put more effort farther left to prevent vulnerabilities from getting into production. But there's no context over there, so you just get overwhelmed with false positives. The answer, counterintuitively, is in production.&quot;&lt;/p&gt;
&lt;p&gt;For development teams and security leaders struggling with ever-growing vulnerability backlogs and accelerating attack timelines, this insight offers a path forward: use production intelligence to guide development priorities, deploy runtime protection for immediate risk reduction, and focus precious development resources on the vulnerabilities that truly matter.&lt;/p&gt;
&lt;p&gt;The mathematics of modern application security may seem impossible, but with the right data and approach, defenders can finally start winning the race.&lt;/p&gt;
</description>
<category>Java</category>
<guid isPermaLink="true">https://coderlegion.com/4094/devs-fix-only-vulnerabilities-monthly-while-facing-ones-production-attack-data-essential</guid>
<pubDate>Thu, 17 Jul 2025 11:09:58 +0000</pubDate>
</item>
</channel>
</rss>