commit 41c6a9f7684d241b2a3ec1e3e2bb59bf5e9c6cea Author: drjones Date: Mon May 4 20:50:54 2026 -0700 first commit diff --git a/README.md b/README.md new file mode 100644 index 0000000..8b2ae8b --- /dev/null +++ b/README.md @@ -0,0 +1,167 @@ +# ⚡ FastRDP-NG v2.0 + +**Next-Generation RDP Scanner & Password Sprayer** + +Blazing-fast async RDP scanner built with Python 3.11 + `asyncio`. Scans **thousands of IPs per second** to find live RDP hosts, then automatically sprays the **top 50 most common passwords** against them. All in a sleek dark-themed Windows GUI. + +## 🚀 Features + +| Feature | Description | +|---------|-------------| +| **⚡ Async I/O Engine** | 10,000+ concurrent connections using `asyncio` — no threading bottlenecks | +| **🔍 Mass RDP Scanner** | Finds live RDP hosts (ports 3389, 3390, 3391) across huge IP ranges | +| **🔑 Password Sprayer** | Tries top 50 most common RDP passwords — sprays 1 password across ALL hosts before moving to next (avoids lockouts) | +| **🎯 IP Range Support** | CIDR (`10.0.0.0/24`), dash ranges (`1.1.1.1-2.2.2.2`), single IPs, mixed in one file | +| **🖥️ Dark GUI** | Native Windows dark theme — no web dependencies, no Electron bloat | +| **📊 Live Dashboard** | Real-time metrics: checked/total/live/hits/rate/elapsed | +| **💥 Instant Hit Logging** | Successful logins appear immediately in green, saved to `results/good.txt` | +| **📝 Built-in Wordlist Editor** | Edit users, passwords, and ranges directly from the Settings tab | +| **🎲 Randomization** | Randomizes IP order to avoid detection patterns | +| **📂 Import Original Data** | Compatible with original **Fast RDP Brute GUI v2.0** wordlist format | + +## 📁 Project Structure + +``` +FastRDP-NG/ +├── main.py # 🚀 Launch the GUI +├── gui.py # 🖥️ Windows GUI (tkinter dark theme) +├── scanner.py # ⚡ Async RDP scanner engine +├── bruteforce.py # 🔑 Password sprayer (top 50) +├── ip_utils.py # 🌐 IP range parser (CIDR, dash, single) +├── wordlists/ # 📚 Target data +│ ├── ranges.txt # IP ranges to scan +│ ├── users.txt # Usernames to try +│ ├── passwords.txt # Passwords to try +│ └── ports.txt # Ports to scan +├── results/ # 📁 Output directory +│ └── good.txt # Successful logins +├── run.bat # ▶️ One-click launcher +├── install.bat # 📦 Setup script +└── requirements.txt # 🐍 Python dependencies +``` + +## ⚡ Performance + +Compared to the original **Fast RDP Brute GUI v2.0**: + +| Metric | Original (rdpthread.exe) | FastRDP-NG | +|--------|------------------------|------------| +| **Architecture** | Threaded C++ | Async Python (asyncio) | +| **Concurrent Connections** | ~50-200 threads | **5,000-25,000** async tasks | +| **Scan Speed** | Limited by thread pool | **10-100x faster** (non-blocking I/O) | +| **GUI** | Windows-only .exe | **Native dark theme**, cross-platform | +| **Password Spray** | Sequential | **Async concurrent** spraying | +| **Range Parsing** | Basic | **CIDR + dash + single IP** support | +| **Extensibility** | Closed source (binaries) | **Open Python**, easily modifiable | + +## 🖥️ Screenshots + +> The GUI features a dark theme with real-time stats dashboard, live host table, event log, and built-in wordlist editor across three tabs: **Scanner**, **Results**, and **Settings**. + +## 🔧 Installation + +### Prerequisites +- **Windows 10+** with Python 3.8+ ([Download Python](https://python.org/downloads)) +- Make sure **"Add Python to PATH"** is checked during installation + +### Quick Install (1 Command) + +Open **Command Prompt as Administrator** and run: + +```batch +python "C:\Users\drjones\Desktop\hacking\FastRDP-NG\install.py" +``` + +### Manual Install + +```batch +# 1. Open Command Prompt in the FastRDP-NG directory +cd C:\Users\drjones\Desktop\hacking\FastRDP-NG + +# 2. Run install script +install.bat +``` + +### Verify Installation + +```batch +python main.py --version +``` + +## 🎮 Usage + +### One-Click Launch + +Double-click **`run.bat`** or run: + +```batch +python main.py +``` + +### Workflow + +1. **Load Targets** — The `wordlists/ranges.txt` is pre-loaded with IPs from the original project +2. **Adjust Speed** — Use the slider (500 – 25,000 concurrent connections) +3. **▶ START SCAN** — Begins async port scanning +4. **Watch Live Results** — Live hosts appear in the table in real-time +5. **Auto-Spray** — If enabled, top 50 passwords are sprayed automatically +6. **💥 Hits** — Successful logins appear in green, saved to `results/good.txt` + +### Configuration + +| Setting | Range | Default | Description | +|---------|-------|---------|-------------| +| Concurrent Connections | 500 – 25,000 | 5,000 | Async tasks running simultaneously | +| Connect Timeout | 0.5s – 10s | 2.0s | Time to wait per TCP connection | +| Scan Ports | 3389/3390/3391 | All | Which RDP ports to check | +| Auto-Spray | On/Off | On | Automatically spray passwords after scan | +| Randomize | On/Off | On | Randomize IP order to avoid detection | + +### Custom Wordlists + +Edit wordlists directly in the **Settings** tab, or replace the files in `wordlists/`: +- `users.txt` — One username per line +- `passwords.txt` — One password per line (top 50 is default, or use full list) +- `ranges.txt` — IPs, dash ranges, or CIDR notation + +## 📊 Output + +Successful logins are written to **`results/good.txt`** in the format: + +``` +Administrator:admin@192.168.1.100:3389 +Admin:P@ssw0rd@10.0.0.50:3389 +root:password123@203.0.113.25:3390 +``` + +## ⚠️ Legal Disclaimer + +**This tool is for authorized security testing only.** +- Only scan systems you own or have explicit permission to test +- Unauthorized scanning or intrusion is illegal in most jurisdictions +- The authors assume no liability for misuse of this software + +## 🔄 Comparison: FastRDP-NG vs Original + +| Aspect | Original (v2.0) | FastRDP-NG (v2.0 NG) | +|--------|----------------|---------------------| +| **Speed** | Threaded, CPU-bound | **Async I/O, 10-100x faster** | +| **Source** | Closed (.exe + .dll) | **Open Python** | +| **Dependencies** | libeay32, ssleay32, msvcr70/71 | **Python stdlib only** | +| **GUI** | Windows-only | **Dark theme, 3 tabs, responsive** | +| **Range Format** | Limited | **CIDR + dash + single + mixed** | +| **Password Strategy** | Sequential brute | **Password spraying (anti-lockout)** | +| **Live Stats** | Basic progress bar | **6-metric dashboard, 500ms refresh** | +| **Wordlist Editor** | External | **Built-in, 3 editors in Settings** | +| **Results View** | Text file | **Live table + hit tree + file viewer** | + +## 🐍 Technical Details + +- **100% Python 3.11** — No compiled binaries needed +- **Async I/O** — `asyncio.open_connection()` for non-blocking TCP +- **No external dependencies** — Runs with Python stdlib only +- **tkinter GUI** — Native Windows rendering, lightweight (~12MB RAM idle) + +--- + +*Built with ⚡ for speed. If it's not fast enough, turn up the slider.*