Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
MAD-CAT — MAD-CAT(喵攻击数据损坏自动化工具)是一款综合性安全工具,旨在模拟针对多种数据库系统的数据损坏攻击。该工具支持单目标攻击和基于CSV的批量攻击活动,同时支持凭据攻击和非凭据攻击场景。 | Kitploit
工具/GitHubGitHub/karlvbiron/mad-cat
漏洞利用数据泄露渗透测试学习与教育红队数据库安全
GitHubkarlvbiron/mad-cat

MAD-CAT

MAD-CAT(喵攻击数据损坏自动化工具)是一款综合性安全工具,旨在模拟针对多种数据库系统的数据损坏攻击。该工具支持单目标攻击和基于CSV的批量攻击活动,同时支持凭据攻击和非凭据攻击场景。

查看仓库
37310个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

MAD-CAT
[喵攻击数据损坏自动化工具]

MAD-CAT Banner Python License

概述

MAD-CAT(喵攻击数据损坏自动化工具)是一款全面的安全工具,旨在模拟针对多种数据库系统的数据损坏攻击。该工具支持单目标攻击和基于CSV的批量攻击,同时支持凭据认证和非凭据认证的攻击场景。

支持的数据库服务

该工具目前支持以下数据库服务:

MongoDB Elasticsearch Cassandra
Redis CouchDB Hadoop
  • MongoDB(端口 27017)
  • Elasticsearch(端口 9200)
  • Cassandra(端口 9042)
  • Redis(端口 6379)
  • CouchDB(端口 5984)
  • Hadoop HDFS(端口 9870)

安装

root@kitploit:~
# 克隆仓库
git clone https://github.com/karlvbiron/MAD-CAT.git

# 进入工具目录
cd MAD-CAT

# 设置虚拟环境
python3 -m venv venv
source venv/bin/activate

# 安装依赖
pip install -r requirements.txt

命令行参数

使用示例

列出支持的服务

root@kitploit:~
python mad_cat.py -l

单目标攻击

MongoDB 模拟(凭据认证)

root@kitploit:~
python mad_cat.py -t 192.168.1.11 -s mongodb -u root -pw example

Elasticsearch 模拟(无凭据)

root@kitploit:~
python mad_cat.py -t 192.168.1.12 -s elasticsearch

Cassandra 模拟

root@kitploit:~
python mad_cat.py -t 192.168.1.13 -s cassandra

Redis 模拟

root@kitploit:~
python mad_cat.py -t 192.168.1.14 -s redis

CouchDB 模拟(凭据认证)

root@kitploit:~
python mad_cat.py -t 192.168.1.15 -s couchdb -u admin -pw password

Hadoop HDFS 模拟

root@kitploit:~
python mad_cat.py -t 192.168.1.16 -s hadoop

CSV 批量攻击模式

使用CSV文件攻击多个目标:

root@kitploit:~
python mad_cat.py -c list.csv

CSV 文件格式

CSV文件每行应包含一个目标,格式如下:

root@kitploit:~
192.168.1.11,mongodb,27017,"root","example"
192.168.1.12,elasticsearch,9200,"",""
192.168.1.13,cassandra,9042,"",""
192.168.1.14,redis,6379,"",""
192.168.1.15,couchdb,5984,"admin","password"
192.168.1.16,hadoop,9870,"",""

格式:ip,service,port,username,password

  • 对于无凭据攻击,将用户名/密码留空("")

项目结构

root@kitploit:~
MAD-CAT/
├── __init__.py
├── core/
│   ├── __init__.py
│   ├── base_attacker.py          # 所有攻击者的抽象基类
│   └── attack_factory.py         # 工厂模式创建攻击者
├── attackers/
│   ├── __init__.py               # 攻击者注册
│   ├── mongodb.py                # MongoDB 攻击者实现
│   ├── elasticsearch.py          # Elasticsearch 攻击者实现
│   ├── cassandra.py              # Cassandra 攻击者实现
│   ├── redis.py                  # Redis 攻击者实现
│   ├── couchdb.py                # CouchDB 攻击者实现
│   └── hadoop.py                 # Hadoop HDFS 攻击者实现
├── utils/
│   ├── __init__.py
│   └── logging.py                # 日志配置
├── dockerized-database-infrastructure/
│   ├── docker-compose.yml        # Docker Compose 配置
│   └── init-scripts/
│       ├── mongodb/
│       │   └── mongodb-init.js
│       ├── elasticsearch/
│       │   ├── es-custom-entrypoint.sh
│       │   └── es-bulk_data.json
│       ├── cassandra/
│       │   ├── cassandra-entrypoint.sh
│       │   └── cassandra-init.cql
│       ├── couchdb/
│       │   ├── couchdb-entrypoint.sh
│       │   └── couchdb-init.sh
│       ├── hadoop/
│       │   ├── hadoop-entrypoint.sh
│       │   └── hadoop-init.sh
│       └── redis/
│           ├── redis-entrypoint.sh
│           └── redis-init.sh
├── mad_cat.py                    # 主入口
├── fetch_data.py                 # 获取并验证数据库数据的工具
├── list.csv                      # 用于批量攻击的CSV示例文件
├── requirements.txt              # Python 依赖
└── README.md                     # 本文件

特性

  • ✅ 6种数据库服务:MongoDB、Elasticsearch、Cassandra、Redis、CouchDB、Hadoop HDFS
  • ✅ 凭据认证与无凭据攻击:支持两种认证模式
  • ✅ 单目标模式:攻击单个数据库实例
  • ✅ CSV批量攻击模式:从CSV文件攻击多个目标
  • ✅ 工厂模式架构:易于扩展新的数据库攻击者
  • ✅ 全面日志记录:带时间戳的日志保存到 logs/ 目录
  • ✅ 用户确认:执行攻击前需要明确确认
  • ✅ 攻击统计:详细的数据库、集合和受影响记录的报告
  • ✅ 默认端口支持:未指定时自动使用标准端口

工作原理

MAD-CAT 通过以下步骤模拟数据损坏攻击:

  1. 连接 到目标数据库,使用提供的凭据(或尝试匿名访问)
  2. 枚举 所有数据库和集合/表(排除系统数据库)
  3. 损坏 数据,将字符串/数值替换为随机字母数字字符串后接 "-MEOW"
  4. 报告 处理的数据库、受影响的集合和修改的记录统计信息

攻击流程

root@kitploit:~
目标 → 连接 → 列出数据库 → 对于每个数据库:
                                      ├─ 列出集合
                                      └─ 对于每个集合:
                                          ├─ 获取所有记录
                                          ├─ 将值替换为 {随机}-MEOW
                                          └─ 更新记录

默认端口

服务

附加工具

fetch_data.py

一个用于从所有支持的数据库获取并显示数据的实用脚本:

root@kitploit:~
# 从所有数据库获取并验证一致性
python fetch_data.py all

# 从特定数据库获取
python fetch_data.py mongo
python fetch_data.py elasticsearch
python fetch_data.py cassandra
python fetch_data.py redis
python fetch_data.py couchdb
python fetch_data.py hadoop

免责声明

本工具仅供教育目的使用。它旨在在受控环境中演示一种网络攻击类型,以帮助提高安全意识和防御能力。在未经适当授权的情况下使用本工具攻击系统是非法且不道德的。作者和贡献者不对本软件的任何滥用负责。

许可证

本项目采用MIT许可证授权 - 详见LICENSE文件。

作者

由 Karl Biron 创建

下载工具
参数描述
-l, --list列出支持的数据库服务
-c, --csv包含目标列表的CSV文件(格式:ip,service,port,username,password)
-t, --target目标主机IP地址(单目标模式)
-s, --service要攻击的数据库服务(例如 mongodb, elasticsearch, cassandra, redis, couchdb, hadoop)
-p, --port端口号(如果不是默认端口)
-u, --username用于认证的用户名
-pw, --password用于认证的密码
-v, --verbose启用详细输出
默认端口
MongoDB27017
Elasticsearch9200
Cassandra9042
Redis6379
CouchDB5984
Hadoop HDFS9870