## https://sploitus.com/exploit?id=9A4DFB47-4224-5FDE-BD0C-630A135922F2
# AD Exploit Framework
🔴 **CHỈ SỬ DỤNG CHO MỤC ĐÍCH HỌC TẬP VÀ KIỂM THỬ ĐƯỢC ỦY QUYỀN**
Một framework với giao diện web hiện đại để exploit các CVE trên Active Directory, giúp việc kiểm thử bảo mật dễ dàng hơn so với việc sử dụng trực tiếp msfconsole.
## 📋 Tính năng
- ✅ Giao diện web hiện đại, dễ sử dụng
- ✅ Real-time output từ các exploit
- ✅ Lưu trữ session và kết quả
- ✅ Tích hợp WebSocket cho communication real-time
- ✅ Dashboard quản lý các exploit
- ✅ Hỗ trợ nhiều CVE phổ biến trên Active Directory
## 🎯 Các CVE được hỗ trợ
1. **Zerologon (CVE-2020-1472)** - Critical
- Cho phép attacker giả mạo bất kỳ máy tính nào trong domain
2. **PrintNightmare (CVE-2021-1675 / CVE-2021-34527)** - Critical
- Remote code execution thông qua Print Spooler service
3. **PetitPotam (CVE-2021-36942)** - High
- Buộc Windows machines authenticate tới remote server
4. **NoPAC (CVE-2021-42278 / CVE-2021-42287)** - Critical
- sAMAccountName spoofing để giả mạo domain controller
5. **MS14-068 (CVE-2014-6324)** - Critical
- Kerberos privilege escalation từ domain user lên domain admin
## 🚀 Cài đặt
### Yêu cầu
- Python 3.8+
- Node.js 16+
- Metasploit Framework (tùy chọn)
### Backend Setup
```bash
# Clone hoặc vào thư mục project
cd "E:\Project 3"
# Tạo virtual environment
python -m venv venv
# Kích hoạt virtual environment
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate
# Cài đặt dependencies
pip install -r requirements.txt
# Tạo file .env
copy .env.example .env
# Chỉnh sửa .env với cấu hình của bạn
```
### Frontend Setup
```bash
# Di chuyển vào thư mục frontend
cd frontend
# Cài đặt dependencies
npm install
# Build frontend
npm run build
```
## 🎮 Sử dụng
### Khởi động Backend
```bash
# Từ thư mục root của project
python app.py
```
Server sẽ chạy tại: `http://localhost:5000`
### Development Mode (Frontend)
Nếu muốn phát triển frontend với hot reload:
```bash
cd frontend
npm run dev
```
Frontend dev server sẽ chạy tại: `http://localhost:5173`
## 📖 Hướng dẫn sử dụng
### 1. Truy cập Dashboard
- Mở browser và truy cập `http://localhost:5000`
- Bạn sẽ thấy danh sách các exploit có sẵn
### 2. Chọn Exploit
- Click vào exploit bạn muốn sử dụng
- Đọc kỹ mô tả và các thông tin về CVE
### 3. Cấu hình Target
- Nhập địa chỉ IP của target
- Điền các thông tin cần thiết (username, password, domain, v.v.)
- Tất cả các trường có dấu `*` là bắt buộc
### 4. Chạy Exploit
- Click nút "Run Exploit"
- Bạn sẽ được chuyển đến trang Session View
- Theo dõi output real-time
### 5. Xem Kết quả
- Kết quả sẽ hiển thị trong phần "Results"
- Có thể download output để phân tích sau
### 6. Quản lý Sessions
- Truy cập tab "Sessions" để xem tất cả các session
- Click vào session để xem chi tiết
## 🏗️ Cấu trúc Project
```
Project 3/
├── app.py # Flask application chính
├── requirements.txt # Python dependencies
├── .env # Environment variables
├── database/ # Database layer
│ ├── db.py # Database connection
│ └── models.py # SQLAlchemy models
├── exploits/ # Exploit modules
│ ├── base_exploit.py # Base class cho exploits
│ ├── exploit_manager.py # Quản lý exploit execution
│ └── modules/ # Các CVE exploit modules
│ ├── zerologon.py
│ ├── printnightmare.py
│ ├── petitpotam.py
│ ├── nopac.py
│ └── ms14_068.py
└── frontend/ # React frontend
├── src/
│ ├── components/ # React components
│ ├── pages/ # Page components
│ ├── services/ # API & Socket services
│ └── App.jsx # Main App component
└── package.json
```
## 🔧 API Endpoints
### GET /api/exploits
Lấy danh sách tất cả exploits có sẵn
### GET /api/exploits/:id
Lấy chi tiết của một exploit
### POST /api/exploit/run
Chạy một exploit
```json
{
"exploit_id": "zerologon",
"target": "192.168.1.100",
"options": {
"dc_name": "DC01",
"dc_ip": "192.168.1.100"
}
}
```
### GET /api/sessions
Lấy danh sách tất cả sessions
### GET /api/sessions/:id
Lấy chi tiết của một session
## 🔌 WebSocket Events
### Client → Server
- `join_session`: Join một session room để nhận updates
### Server → Client
- `output`: Output real-time từ exploit
- `status_update`: Cập nhật status của session
- `result`: Kết quả từ exploit
## ⚠️ Lưu ý quan trọng
1. **Chỉ sử dụng trong môi trường lab được kiểm soát**
2. **Không bao giờ chạy trên hệ thống production**
3. **Phải có sự ủy quyền bằng văn bản trước khi kiểm thử**
4. **Một số exploit có thể gây hại cho hệ thống (ví dụ: Zerologon)**
5. **Luôn backup và có kế hoạch khôi phục trước khi test**
## 🛡️ Khuyến nghị bảo mật
- Không expose framework này ra internet
- Chỉ chạy trong network được cách ly
- Sử dụng strong authentication nếu deploy trong môi trường shared
- Log tất cả các hoạt động để audit
- Thường xuyên cập nhật exploit modules
## 📝 Disclaimer
Framework này được phát triển cho mục đích **GIÁO DỤC VÀ NGHIÊN CỨU BẢO MẬT** ONLY.
Tác giả không chịu trách nhiệm về bất kỳ thiệt hại nào gây ra bởi việc sử dụng sai mục đích framework này. Người dùng phải tuân thủ mọi luật lệ và quy định về an ninh mạng tại địa phương.
Việc truy cập trái phép vào hệ thống máy tính là **BẤT HỢP PHÁP** và có thể bị xử lý hình sự.
## 🤝 Đóng góp
Nếu muốn thêm exploit mới:
1. Tạo file mới trong `exploits/modules/`
2. Kế thừa từ `BaseExploit` class
3. Implement method `run()`
4. Đăng ký module trong `exploits/modules/__init__.py`
## 📚 Tài liệu tham khảo
- [Zerologon Explained](https://www.secura.com/blog/zero-logon)
- [PrintNightmare Analysis](https://www.truesec.com/hub/blog/fix-for-printnightmare-cve-2021-1675-cve-2021-34527)
- [PetitPotam Documentation](https://github.com/topotam/PetitPotam)
- [NoPAC Exploit](https://www.secureworks.com/research/nopac)
- [MS14-068 Details](https://adsecurity.org/?p=525)
## 📧 Liên hệ
Project được tạo cho mục đích học tập tại trường. Nếu có câu hỏi hoặc góp ý, vui lòng liên hệ qua issues.
---
**Happy Ethical Hacking! 🔒**