1. Conduid
  2. Developer Tools
  3. Breach To Fix Labs
MCP server · Developer Tools

Breach To Fix Labs

Hands-on MCP security lab: 10 real incidents reproduced with vulnerable/secure MCP servers, pytest regressions, and Claude/Cursor battle-tested exploit walkthroughs

Unclaimed last commit 10 months ago devtools
55Fair

Scored 5 months ago · breakdown

About Breach To Fix Labs

Breach To Fix Labs is an MCP server published by PawelKozy in the Developer Tools category: hands-on MCP security lab: 10 real incidents reproduced with vulnerable/secure MCP servers, pytest regressions, and Claude/Cursor battle-tested exploit walkthroughs.

The repository has 90 stars and 15 forks, with the last commit 10 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/PawelKozy/mcp-breach-to-fix-labs

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Breach To Fix Labs

Powered by Claude · Grounded in docs

I know everything about Breach To Fix Labs. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 2 days ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • !License declaredNo license file. Legally you have no right to use it in a product.
  • !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
  • !Dependencies pinnedNo lockfile. Installs can pull different code over time.
  • !No dynamic code executionSource scan found eval or shell execution. Review how tool inputs reach it before granting credentials.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

# MCP Breach-to-Fix Labs

Hands-on lab of ten Model Context Protocol (MCP) challenges reproduced from real CVEs and public incident reports. I've run every exploit end-to-end with Cursor/Claude, so the steps aren't theoretical—they're the exact tool calls the assistants followed. Every scenario ships in two modes:

  • Vulnerable - intentionally exploitable implementation you can reproduce end-to-end in Cursor/Claude Desktop.
  • Secure - hardened implementation with defense-in-depth controls that block the attack.

These labs were fully battle-tested with Claude/Cursor, ensuring the exact exploit/mitigation flow is reproducible.

Each challenge includes Docker services, FastMCP servers, fixtures, and screenshots that prove the exploit really runs—no theoretical write-ups.

Challenge Catalog

# Challenge Scenario Highlights
01 CRM Confused Deputy Shared CRM token + predictable IDs leak other tenants’ records. Secure version scopes credentials per tenant.
02 Filesystem Prefix Bypass (CVE-2025-53110) Naive startswith path check vs. canonical path enforcement.
03 Hidden Instructions in Tool Responses Malicious tool responses inject hidden instructions that redirect WhatsApp messages; secure build sanitizes responses.
04 Xata Read-Only Bypass Multi-statement SELECT; attacker appends DELETE to mutate data. Secure build uses sqlparse to enforce single statements.
05 News Prompt Exfiltration Malicious article tells the agent to dump config + email it back. Secure build sanitizes remote HTML and gates tools.
06 Log Poisoning Incident Response SOC “instructions” inside logs coerce the agent to rotate secrets to attacker-controlled values. Secure build strips directives & blocks sensitive tickets.
07 Classic SQL Injection (Stored Prompt) Ticketing app stores malicious prompts via SQLi; secure build parameterizes.
08 Git Command Injection (GHSA-3q26-f695-pp76) git init helper shells out with unsanitized repo names; secure uses execFile / allowlist.
09 GitHub Public Issue Injection Public issue text tricks MCP to leak private repo data; secure build sanitizes + scopes tokens.
10 Tool Description Poisoning Repello.ai-style "rug pull" where tool metadata mutates after approval to exfiltrate SSH keys; secure build freezes descriptions.

Each challenge stores proof captures under challenges/<nn>-<slug>/screenshots/ or README for quick reference.

Getting Started

New to MCP? See the Setup Guide for detailed instructions on connecting Cursor, Claude Desktop, or MCP Inspector to the challenge servers.

Prerequisites

  • Docker & Docker Compose
  • Python 3.10+ (for local execution)
  • Cursor or Claude Desktop (recommended for exploits)

Quick Start with Docker

Every challenge has vulnerable and secure Docker services:

# Example: Run the Git Command Injection vulnerable server
docker compose up git-command-injection-vulnerable

# Connect Cursor/Claude Desktop to http://localhost:8008/mcp/stream
# Follow the exploit walkthrough in 08-git-command-injection-ghsa-3q26-f695-pp76/README.md

# Compare with secure version
docker compose up git-command-injection-secure  # http://localhost:9008/mcp/stream

Local Python Execution

cd 08-git-command-injection-ghsa-3q26-f695-pp76
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt

# Run vulnerable server
python vulnerable/server.py

# Or secure server
python secure/server.py

Project Structure

01-Asana-multi-tenant-authorization-bypass/
  vulnerable/               # FastMCP server + Dockerfile
  secure/                   # Hardened implementation
  data/                     # Fixtures (projects.json)
  screenshots/              # Proof of exploit
  README.md                 # Detailed walkthrough

02-filesystem-prefix-bypass-cve-2025-53110/
  vulnerable/
  secure/
  files/                    # Test directories (safe_files, safe_files_sensitive)
  screenshots/
  README.md

... (8 more challenges)

docker-compose.yml          # All services configured

Philosophy

  • Real exploits: Every README includes the exact MCP JSON-RPC payloads and Cursor/Claude commands to trigger the vulnerability
  • Defense-in-depth: Secure builds demonstrate multiple security layers (input validation, path canonicalization, least privilege, etc.)
  • Reproducible: Docker containers ensure consistent exploitation across environments
  • Educational: Each challenge explains WHY the vulnerability exists and HOW the mitigations work

Contributing

Pull requests welcome! To add a new challenge:

  1. Create <nn>-<descriptive-name>/ directory
  2. Implement vulnerable/server.py and secure/server.py
  3. Add Dockerfiles for both modes
  4. Write comprehensive README.md with exploit walkthrough
  5. Add services to docker-compose.yml
  6. Capture screenshots of the exploit

⚠️ Warning: These servers are intentionally vulnerable. Never deploy them in production. Use only in isolated lab environments.

README fetched from the repository 2 days ago. The original is authoritative.

Questions

About Breach To Fix Labs

How do I install Breach To Fix Labs?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Breach To Fix Labs safe to use with an AI agent?

Its trust score is 55 out of 100 (fair). It passes 1 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Breach To Fix Labs still maintained?

The last commit was 10 months ago and 1 open issues. That's long enough that you should check whether the maintainer is responding to issues before depending on it.