Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2025-9074-Docker-Desktop-API-Escape-PoC — Proof-of-concept exploit for CVE-2025-9074 enabling Docker Desktop API escape via raw HTTP requests. Provides an emulated interactive shell inside a container using only curl, dd, and awk. | Kitploit
Tools/GitHubGitHub/medaz-sploit/cve-2025-9074-docker-desktop-api-escape-poc
Vulnerability AnalysisExploitationPenetration TestingCloud SecurityRed TeamingContainer Escape
GitHubmedaz-sploit/cve-2025-9074-docker-desktop-api-escape-poc

CVE-2025-9074-Docker-Desktop-API-Escape-PoC

Proof-of-concept exploit for CVE-2025-9074 enabling Docker Desktop API escape via raw HTTP requests. Provides an emulated interactive shell inside a container using only curl, dd, and awk.

View Repository
53 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

🐚 docker-shell

A lightweight, dependency-free bash script that gives you an emulated interactive shell inside a Docker container — using nothing but curl, dd, od, and awk. No Python, no jq, no editor required.

Built for environments where you only have raw shell access and need to exec commands inside a Docker container via the Docker Engine API.


🧠 How It Works

Instead of using the Docker CLI, this script talks directly to the Docker Engine REST API over HTTP (typically exposed at http://192.168.65.7:2375 in Docker Desktop / WSL2 environments).

It:

  1. Creates and starts an Alpine Linux container with your Windows C:\ drive mounted
  2. For each command you type, it creates an exec instance via the API
  3. Parses Docker's output using pure + — no Python needed
multiplexed binary stream
dd
od
  • Prints the result back to your terminal like a real shell
  • Docker Multiplexed Stream

    Docker wraps all exec output in a binary framing format:

    root@kitploit:~
    [1 byte: stream type] [3 bytes: padding] [4 bytes: payload size (big-endian)] [payload...]
    

    This script decodes that frame-by-frame using only standard Unix tools.


    ⚙️ Requirements

    • bash
    • curl
    • dd, od, awk, grep, cut — all standard Unix tools
    • Docker Engine API accessible at http://192.168.65.7:2375 (Docker Desktop on WSL2)

    No jq, no Python, no nano, no editor.


    🚀 Installation

    root@kitploit:~
    git clone https://github.com/yourusername/docker-shell.git
    cd docker-shell
    chmod +x docker_shell.sh
    bash docker_shell.sh
    

    💻 Usage

    root@kitploit:~
    ================================================
      Docker Emulated Shell  [target: alpine_escape]
      Commands: start | status | run <cmd> | exit
    ================================================
    
    docker> start
    docker> status
    docker> run ls /mnt
    docker> run ls /mnt/Users
    docker> run cat /etc/os-release
    docker> run id
    docker> exit
    

    Commands

    CommandDescription
    startCreates (if needed) and starts the alpine_escape container
    statusShows the container ID and current state
    run <cmd>Executes any shell command inside the container
    exit / quitExits the emulated shell

    🗂️ Mount Layout

    The container mounts your Windows C:\ drive (via WSL2) at /mnt:

    Windows PathInside Container
    C:\/mnt
    C:\Users/mnt/Users
    C:\Program Files/mnt/Program Files
    C:\Windows\System32/mnt/Windows/System32

    ⚠️ Notes

    • Each run is a separate exec instance — state does not persist between commands. Use run cd /some/dir && ls to chain commands in one call.
    • The script targets the container by name (alpine_escape), not by ID, so it won't accidentally exec into the wrong container.
    • Output is parsed directly from the binary file /tmp/docker_out.bin using dd frame-by-frame.

    🔧 Configuration

    Edit these variables at the top of the script to match your environment:

    root@kitploit:~
    DOCKER="http://192.168.65.7:2375"   # Docker Engine API address
    CONTAINER="alpine_escape"            # Container name
    

    📄 License

    AGPLv3

    Download Tool