Skip to content

Commit d55fa11

Browse files
committed
feat: Complete API integration with all features and README updates
- Added all missing API endpoints: FFuf, Backup, Misconfig, React2Shell, JWT, DNS (dangling-ip) - Extended ScanRequest struct with all new feature options - Updated API version to 3.3.0 - Updated README with comprehensive API endpoint documentation - All CLI features now available via REST API
1 parent 16cb112 commit d55fa11

5 files changed

Lines changed: 375 additions & 68 deletions

File tree

README.md

Lines changed: 66 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,20 @@ AutoAR is a comprehensive, modular security automation toolkit designed for bug
77
### 🔍 **Reconnaissance & Discovery**
88
- **Subdomain Enumeration**: Multiple engines (Subfinder, Amass, Assetfinder, etc.)
99
- **Live Host Detection**: Fast HTTP/HTTPS validation with custom timeouts
10-
- **CNAME Analysis**: CNAME record extraction and analysis
11-
- **URL Collection**: Comprehensive URL gathering from multiple sources
10+
- **CNAME Analysis**: CNAME record extraction and analysis with concurrent processing
11+
- **URL Collection**: Comprehensive URL gathering from multiple sources including:
12+
- **VirusTotal API**: Historical URLs and detected/undetected URLs
13+
- **Wayback Machine**: Historical URL snapshots via CDX API
14+
- **URLScan.io**: URLs from scan results (optional API key)
15+
- **AlienVault OTX**: URLs from threat intelligence feeds
16+
- **Common Crawl**: URLs from web crawl archives
1217
- **Technology Detection**: Web technology stack identification
13-
- **DNS Takeover Detection**: Comprehensive DNS takeover vulnerability scanning
18+
- **DNS Takeover Detection**: Comprehensive DNS takeover vulnerability scanning with dangling IP detection
19+
- **Lite Scan Workflow**: Comprehensive automated scanning workflow with:
20+
- Real-time progress tracking via Discord webhooks
21+
- Optimized concurrency across all phases (200-500 threads)
22+
- Automatic live host reuse across phases
23+
- Real-time file sending after each phase completion
1424

1525
### 🛡️ **Vulnerability Scanning**
1626
- **Nuclei Integration**: 1000+ vulnerability templates with custom rate limiting
@@ -21,6 +31,8 @@ AutoAR is a comprehensive, modular security automation toolkit designed for bug
2131
- **SQL Injection Testing**: SQLMap integration for automated SQLi testing
2232
- **XSS Detection**: Dalfox integration for cross-site scripting detection
2333
- **Backup File Discovery**: Automated backup file and sensitive file discovery
34+
- **Cloud Misconfiguration Scanning**: Automated cloud service misconfiguration detection with high concurrency
35+
- **FFuf Fuzzing**: Web path fuzzing with 403 bypass techniques, real-time filtering, and custom wordlists
2436

2537
### 🎯 **Specialized Scanners**
2638
- **APK/IPA Analysis**: Embedded apkX engine for Android/iOS static analysis with secret extraction, certificate pinning detection, and MITM patching (pure Go implementation, no external binaries required)
@@ -295,10 +307,6 @@ autoar both # Start both bot and API
295307
autoar help
296308
```
297309

298-
### Operational Modes
299-
300-
AutoAR supports three operational modes to fit your workflow:
301-
302310
### 🎯 Operational Modes
303311

304312
#### 1. Discord Bot Mode (Default)
@@ -348,7 +356,7 @@ Once the bot is running, use these slash commands in Discord:
348356
- `/subdomains domain:example.com [threads:100]` - Enumerate subdomains
349357
- `/livehosts domain:example.com [threads:100]` - Find live hosts
350358
- `/cnames domain:example.com` - Extract CNAME records
351-
- `/urls domain:example.com [threads:100]` - Collect URLs
359+
- `/urls domain:example.com [threads:100]` - Collect URLs (includes VirusTotal, Wayback, URLScan, OTX, Common Crawl)
352360
- `/tech domain:example.com [threads:100]` - Detect technologies
353361

354362
#### Vulnerability Scanning
@@ -370,7 +378,7 @@ Once the bot is running, use these slash commands in Discord:
370378
- `/github org:company` - GitHub organization reconnaissance
371379
- `/github-wordlist org:company` - Generate wordlists from GitHub org
372380
- `/s3 bucket:example-bucket` - S3 bucket scanning (works with or without AWS credentials - automatically tests for public access if credentials are missing)
373-
- `/dns domain:example.com` - DNS takeover detection
381+
- `/dns domain:example.com type:takeover|dangling-ip` - DNS takeover detection and dangling IP detection
374382
- `/ports domain:example.com [threads:100]` - Port scanning
375383

376384
#### KeyHack API Key Validation
@@ -385,7 +393,7 @@ Once the bot is running, use these slash commands in Discord:
385393
- `/github-wordlist org:microsoft` - Generate wordlists from organization files
386394

387395
#### Workflows
388-
- `/lite domain:example.com` - Light reconnaissance
396+
- `/lite_scan domain:example.com [skip_js:false] [verbose:false] [phase_timeout:3600]` - Comprehensive automated scan workflow with real-time progress and file sending
389397
- `/fastlook domain:example.com` - Quick scan
390398
- `/domain domain:example.com` - Full domain analysis
391399

@@ -671,7 +679,8 @@ Configure these for enhanced functionality:
671679

672680
- **SecurityTrails**: `SECURITYTRAILS_API_KEY`
673681
- **Shodan**: `SHODAN_API_KEY`
674-
- **VirusTotal**: `VIRUSTOTAL_API_KEY`
682+
- **VirusTotal**: `VIRUSTOTAL_API_KEY` (for URL collection)
683+
- **URLScan.io**: `URLSCAN_API_KEY` (optional, for enhanced URL collection)
675684
- **GitHub**: `GITHUB_TOKEN`
676685
- **AWS**: `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`
677686
- **And 20+ more** (see docker-compose.yml)
@@ -696,7 +705,8 @@ AutoAR/
696705
│ │ ├── db/ # Database operations (PostgreSQL/SQLite)
697706
│ │ ├── subdomains/ # Subdomain enumeration
698707
│ │ ├── livehosts/ # Live host detection
699-
│ │ ├── urls/ # URL collection
708+
│ │ ├── urls/ # URL collection (with external API integration)
709+
│ │ ├── ffuf/ # FFuf fuzzing module
700710
│ │ ├── cnames/ # CNAME analysis
701711
│ │ ├── nuclei/ # Nuclei integration (CLI-wrapper)
702712
│ │ ├── dalfox/ # XSS detection (CLI-wrapper)
@@ -789,7 +799,7 @@ done < domains.txt
789799

790800
- **API Keys**: Store sensitive API keys in environment variables
791801
- **Rate Limiting**: Respect API rate limits to avoid service disruption
792-
- **Rate Limiting**: Configure rate limits for external APIs to avoid blocking
802+
- **Rate Limiting**: Configure rate limits for external APIs (VirusTotal, URLScan, etc.) to avoid blocking
793803
- **Legal Compliance**: Ensure you have permission to scan target domains
794804
- **Data Privacy**: Be mindful of sensitive data in scan results
795805

@@ -850,13 +860,43 @@ curl -X POST "http://localhost:8000/scan/ports" \
850860
# Nuclei Vulnerability Scanner
851861
curl -X POST "http://localhost:8000/scan/nuclei" \
852862
-H "Content-Type: application/json" \
853-
-d '{"domain": "example.com"}'
863+
-d '{"domain": "example.com", "mode": "full"}'
854864

855865
# DNS Takeover Check
856866
curl -X POST "http://localhost:8000/scan/dns-takeover" \
857867
-H "Content-Type: application/json" \
858868
-d '{"domain": "example.com"}'
859869

870+
# DNS Dangling IP Detection
871+
curl -X POST "http://localhost:8000/scan/dns" \
872+
-H "Content-Type: application/json" \
873+
-d '{"domain": "example.com", "dns_type": "dangling-ip"}'
874+
875+
# React2Shell RCE Scan (CVE-2025-55182)
876+
curl -X POST "http://localhost:8000/scan/react2shell" \
877+
-H "Content-Type: application/json" \
878+
-d '{"domain": "example.com", "dos_test": true, "enable_source_exposure": true}'
879+
880+
# Cloud Misconfiguration Scan
881+
curl -X POST "http://localhost:8000/scan/misconfig" \
882+
-H "Content-Type: application/json" \
883+
-d '{"domain": "example.com"}'
884+
885+
# FFuf Web Path Fuzzing
886+
curl -X POST "http://localhost:8000/scan/ffuf" \
887+
-H "Content-Type: application/json" \
888+
-d '{"target": "https://example.com/FUZZ", "bypass_403": true, "threads": 50}'
889+
890+
# Backup File Discovery
891+
curl -X POST "http://localhost:8000/scan/backup" \
892+
-H "Content-Type: application/json" \
893+
-d '{"domain": "example.com", "threads": 200}'
894+
895+
# JWT Vulnerability Scan
896+
curl -X POST "http://localhost:8000/scan/jwt" \
897+
-H "Content-Type: application/json" \
898+
-d '{"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."}'
899+
860900
# APK/IPA Static Analysis (apkX engine)
861901
# Note: Requires jadx for decompilation and apktool for MITM patching (if mitm=true)
862902
curl -X POST "http://localhost:8000/scan/apkx" \
@@ -890,6 +930,11 @@ curl -X POST "http://localhost:8000/scan/github" \
890930
curl -X POST "http://localhost:8000/scan/github_org" \
891931
-H "Content-Type: application/json" \
892932
-d '{"org": "organization", "max_repos": 50}'
933+
934+
# Lite Scan Workflow (comprehensive automated scan)
935+
curl -X POST "http://localhost:8000/scan/lite" \
936+
-H "Content-Type: application/json" \
937+
-d '{"domain": "example.com", "skip_js": false, "phase_timeout": 3600}'
893938
```
894939

895940
#### KeyHack API Key Validation
@@ -1013,39 +1058,19 @@ jobs:
10131058
curl -o results.txt "${{ secrets.AUTOAR_API }}/scan/$SCAN_ID/download"
10141059
```
10151060
1016-
### Available Modes
1061+
## 📦 Installation via Go Install
10171062
1018-
AutoAR supports three operational modes:
1063+
You can install AutoAR directly using Go:
10191064
1020-
#### 1. Discord Bot Only (Default)
10211065
```bash
1022-
docker-compose up autoar-discord
1023-
# or
1024-
export AUTOAR_MODE=discord
1025-
export DISCORD_BOT_TOKEN=your_token_here
1026-
./autoar bot
1027-
```
1066+
# Install latest version from GitHub
1067+
go install github.com/h0tak88r/AutoAR/cmd/autoar@latest
10281068

1029-
#### 2. REST API Only
1030-
```bash
1031-
docker-compose --profile api up autoar-api
1032-
# or
1033-
export AUTOAR_MODE=api
1034-
export API_HOST=0.0.0.0
1035-
export API_PORT=8000
1036-
./autoar api
1069+
# Or install specific version
1070+
go install github.com/h0tak88r/AutoAR/cmd/autoar@v3.2.0
10371071
```
10381072

1039-
#### 3. Hybrid Mode (Both Discord + API)
1040-
```bash
1041-
docker-compose --profile full up autoar-full
1042-
# or
1043-
export AUTOAR_MODE=both
1044-
export DISCORD_BOT_TOKEN=your_token_here
1045-
export API_HOST=0.0.0.0
1046-
export API_PORT=8000
1047-
./autoar both
1048-
```
1073+
After installation, ensure `$GOPATH/bin` or `$HOME/go/bin` is in your PATH.
10491074

10501075
### API Response Format
10511076

bughunt.db-shm

-32 KB
Binary file not shown.

bughunt.db-wal

-8.56 MB
Binary file not shown.

0 commit comments

Comments
 (0)