
MAD-CAT (Meow Attack Data Corruption Automation Tool) هو أداة أمنية شاملة مصممة لمحاكاة هجمات إفساد البيانات ضد أنظمة قواعد بيانات متعددة. تدعم الأداة هجمات الأهداف الفردية وحملات الهجوم الجماعية القائمة على CSV، مع دعم سيناريوهات الهجوم باستخدام بيانات الاعتماد وبدونها.
MAD-CAT (أداة أتمتة إتلاف البيانات بهجوم المواء) هي أداة أمنية شاملة مصممة لمحاكاة هجمات إتلاف البيانات ضد أنظمة قواعد بيانات متعددة. تدعم الأداة الهجمات على هدف واحد والهجمات الجماعية المستندة إلى ملفات CSV، مع دعم سيناريوهات الهجوم ببيانات الاعتماد وبدونها.
تدعم الأداة حاليًا خدمات قواعد البيانات التالية:
# Clone the repository
git clone https://github.com/karlvbiron/MAD-CAT.git
# Navigate to the tool directory
cd MAD-CAT
# Set up the virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
| الوسيط | الوصف |
|---|---|
-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 | تفعيل الإخراج المفصّل |
python mad_cat.py -l
python mad_cat.py -t 192.168.1.11 -s mongodb -u root -pw example
python mad_cat.py -t 192.168.1.12 -s elasticsearch
python mad_cat.py -t 192.168.1.13 -s cassandra
python mad_cat.py -t 192.168.1.14 -s redis
python mad_cat.py -t 192.168.1.15 -s couchdb -u admin -pw password
python mad_cat.py -t 192.168.1.16 -s hadoop
مهاجمة أهداف متعددة باستخدام ملف CSV:
python mad_cat.py -c list.csv
يجب أن يحتوي ملف CSV على هدف واحد في كل سطر بالتنسيق التالي:
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
"") للهجمات بدون بيانات اعتمادMAD-CAT/
├── __init__.py
├── core/
│ ├── __init__.py
│ ├── base_attacker.py # Abstract base class for all attackers
│ └── attack_factory.py # Factory pattern for attacker creation
├── attackers/
│ ├── __init__.py # Attacker registration
│ ├── mongodb.py # MongoDB attacker implementation
│ ├── elasticsearch.py # Elasticsearch attacker implementation
│ ├── cassandra.py # Cassandra attacker implementation
│ ├── redis.py # Redis attacker implementation
│ ├── couchdb.py # CouchDB attacker implementation
│ └── hadoop.py # Hadoop HDFS attacker implementation
├── utils/
│ ├── __init__.py
│ └── logging.py # Logging configuration
├── dockerized-database-infrastructure/
│ ├── docker-compose.yml # Docker Compose configuration
│ └── 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 # Main entry point
├── fetch_data.py # Utility to fetch and verify database data
├── list.csv # Example CSV file for bulk attacks
├── requirements.txt # Python dependencies
└── README.md # This file
logs/تحاكي MAD-CAT هجوم إتلاف البيانات عبر:
Target → Connect → List Databases → For Each Database:
├─ List Collections
└─ For Each Collection:
├─ Fetch All Records
├─ Replace Values with {random}-MEOW
└─ Update Records
| الخدمة | المنفذ الافتراضي |
|---|---|
| MongoDB | 27017 |
| Elasticsearch | 9200 |
| Cassandra | 9042 |
| Redis | 6379 |
| CouchDB | 5984 |
| Hadoop HDFS | 9870 |
سكربت مساعد لجلب وعرض البيانات من جميع قواعد البيانات المدعومة:
# Fetch from all databases and verify consistency
python fetch_data.py all
# Fetch from specific database
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