安全测试词表服务器

一个为安全测试、渗透测试和红队操作提供结构化访问SecLists词表的MCP服务器,支持搜索、浏览、预览和合并词表。

  • by schwarztim
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 schwarztim/sec-seclists-mcp

使用说明

MCP服务器安全列表

A. 模型上下文协议(MCP) 用于工作的服务器 机密列表 -安全测试人员在安全评估期间使用的多种类型列表的配套集合。

概述

此MCP服务器为AI助手提供了对SecLists单词表的结构化访问,用于安全测试、渗透测试和红队操作。它支持搜索、浏览、预览和组合单词表,而无需将大量文件加载到内存中。

主要特点

  • 智能发现 -自动检测公共路径中的SecLists安装
  • 类别浏览 -按类别浏览单词表(发现、模糊、密码等)
  • 智能搜索 -按名称或关键字查找单词表
  • 预览模式 -查看单词表内容而不加载整个文件
  • 入场人数统计 -获取任何单词表的行数
  • 单词列表组合 -通过重复数据删除合并多个单词表
  • 自动安装 -从GitHub克隆安全列表(如果不存在)

安装

先决条件

  • Node.js 18+
  • npm或纱线
  • Git(用于SecLists安装)

安装MCP服务器

git clone https://github.com/schwarztim/sec-seclists-mcp.git
cd sec-seclists-mcp
npm install
npm run build

安装安全列表

MCP服务器会自动在公共位置搜索SecList:

  • /usr/share/seclists (Kali Linux默认设置)
  • /usr/share/wordlists/seclists
  • ~/SecLists
  • /opt/seclists

选项1:使用MCP工具

seclists_install

选项2:手动安装

git clone --depth 1 https://github.com/danielmiessler/SecLists.git ~/SecLists

选项3:包管理器(Kali/DDebian)

sudo apt install seclists

使用Claude Desktop进行配置

添加到您的Claude Desktop配置(~/.claude/claude_desktop_config.json):

{
  "mcpServers": {
    "seclists": {
      "command": "node",
      "args": ["/path/to/sec-seclists-mcp/dist/index.js"],
      "env": {
        "SECLISTS_PATH": "/usr/share/seclists"
      }
    }
  }
}

可用工具

seclists_status

检查SecLists安装状态和统计信息。

seclists_status

退货: 安装路径、单词表计数、总大小和类别计数。


seclists_install

安装SecLists或配置自定义路径。

seclists_install path="/custom/path"
参数 类型 说明
path string 自定义安装路径(默认: ~/SecLists)

seclists_categories

列出所有带说明的SecList类别。

seclists_categories

退货: 所有带有描述、存在状态和单词表计数的类别。


seclists_list

列出可用的单词表,可选择按类别或模式过滤。

seclists_list category="Discovery/Web-Content" pattern="raft-*"
参数 类型 说明
category string 要列出的类别(例如。, Discovery/Web-Content)
pattern string 要过滤的Glob模式(例如。, *.txt, raft-*)

seclists_search

按名称或内容关键字搜索单词表。

seclists_search query="sqli" category="Fuzzing"
参数 类型 必填 说明
query string 是 搜索查询
category string 否 将搜索限制在特定类别

seclists_get

获取特定单词表的完整路径。

seclists_get name="rockyou.txt"
seclists_get name="Discovery/Web-Content/common.txt"
参数 类型 必填 说明
name string 是 单词列表名称或相对路径

退货: 完整路径、相对路径、文件大小和条目计数。


seclists_preview

预览单词表内容,而不加载整个文件。

seclists_preview name="Discovery/Web-Content/common.txt" lines=50 offset=100
参数 类型 默认值 说明
name string - 单词列表名称或路径(必填)
lines number 20 要预览的行数(最大值:100)
offset number 0 起始行偏移量

seclists_count

统计单词表中的条目。

seclists_count name="Passwords/Leaked-Databases/rockyou.txt"
参数 类型 必填 说明
name string 是 单词列表名称或路径

seclists_combine

使用可选的重复数据删除功能将多个单词表合并为一个。

seclists_combine wordlists=["list1.txt", "list2.txt"] dedupe=true output="/tmp/combined.txt"
参数 类型 默认值 说明
wordlists string[] - 单词表路径数组(必填)
dedupe boolean true 删除重复条目
output string - 输出文件路径(如果未指定,则返回内容)

seclists_popular

列出流行/推荐的单词表及其描述。

seclists_popular category="Discovery"
参数 类型 说明
category string 按类别前缀筛选

机密列表类别

类别 描述
Discovery/DNS DNS枚举单词表(子域、区域传输)
Discovery/Web-Content 常见目录、文件和备份工件
Discovery/Infrastructure 网络和基础设施发现
Fuzzing/SQLi SQL注入有效负载(通用和特定于数据库)
Fuzzing/XSS 跨站点脚本向量和多语言
Fuzzing/LFI 本地文件包含有效载荷
Passwords/Common-Credentials 常用的用户名/密码组合
Passwords/Leaked-Databases 已知数据泄露的密码
Passwords/Default-Credentials 各种系统的默认凭据
Usernames 枚举的用户名单词表
Payloads 攻击载荷和炮弹
Pattern-Matching 敏感数据检测模式

热门单词列表

Web内容发现

单词列表 条目 描述
Discovery/Web-Content/raft-large-directories.txt ~62k 综合目录名
Discovery/Web-Content/raft-large-files.txt ~37k 综合文件名
Discovery/Web-Content/common.txt ~4.6k 常见web路径
Discovery/Web-Content/directory-list-2.3-medium.txt ~220k DirBuster中等列表

DNS发现

单词列表 条目 描述
Discovery/DNS/subdomains-top1million-5000.txt 5k 前5000个子域名
Discovery/DNS/subdomains-top1million-20000.txt 20k 前20000个子域名
Discovery/DNS/subdomains-top1million-110000.txt 110k 排名前110000的子域

密码

单词列表 条目 描述
Passwords/Common-Credentials/10-million-password-list-top-1000.txt 1k 前1000个密码
Passwords/Common-Credentials/10-million-password-list-top-10000.txt 10k 前10000个密码
Passwords/Leaked-Databases/rockyou.txt ~14M RockYou破解密码

模糊测试

单词列表 描述
Fuzzing/SQLi/Generic-SQLi.txt 通用SQL注入有效负载
Fuzzing/XSS/XSS-Bypass-Strings-BruteLogic.txt XSS过滤器旁路串
Fuzzing/LFI/LFI-Jhaddix.txt 来自Jhaddix的LFI有效载荷

环境变量

变量 描述 默认值
SECLISTS_PATH SecLists安装的自定义路径 自动检测到

示例工作流

Web应用程序测试

# Find relevant wordlists for web fuzzing
seclists_search query="web" category="Discovery"

# Preview a directory wordlist
seclists_preview name="Discovery/Web-Content/raft-large-directories.txt" lines=20

# Get the full path for use with other tools
seclists_get name="Discovery/Web-Content/common.txt"

密码审核

# List popular password wordlists
seclists_popular category="Passwords"

# Count entries in rockyou
seclists_count name="rockyou.txt"

# Combine multiple password lists
seclists_combine wordlists=["Passwords/Common-Credentials/10-million-password-list-top-1000.txt", "Passwords/Common-Credentials/best1050.txt"] dedupe=true

SQL注入测试

# Search for SQLi payloads
seclists_search query="sqli"

# Preview injection strings
seclists_preview name="Fuzzing/SQLi/Generic-SQLi.txt" lines=50

发展

# Install dependencies
npm install

# Build TypeScript
npm run build

# Run in development mode
npm run dev

# Run the server
npm start

安全考虑

此工具提供对安全测试单词表的访问。负责任地使用:

  • 仅用于您拥有或有明确授权进行测试的系统
  • 遵循负责任的披露做法
  • 遵守所有适用的法律法规
  • 一些单词表包含敏感内容(泄露的密码、利用有效载荷)

贡献

欢迎投稿!拜托:

  1. 克隆该仓库
  2. 创建要素分支
  3. 进行更改
  4. 提交拉取请求

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

学分

相关项目