{"id":16195,"date":"2026-05-08T10:07:00","date_gmt":"2026-05-08T10:07:00","guid":{"rendered":"https:\/\/newestek.com\/?p=16195"},"modified":"2026-05-08T10:07:00","modified_gmt":"2026-05-08T10:07:00","slug":"your-ctem-program-is-probably-ignoring-mcp-heres-how-to-fix-it","status":"publish","type":"post","link":"https:\/\/newestek.com\/?p=16195","title":{"rendered":"Your CTEM program is probably ignoring MCP. Here\u2019s how to fix it"},"content":{"rendered":"<div>\n<div id=\"remove_no_follow\">\n<div class=\"grid grid--cols-10@md grid--cols-8@lg article-column\">\n<div class=\"col-12 col-10@md col-6@lg col-start-3@lg\">\n<div class=\"article-column__content\">\n<section class=\"wp-block-bigbite-multi-title\">\n<div class=\"container\"><\/div>\n<\/section>\n<p>Model Context Protocol (MCP) is the connective tissue of modern AI tooling and has quietly become one of the most significant blind spots in modern security programs. Like shadow IT before it, shadow AI \u2014 especially as it relates to MCP risk \u2014 introduces a new class of exposures that security teams lack adequate tooling to see and address. Integrating MCP risks into a Continuous Threat Exposure Management (CTEM) program can help security teams keep up by providing a structured methodology and the operational agility needed to surface MCP exposures before attackers do.<\/p>\n<p>Security has always been a race between how fast the attack surface grows and how fast defenders can see it. <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/business\/security-101\/what-is-vulnerability-management\">Vulnerability Management <\/a>was the first serious attempt to run that race systematically. It worked until the environment got too complex and security teams found themselves prioritizing what was loudest over what was most dangerous. <a href=\"https:\/\/ctem.org\/docs\/what-is-continuous-threat-exposure-management\">CTEM<\/a> is built on the same core instinct to find exposures before attackers do but better reflects the business and technical realities of modern IT environments. Most mature security programs already have the bones of it. The question with MCP isn\u2019t whether CTEM applies. It\u2019s whether the scope has been extended to include it.<\/p>\n<p><a href=\"https:\/\/www.anthropic.com\/news\/model-context-protocol\">Introduced by Anthropic in late 2024<\/a>, MCP acts as the plugin architecture for agentic AI. If your team isn\u2019t scanning for, mapping or monitoring for MCP risks, you have a blind spot that grows every time a developer installs a new tool. MCP takes \u201cold\u201d risks such as supply chain attacks, hardcoded credentials, privilege escalation, remote code execution and makes them new again.<\/p>\n<p>Here\u2019s how:<\/p>\n<h2 class=\"wp-block-heading\" id=\"shadow-ai-you-cant-secure-what-you-cant-see\">Shadow AI: You can\u2019t secure what you can\u2019t see<\/h2>\n<p>In 2025, <a href=\"https:\/\/thehackernews.com\/2025\/09\/first-malicious-mcp-server-found.html\">researchers documented<\/a> the first confirmed malicious MCP server in the wild. The vehicle was a npm package called postmark-mcp, a tool that helped developers integrate AI assistants with the Postmark email service. The attacker was patient. They published fifteen legitimate versions over time, built up roughly 1,500 weekly downloads and earned genuine trust in the developer community. Then a version shipped with a single injected line of code that BCC\u2019d every single outgoing email to an external address.<\/p>\n<p>Around 300 organizations were affected before anyone noticed. Password resets, invoices, internal memos, confidential documents \u2014 exfiltrated for weeks without tripping a single alert. The tactic mirrors the SolarWinds playbook: Establish legitimacy first, corrupt later and count on the fact that once something is trusted, it stops being scrutinized.<\/p>\n<p>Enterprises have accumulated layers of governance to manage third-party software risk \u2014 procurement reviews, vendor assessments, security signoffs. The MCP ecosystem has none of that yet. Developers are pulling servers from npm the same way they pull any open-source dependency: Fast, on faith, without much thought about what happens when the tool connects to their AI agent and, through it, to internal data. That\u2019s not a criticism; it\u2019s a visibility problem. Visibility problems don\u2019t get solved by policy. They get solved by knowing what\u2019s in your environment.<\/p>\n<h2 class=\"wp-block-heading\" id=\"keys-under-the-doormat-hardcoded-credentials-in-ai-configurations\">Keys under the doormat: Hardcoded credentials in AI configurations<\/h2>\n<p>In 2023, <a href=\"https:\/\/thehackernews.com\/2024\/03\/over-225000-compromised-chatgpt.html\">information-stealing malware<\/a> harvested more than 225,000 ChatGPT credentials. Many came bundled with API keys developers had hardcoded directly into configuration files \u2014 not out of negligence, but out of the same logic that has always driven security shortcuts: It\u2019s faster, it works and the consequences feel abstract until they aren\u2019t.<\/p>\n<p>The more instructive scenario is simpler: A developer accidentally commits a production .env file containing API keys for OpenAI, Stripe, AWS and SendGrid. Automated bots find it within hours. Fraudulent cloud charges follow. No sophisticated attacker required \u2014 just a mistake that sat in a repository long enough for a scanner to find it.<\/p>\n<p>MCP makes this structurally worse because AI agents require credentials to function. They need keys for the LLM, keys for cloud services and keys for third-party integrations. Those keys have to go somewhere the agent can reach them: Environment variables in config files, plain text in markdown instruction files or hardcoded into the server definition itself. All of it is a static plaintext target. Hackers don\u2019t need to break in if they can just log in. The question is whether your scanning programs have been pointed at MCP server configurations, the markdown context files AI agents consume and the environment variable blocks where credentials live. Most haven\u2019t been.<\/p>\n<h2 class=\"wp-block-heading\" id=\"god-mode-when-over-privileged-ai-agents-get-compromised\">\u2018God mode\u2019: When over-privileged AI agents get compromised<\/h2>\n<p>Running AI agents with elevated privileges is common. In 2025, researchers needed two CVEs just to start making the case. <a href=\"https:\/\/www.cve.org\/CVERecord?id=CVE-2025-6514\">CVE-2025-6514<\/a>, a remote code execution flaw in mcp-remote scoring 9.6 on the CVSS scale, was the first demonstrated full RCE on a client system through an MCP connection \u2014 triggered simply by connecting to an untrusted server. <a href=\"https:\/\/www.cve.org\/CVERecord?id=CVE-2025-49596\">CVE-2025-49596<\/a>, affecting Anthropic\u2019s own MCP Inspector, scored 9.4 and achieved the same outcome through a chained browser exploit, giving attackers complete access to developer machines.<\/p>\n<p>Beyond the CVEs, researchers found MCP servers configured with elevated privilege commands \u2014 sudo, doas, runas \u2014 baked in from the start because admin rights made development easier and nobody tightened them afterward. This pattern was documented as part of the <a href=\"https:\/\/thehackernews.com\/2025\/12\/researchers-uncover-30-flaws-in-ai.html\">IDEsaster research<\/a> by security researcher Ari Marzouk, which catalogued over 30 vulnerabilities across Cursor, GitHub Copilot, Windsurf and others. AI IDEs had effectively removed the base software from their own threat model \u2014 existing features were treated as safe because they\u2019d been there for years, until an autonomous agent arrived that could invoke them without asking.<\/p>\n<p>If an agent in your network gets compromised, the question isn\u2019t whether it can exfiltrate data \u2014 it\u2019s whether it has permission to wipe a server or install ransomware. That\u2019s a configuration question, and most organizations don\u2019t know the answer.<\/p>\n<h2 class=\"wp-block-heading\" id=\"how-ctem-addresses-this-and-what-it-takes-to-get-there\">How CTEM addresses this \u2014 and what it takes to get there<\/h2>\n<p>CTEM is the right framework not because it was designed with MCP in mind, but because it was designed for attack surfaces that expand faster than security teams can track, the five phases each have direct application here:<\/p>\n<ul class=\"wp-block-list\">\n<li><strong>Scoping<\/strong> requires an honest admission: The AI toolchain isn\u2019t in scope yet, and it needs to be. That means explicitly defining developer workstations, AI coding environments and MCP configurations as assets worth protecting. It also requires early alignment with engineering leadership, because the remediation work lands on development teams and they need to understand the risk before they\u2019ll engage.<\/li>\n<li><strong>Discovery<\/strong> follows. MCP servers don\u2019t appear in traditional asset inventories. They live in developer workstations, AI tool configurations and npm packages installed in twenty seconds \u2014 without a change ticket. Finding them means actively enumerating configured MCP servers and detecting changes between scans. A server that updates silently is the postmark-mcp scenario replaying itself.<\/li>\n<li><strong>Prioritization<\/strong> means resisting the urge to flag everything and work through it linearly. The better frame is attacker impact: What can someone actually do from this exposure, and where does it connect? Risk signals like network-based transports, API keys in environment variables or instruction files, and elevated privilege commands in server definitions help separate serious problems from lower-urgency ones.<\/li>\n<li><strong>Validation<\/strong> tests whether flagged exposures are actually exploitable in context, using techniques like attack path mapping and breach and attack simulation to confirm what\u2019s real risk versus theoretical.<\/li>\n<li><strong>Mobilization<\/strong> is harder than the technical work. Developers experience MCP servers as infrastructure that makes their jobs faster, not as a security concern. Talking about security with developers goes better when they\u2019re concrete: Here\u2019s the tool, here\u2019s what it can access, here\u2019s the attack path. Specificity converts advice into a remediation ticket that actually gets closed.<\/li>\n<\/ul>\n<p>None of this requires a new program, just an extension of an existing one. Security caught up with cloud. It\u2019s catching up with AI now. The only question is whether your program gets there before an attacker does.<\/p>\n<p><strong>This article is published as part of the Foundry Expert Contributor Network.<\/strong><br \/><strong><a href=\"https:\/\/www.csoonline.com\/expert-contributor-network\/\">Want to join?<\/a><\/strong><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Model Context Protocol (MCP) is the connective tissue of modern AI tooling and has quietly become one of the most significant blind spots in modern security programs. Like shadow IT before it, shadow AI \u2014 especially as it relates to MCP risk \u2014 introduces a new class of exposures that security teams lack adequate tooling to see and address. Integrating MCP risks into a Continuous&#8230; <\/p>\n<p class=\"more\"><a class=\"more-link\" href=\"https:\/\/newestek.com\/?p=16195\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-16195","post","type-post","status-publish","format-standard","hentry","category-uncategorized","is-cat-link-borders-light is-cat-link-rounded"],"_links":{"self":[{"href":"https:\/\/newestek.com\/index.php?rest_route=\/wp\/v2\/posts\/16195","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/newestek.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/newestek.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/newestek.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/newestek.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=16195"}],"version-history":[{"count":0,"href":"https:\/\/newestek.com\/index.php?rest_route=\/wp\/v2\/posts\/16195\/revisions"}],"wp:attachment":[{"href":"https:\/\/newestek.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=16195"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/newestek.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=16195"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/newestek.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=16195"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}