返回博客人工智能安全

MCP 服务器安全 2026:8,000 台公网暴露,492 台零认证

8,000+ 台模型上下文协议服务器公开暴露在互联网上,492 台完全没有认证机制,36.7% 存在 SSRF 漏洞。如何在 MCP 工具中保护个人信息。

March 16, 20267 分钟阅读
MCP serverModel Context ProtocolAI securityPII protectionCursorClaude Desktopdeveloper security

MCP 生态系统增长迅猛,安全建设严重滞后

模型上下文协议(MCP)于 2024 年底发布,不到 18 个月便成为连接 AI 工具与外部系统的标准协议。截至 2026 年 3 月,该生态系统已涵盖数据库连接器、文件服务器、GitHub 桥接、Slack 客户端、电子邮件工具以及数百种领域专用服务器。

增长曲线陡峭,安全态势却不容乐观。

截至 2026 年 3 月,8,000+ 台 MCP 服务器暴露在公网上。研究人员发现其中 492 台完全没有任何认证机制——没有 API 密钥,没有 OAuth,没有 IP 过滤。任何 HTTP 客户端都可以调用它们。36.7% 的受检服务器存在 SSRF(服务端请求伪造)漏洞,意味着控制工具输入的攻击者可以访问内部网络资源。

同期,仅 60 天内就提交了 30+ 份 CVE。这一速度既说明了该生态系统的新生程度,也反映出研究人员对其的高度关注。

为何该协议本身带来个人信息风险

MCP 赋予 AI 助手操作数据的能力,而这正是它成为个人信息风险来源的原因。

当开发者在 Cursor 或 Claude Desktop 中配置了数据库连接器,AI 会根据自然语言描述生成 SQL 查询,这些查询返回真实数据行——姓名、电子邮件、支付信息或其他个人信息。数据在以下链路中流转:

  1. 数据库服务器 → AI 助手的上下文窗口
  2. 上下文窗口 → 模型提供商的日志系统
  3. 会话历史 → 开发者本地机器
  4. 调试会话 → 开发者粘贴上下文时流向其他 AI 工具

这些步骤中没有一个是安全漏洞。这就是系统的正常运作方式。但个人信息因此落入多个并非为存储它而设计的位置,且往往在服务器与 AI 客户端之间没有任何加密保护。

CVE-2026-25253(CVSS 8.8)于 2026 年 2 月发布,揭示了一种攻击路径:恶意端点可以在其响应中注入隐藏指令,指示已连接的 AI 从其他活跃工具中拉取数据。使用存在问题的社区端点、同时配置了自己数据库连接器的开发者,可能导致整个数据库泄露。

492 台零认证服务器

492 台开放服务器是与 CVE-2026-25253 性质不同的问题。它们没有遭到入侵,只是配置错误。

大多数服务器原本设计为本地运行,但有人通过端口转发或无访问控制的云部署将其暴露在公网上。

这些服务器通常暴露的内容:

  • 可读取家目录的文件系统工具
  • 配置中包含真实凭证的数据库连接器
  • 绑定真实收件箱的电子邮件工具
  • 代码执行工具——任意代码,无认证,无限制

开发者几乎可以肯定并非有意将其暴露,但 Cursor 和 Claude Desktop 会连接配置中的任何 URL,内置机制无法判断一个主机究竟是本地的还是公网上的。

anonym.legal MCP 解决方案

解决工具管道中个人信息风险的根本方案,是在数据到达任何将其发送给 LLM 的调用之前先进行匿名化处理。这正是 anonym.legal MCP 服务器所提供的能力。

它提供 7 个工具:

工具用途
analyze_text检测个人信息实体并返回其位置和类型
anonymize_text剥离或假名化已检测到的个人信息
deanonymize_text使用您的加密密钥还原假名化处理
anonymize_batch一次调用处理多段文本
get_supported_entities列出指定语言下的全部 285+ 种实体类型
get_supported_languages列出全部 48 种支持语言
health_check验证连通性

当 AI 助手同时配置了 anonym.legal 服务器和数据库连接器时,开发者可以指示:「在显示任何客户数据之前,先对结果调用 anonymize_text。」AI 负责编排调用逻辑,个人信息永远不会以可识别形式出现在可见输出或会话历史中。

Cursor IDE 配置方法

将 anonym.legal 服务器添加至 Cursor:

// .cursor/mcp.json
{
  "mcpServers": {
    "anonym-legal": {
      "url": "https://anonym.legal/mcp",
      "transport": "sse",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

配置完成后,向 Cursor 提问:「在我将这张支持工单粘贴进追踪系统之前,分析其中的个人信息。」Cursor 调用 analyze_text,返回实体列表,由您决定是否在粘贴前进行匿名化处理。

Claude Desktop 配置方法

// claude_desktop_config.json
{
  "mcpServers": {
    "anonym-legal": {
      "command": "npx",
      "args": ["-y", "@anonym-legal/mcp-server"],
      "env": {
        "ANONYM_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

使用此配置,Claude Desktop 可以在将任何文本纳入发送给其他服务器的工具调用之前先进行匿名化处理。匿名化在您的会话中本地完成,个人信息永远不会以可识别形式到达 Anthropic 的服务器。

加固您的配置

除使用 anonym.legal 外,还请执行以下步骤。另请参阅我们的安全概览合规中心

审查您的工具列表。 检查配置中的每一条记录。对每个工具,问自己:您信任这个运营方吗?您清楚它可以访问哪些数据吗?

优先选择本地而非远程。 本地服务器通过 stdio 运行,不会产生任何网络暴露。仅在没有本地替代方案时才使用远程服务器。

检查认证机制。 每个远程服务器都应要求 API 密钥或 OAuth 令牌。若没有,请勿在真实用户数据场景中使用它。

将开发环境与生产环境分离。 为开发工作(测试数据,无个人信息)和任何涉及真实用户的流程保持独立的配置。

启用审计日志。 如果服务器支持日志记录,请开启该功能。了解每次调用都传递了哪些数据。

请参阅我们的 MCP 功能页面获取完整的实体类型和语言列表。

60 天内出现 30+ 份 CVE,表明该协议正处于研究人员的密切审视之下,新漏洞还会持续出现。但核心防御措施——在数据到达任何 LLM 调用之前进行匿名化——对任何未来出现的具体 CVE 都有效。

在 Cursor 中配置 anonym.legal 服务器 →


anonym.legal 使用您的加密密钥在服务端处理个人信息匿名化。假名化数据仅可通过该密钥还原。由通过 ISO 27001 认证的 anonym.legal 发布。

数据来源

  • Shodan MCP 服务器暴露数据,2026 年 3 月 — 8,000+ 台服务器,492 台零认证
  • CVE-2026-25253,CVSS 8.8,通过模型上下文协议实施的跨服务器注入攻击
  • SSRF 数据:2026 年 3 月对公网可访问端点的安全研究扫描
  • Anthropic MCP 规范 v1.2,安全注意事项章节

准备好保护您的数据了吗?

开始使用 285 种实体类型在 48 种语言中匿名化 PII。

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.