-
Extract Files
- Download the release package
- Extract all files to a folder (e.g.,
C:\Users\YourName\abuse-reporter\) - Files should include:
abuse-reporter.exe(main application)logo.svg(logo file).env.example(configuration template)
-
Get Your API Key
- Go to: https://www.abuseipdb.com/api
- Sign up for a FREE account
- Create an API key (API v2)
- Copy the key to clipboard
-
Configure API Key in App
- Run
abuse-reporter.exe - Click the ⚙️ Settings tab
- Paste your API key in the input field
- Click 💾 Save Key
- ✅ You'll see: "✅ API Key: xxxx...xxxx" (masked)
- Run
-
Start Reporting
- Click 📝 Submit tab
- Enter IP address
- Select category
- Write comment
- Click 🚀 Submit Report
download/
├── abuse-reporter.exe ← Run this
├── logo.svg ← App logo
├── .env.example ← Configuration template (for reference)
├── README.md ← Documentation
└── GUI_DOCUMENTATION.md ← GUI guide
Important: Keep all files in the same folder. The app needs the logo to display properly.
- Visit: https://www.abuseipdb.com/api
- Click "Create an Account" (if you don't have one)
- Log in to your account
- Click "API" in the menu
- Under "Reserved Authorization Tokens", copy your API key
- Keep this secret! Don't share it with anyone
Method 1: Through GUI (Easiest)
- Launch
abuse-reporter.exe - Go to Settings tab (⚙️)
- You'll see "❌ API Key: Not configured"
- Paste your API key in the text field
- Click 💾 Save Key
- Success message appears: "API key saved successfully!"
- Now shows: "✅ API Key: xxxxx...xxxxx"
Method 2: Manual .env File (Advanced)
If you prefer to create the .env file manually:
- In the folder with
abuse-reporter.exe, create a new file - Name it:
.env(exactly this) - Add one line:
ABUSEIPDB_API_KEY=your_actual_key_here - Save the file
- Close and reopen
abuse-reporter.exe - Settings tab will show ✅ API Key configured
- Click 📝 Submit Report tab
- IP Address
- Enter IPv4:
192.0.2.1 - Or IPv6:
2001:db8::1
- Enter IPv4:
- Category
- Click dropdown to see all 23 categories
- Examples: Brute Force, SSH, Phishing, Fraud
- Comment (required)
- Describe the abuse
- e.g., "Multiple SSH login attempts on port 22"
- Confidence Score
- Slider: 0-100%
- Default: 100% (you're very confident)
- Lower if unsure (e.g., 50%)
- Dry-Run Mode (optional)
- Check to validate without submitting
- Good for testing first
- Click 🚀 Submit Report
- Click 📦 Bulk Report tab
- IP Addresses
- One per line:
192.0.2.1 192.0.2.2 203.0.113.45
- One per line:
- Category - Select one for all IPs
- Comment - Same comment for all
- Confidence - Same level for all
- Click 🚀 Submit Bulk Report
- Watch progress bar fill as reports submit
- Click 📚 Categories tab
- Browse all 23 official AbuseIPDB categories
- Each shows:
- Category ID (e.g., 18 = Brute Force)
- Category name
- Description
Toggle at any time:
- Go to Settings tab
- Click 🌙 Dark Mode: ON/OFF
- App will refresh with new theme
- Setting persists between sessions
Shows:
- 🎨 Appearance - Dark mode toggle
- 🔐 API Configuration - API key status
- 📝 Setup Instructions - How to configure
- ℹ️ About - Version and features
✅ Your API Key is Safe:
- Stored only in local
.envfile (never uploaded) - Masked in the GUI (you see
xxxx...xxxx) - Kept secure on your computer
- Not shared with anyone
- Don't share your
.envfile - Don't commit it to GitHub
- Only one person should know your key per account
Problem: App shows ❌ API Key not configured
Solutions:
-
Paste API Key
- Go to Settings tab
- Paste your key in the input field
- Click "💾 Save Key"
-
Create .env File
- Create
.envfile in same folder as exe - Add:
ABUSEIPDB_API_KEY=your_key - Restart app
- Create
-
Check File Permissions
- Make sure folder is writable
- Try running as Administrator
- Try different folder location
Problem: Can't run the exe
Solutions:
- Install Python (not needed, exe is standalone)
- Check Windows Version - Requires Windows 7+
- Install Visual C++ Redistributable - If app crashes
- Run as Administrator - Right-click exe → "Run as administrator"
Problem: Submission fails or times out
Solutions:
- Check Internet - Need working internet connection
- Check API Key - Verify it's correct in Settings
- Test with Dry-Run - Check "🔍 Dry-run mode" first
- Check AbuseIPDB - Website might be temporarily down
1. IP Address: 203.0.113.42
2. Category: SSH (ID 22)
3. Comment: "Multiple failed SSH login attempts on port 22 detected"
4. Confidence: 95%
5. Submit → ✅ Success
1. IPs (paste 5 addresses)
2. Category: Brute Force (ID 18)
3. Comment: "Part of botnet, scanning network for vulnerabilities"
4. Confidence: 100%
5. Submit → ✅ All submitted
1. Fill in report details
2. Check "🔍 Dry-run mode"
3. Click Submit
4. See validation pass ✅
5. Uncheck dry-run
6. Submit for real
- Category Guide → Click 📚 Categories tab in app
- API Documentation → https://www.abuseipdb.com/api
- Report Status → Check AbuseIPDB website for your IP history
✅ Do:
- Provide detailed comments describing the abuse
- Use appropriate confidence levels (100% = very sure)
- Report quickly while evidence is fresh
- Use categories that match the abuse type
❌ Don't:
- Report accidentally - use dry-run first
- Submit the same IP multiple times same day
- Guess at confidence level if unsure (use 50-75%)
- Use non-English comments (use English)
To get the latest version:
- Check GitHub releases
- Download new exe
- Run to overwrite old version
- Your API key (.env) is preserved
Questions? Check the README.md or visit https://github.com/xdrew87/abuse-reporter
Stay Safe! 🛡️