THIS TOOL IS FOR EDUCATIONAL PURPOSES ONLY
- β ONLY use on networks you OWN
- β ONLY use with EXPLICIT WRITTEN AUTHORIZATION
- β NEVER use for unauthorized access
- β NEVER use for illegal activities
The authors are NOT responsible for misuse of this tool.
X WIRELESS is an advanced Wi-Fi audit and inventory tool designed exclusively for educational purposes and testing on owned networks. It provides comprehensive network discovery, analysis, and reporting capabilities while maintaining strict safety-by-design principles.
- Safety First: Built with legal compliance and safety in mind
- Educational Focus: Designed for learning and authorized testing
- No Offensive Capabilities: No cracking, deauth, or injection features
- Transparent Operation: Clear logging and dry-run capabilities
- Legal Warning: Mandatory confirmation before use
- Dry-Run Mode: Simulate operations without executing commands
- Sandbox Mode: Test with sample data offline
- Target Validation: Restricts to localhost and internal networks only
- Auto-Detection: Automatically finds wireless interfaces
- Comprehensive Scanning: Uses safe system tools (
iwlist,nmcli) - Robust Parsing: Pydantic models for reliable data extraction
- Encryption Detection: Identifies Open, WEP, WPA, WPA2, WPA3
- Multiple Formats: JSON, Markdown, CSV output
- Rich Metadata: Timestamps, interface info, tool version
- Author Badge: Includes creator attribution
- Gist Upload: Optional GitHub Gist integration
- Local Database: JSON-based inventory storage
- Scan History: Track networks over time
- Change Detection: Compare scans and highlight differences
- Network Tracking: Monitor SSID, signal, and encryption changes
- Comprehensive Testing: Full test suite with sample data
- Type Safety: MyPy type checking
- Code Quality: Black formatting, Flake8 linting
- CI/CD: GitHub Actions automation
- Python 3.10 or higher
- Linux system (Ubuntu, Kali, etc.)
- Wireless tools installed
# Ubuntu/Debian
sudo apt update
sudo apt install wireless-tools network-manager python3-venv
# Kali Linux
sudo apt update
sudo apt install wireless-tools network-manager python3-venv# Clone repository
git clone https://github.com/adilfayyaz/xwirless.git
cd xwirless
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install package
pip install -e .
# Or install from PyPI (when available)
pip install xwirless# Download and run install script
curl -fsSL https://raw.githubusercontent.com/adilfayyaz/xwirless/main/install.sh | bash# Run a basic scan (will show legal warning)
python -m xwirless scan
# Scan with specific interface
python -m xwirless scan --interface wlan0
# Generate JSON report
python -m xwirless scan --format json --output scan_results# Simulate scan without executing commands
python -m xwirless scan --dry-run --format md# Use sample data for testing
python -m xwirless scan --sandbox tests/samples/sample_iwlist.txt --format json# Scan and save to inventory database
python -m xwirless scan --save-db --format all --output comprehensive_scan
# View inventory statistics
python -m xwirless inventory
# Compare two scans
python -m xwirless diff scan_20241201_143022 scan_20241201_150045# Generate Markdown report with author badge
python -m xwirless scan --format md --badge --output report
# Generate CSV for analysis
python -m xwirless scan --format csv --output networks.csv
# Upload to GitHub Gist (requires token)
python -m xwirless scan --upload --gist-token YOUR_GITHUB_TOKEN# Verbose logging
python -m xwirless scan --verbose --log-file scan.log
# Show system information
python -m xwirless info
# Show version information
python -m xwirless versionThe tool enforces legal compliance through:
- Mandatory Legal Warning: Users must confirm ownership/authorization
- Target Restrictions: Only allows localhost and internal networks
- No Offensive Capabilities: No cracking, deauth, or injection features
- Transparent Operation: All actions are logged and auditable
- Dry-Run:
--dry-runsimulates operations without executing commands - Sandbox:
--sandboxuses sample data for offline testing - Verbose Logging:
--verboseprovides detailed operation logs
- Only use on networks you own
- Get written permission for any testing
- Follow all applicable laws and regulations
- Use responsibly and ethically
# Install test dependencies
pip install pytest pytest-cov
# Run all tests
pytest tests/ -v
# Run with coverage
pytest tests/ --cov=xwirless --cov-report=html
# Test specific module
pytest tests/test_parser.py -v# Test CLI with sample data
python -m xwirless scan --sandbox tests/samples/sample_iwlist.txt --dry-runWe welcome contributions! Please follow these guidelines:
# Fork and clone repository
git clone https://github.com/YOUR_USERNAME/xwirless.git
cd xwirless
# Install development dependencies
pip install -e ".[dev]"
# Install pre-commit hooks
pre-commit install- Formatting: Use Black (
black xwirless tests) - Linting: Use Flake8 (
flake8 xwirless tests) - Type Checking: Use MyPy (
mypy xwirless) - Testing: Write tests for new features
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Add tests for new functionality
- Ensure all tests pass (
pytest) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Use GitHub Issues for bug reports
- Provide detailed reproduction steps
- Include system information (
python -m xwirless info) - Follow the issue template
This project is licensed under the MIT License - see the LICENSE file for details.
This software is designed EXCLUSIVELY for educational purposes and testing on networks you own or have explicit written authorization to test. The authors are NOT responsible for any misuse of this software.
- Author: Adil Fayyaz
- Instagram: @Infinityx_20257
- Issues: GitHub Issues
- Documentation: Project Wiki
Remember: Use responsibly and only on authorized networks!
Made with β€οΈ by Adil Fayyaz