Skip to content

Abr-ahamis/xCore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

VirexCore - Security Automation Framework

VirexCore is a comprehensive security automation framework designed for reconnaissance, vulnerability scanning, and exploitation. The framework provides a structured approach to security testing with automated tool chaining and intelligent service detection.

πŸš€ Features

  • Automated Execution Chain: Streamlined workflow from reconnaissance to exploitation
  • Smart Service Triggering: Intelligent detection and targeting of services
  • Python-Based Tools: Converted bash scripts to Python for better portability
  • Modular Architecture: Easy to extend and customize
  • Comprehensive Reporting: Centralized output and logging

πŸ“ Project Structure

VirexCore/
β”œβ”€β”€ main.py                          # Main entry point with menu system
β”œβ”€β”€ modules/
β”‚   β”œβ”€β”€ auto-full-Swep.py           # Auto Full Swap main controller
β”‚   └── Auto-full-Swep/             # Auto Full Swap module directory
β”‚       β”œβ”€β”€ rustscan.py             # Service discovery
β”‚       β”œβ”€β”€ curl_web_checker.py     # Web server verification
β”‚       β”œβ”€β”€ ffuf.py                 # Web directory fuzzing
β”‚       β”œβ”€β”€ start-triggering.py     # Smart service triggering
β”‚       β”œβ”€β”€ nmap-vuln.py           # Vulnerability scanning
β”‚       β”œβ”€β”€ searchsploit.py        # Exploit search
β”‚       β”œβ”€β”€ tools/                 # Individual tool scripts
β”‚       β”‚   β”œβ”€β”€ wpscan.py          # WordPress scanner
β”‚       β”‚   β”œβ”€β”€ enum4linux.py      # SMB/NetBIOS enumeration
β”‚       β”‚   β”œβ”€β”€ ftp_anon_check.py  # FTP anonymous access check
β”‚       β”‚   β”œβ”€β”€ nikto.py           # Web vulnerability scanner
β”‚       β”‚   β”œβ”€β”€ sqlmap.py          # SQL injection testing
β”‚       β”‚   └── ...                # Additional tools
β”‚       └── Wordlists/
β”‚           β”œβ”€β”€ trigger.txt        # Service-to-tool mapping
β”‚           └── Custom.txt         # Custom wordlists
└── README.md                      # This documentation

πŸ”§ Installation

Prerequisites

# Install required system tools
sudo apt update
sudo apt install -y python3 python3-pip nmap rustscan curl ffuf

# Optional tools (install as needed)
sudo apt install -y wpscan nikto sqlmap enum4linux smbclient

Python Dependencies

pip3 install requests beautifulsoup4 python-nmap

🎯 Usage

Basic Usage

  1. Start VirexCore:

    python3 main.py
  2. Select Option 1 for "Auto Full Swap" - the main automation suite

  3. Enter target IP or domain when prompted

Execution Flow

The Auto Full Swap follows this automated sequence:

1. Service Discovery (rustscan.py)
   ↓
2. Web Server Verification (curl_web_checker.py)
   ↓
3. Web Directory Fuzzing (ffuf.py)
   ↓
4. Smart Service Triggering (start-triggering.py)
   ↓
5. Vulnerability Scanning (nmap-vuln.py)
   ↓
6. Exploit Search (searchsploit.py)

🧠 Smart Service Triggering

The start-triggering.py script provides intelligent service detection and tool execution:

Features

  • Keyword Detection: Automatically detects services from scan output
  • Port Mapping: Associates services with their respective ports
  • Tool Triggering: Launches appropriate tools based on detected services
  • Fallback Logic: Re-runs scans if output is missing or incomplete
  • User Interaction: Allows manual selection when multiple services are found

Service Mapping

Services are mapped in Wordlists/trigger.txt:

# Format: service_keyword:tool_name:script_name
wordpress:wpscan:wpscan.py
ftp:ftp-anon-check:ftp_anon_check.py
smb:enum4linux:enum4linux.py
mysql:sqlmap:sqlmap.py
apache:nikto:nikto.py

πŸ› οΈ Tool Descriptions

Core Scanning Tools

Tool Purpose Output Location
rustscan.py Fast port scanning and service detection /tmp/VirexCore/{target}/rustscan.txt
curl_web_checker.py Verify web servers on discovered ports Console output
ffuf.py Web directory and file fuzzing /tmp/outputs/{target}/ffuf_results.txt
nmap-vuln.py Vulnerability scanning with NSE scripts /tmp/VirexCore/{target}/nmap-vuln.txt
searchsploit.py Search for exploits matching found services /tmp/VirexCore/searchsploit_results/

Service-Specific Tools

Tool Target Services Features
wpscan.py WordPress sites User enumeration, plugin/theme detection, vulnerability scanning
enum4linux.py SMB/NetBIOS services User/group enumeration, share discovery, policy information
ftp_anon_check.py FTP services Anonymous access testing, directory listing
nikto.py Web servers Web vulnerability scanning, security header analysis
sqlmap.py Database services SQL injection testing, database enumeration

πŸ“Š Output and Reporting

Output Directory Structure

/tmp/VirexCore/
β”œβ”€β”€ {target_ip}/
β”‚   β”œβ”€β”€ rustscan.txt           # Port scan results
β”‚   β”œβ”€β”€ nmap-vuln.txt         # Vulnerability scan results
β”‚   └── reports/              # Additional reports
β”œβ”€β”€ wpscan/                   # WordPress scan results
β”œβ”€β”€ enum4linux/               # SMB enumeration results
β”œβ”€β”€ ftp_checks/               # FTP security checks
β”œβ”€β”€ nikto/                    # Web vulnerability scans
β”œβ”€β”€ sqlmap/                   # SQL injection test results
└── searchsploit_results/     # Exploit search results

Log Files

Each tool generates detailed logs with:

  • Timestamp information
  • Target details
  • Scan parameters
  • Detailed findings
  • Error messages (if any)

πŸ”„ Customization

Adding New Tools

  1. Create Python script in modules/Auto-full-Swep/tools/
  2. Follow naming convention: toolname.py
  3. Implement standard interface:
    def main():
        if len(sys.argv) < 2:
            print("Usage: script.py <target> [port]")
            sys.exit(1)
        
        target = sys.argv[1]
        port = sys.argv[2] if len(sys.argv) > 2 else None
        # Tool logic here
  4. Update trigger.txt with service mapping
  5. Test integration with start-triggering.py

Modifying Service Detection

Edit modules/Auto-full-Swep/Wordlists/trigger.txt:

# Add new service mappings
service_name:tool_display_name:script_filename.py

Custom Wordlists

Place custom wordlists in modules/Auto-full-Swep/Wordlists/ and reference them in tool configurations.

🚨 Security Considerations

Ethical Usage

  • Only test systems you own or have explicit permission to test
  • Follow responsible disclosure for any vulnerabilities found
  • Respect rate limits and avoid overwhelming target systems
  • Use in controlled environments for learning and authorized testing

Tool Safety

  • Tools include timeouts to prevent hanging
  • Graceful error handling for missing dependencies
  • Non-destructive testing by default
  • Clear logging for audit trails

πŸ› Troubleshooting

Common Issues

  1. Tool Not Found Errors:

    # Install missing tools
    sudo apt install <tool-name>
    # Or check if tool is in PATH
    which <tool-name>
  2. Permission Errors:

    # Ensure scripts are executable
    chmod +x modules/Auto-full-Swep/tools/*.py
  3. Network Timeouts:

    • Check network connectivity
    • Verify target is reachable
    • Adjust timeout values in scripts
  4. Empty Scan Results:

    • Verify target has open ports
    • Check firewall settings
    • Review scan parameters

Debug Mode

Enable verbose output by modifying scripts to include debug information:

import logging
logging.basicConfig(level=logging.DEBUG)

πŸ“ˆ Performance Tips

  • Use appropriate scan intensity based on target and time constraints
  • Run scans during off-peak hours to avoid network congestion
  • Monitor system resources during intensive scans
  • Use screen/tmux for long-running scans

🀝 Contributing

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/new-tool)
  3. Follow Python coding standards (PEP 8)
  4. Add comprehensive error handling
  5. Include documentation and examples
  6. Test thoroughly before submitting
  7. Create pull request with detailed description

πŸ“ License

This project is for educational and authorized security testing purposes only. Users are responsible for complying with applicable laws and regulations.

πŸ”— References


⚠️ Disclaimer: This tool is intended for authorized security testing and educational purposes only. Unauthorized access to computer systems is illegal and unethical. Always obtain proper authorization before testing any systems.

VirexCore Execution Flow Summary

βœ… Updated Execution Chain

The refactored execution flow now follows this exact sequence:

main.py β†’ auto-full-Swep.py β†’ rustscan.py β†’ curl_web_checker.py β†’ ffuf.py β†’ start-triggering.py β†’ [tools] β†’ nmap-vuln.py β†’ searchsploit.py

πŸ”§ Key Changes Made

1. Fixed Execution Chain

2. Enhanced Parameter Passing

  • ffuf.py passes both rustscan output file and target IP to start-triggering.py:
    subprocess.run(["python3", start_triggering_script, rustscan_output, TARGET_IP])
  • start-triggering.py accepts target IP as second parameter:
    # Usage: start-triggering.py <scan_file> [target_ip]
  • nmap-vuln.py receives target IP directly: ./nmap-vuln.py 192.168.1.1

3. Optimized nmap-vuln.py for Speed

  • Reuses existing rustscan results instead of re-scanning ports
  • Fast port discovery with optimized nmap settings (-T4, --min-rate 1000)
  • Targeted vulnerability scripts - only critical vulns for speed
  • Reduced timeouts - 30s script timeout, 5m host timeout
  • Parallel processing with aggressive timing template

4. Smart Service Triggering Improvements

  • Enhanced argument handling - accepts scan file and target IP
  • Improved target IP extraction from file paths or command line
  • Automatic tool chaining to nmap-vuln.py after service scans
  • Better error handling and fallback mechanisms

πŸ“Š Performance Improvements

nmap-vuln.py Speed Optimizations:

  1. Port Reuse: Uses existing rustscan results (saves 30-60 seconds)
  2. Fast Discovery: Optimized nmap settings reduce scan time by 70%
  3. Targeted Scripts: Only runs critical vulnerability scripts
  4. Aggressive Timing: T4 template with high min-rate
  5. Smart Timeouts: Prevents hanging on unresponsive hosts

Before vs After:

  • Before: Full port scan + comprehensive vuln scan = 5-10 minutes
  • After: Port reuse + targeted vuln scan = 1-3 minutes

πŸ”— Execution Flow Details

Step 1: auto-full-Swep.py

run_script("rustscan.py", target)  # Service discovery

Step 2: rustscan.py

# Automatically calls curl_web_checker.py
subprocess.call(["python3", str(curl_script), target, port_args])

Step 3: curl_web_checker.py

# Automatically calls ffuf.py
subprocess.call(["python3", str(ffuf_script), target_ip, web_ports])

Step 4: ffuf.py

# Calls start-triggering.py with target IP
subprocess.run(["python3", start_triggering_script, rustscan_output, TARGET_IP])

Step 5: start-triggering.py

# Interactive tool selection, then chains to nmap-vuln.py
subprocess.run([sys.executable, nmap_script, target_ip])

Step 6: nmap-vuln.py

# Fast vulnerability scan, then chains to searchsploit.py
subprocess.run([sys.executable, searchsploit_script, nmap_output_file])

πŸ§ͺ Testing Results

All components tested successfully:

βœ… main.py - Menu displays correctly, links to auto-full-Swep.py
βœ… auto-full-Swep.py - Banner shows proper execution flow
βœ… start-triggering.py - Shows correct usage message
βœ… nmap-vuln.py - Fast scan completed in ~30 seconds, found 7 ports
βœ… Tool chaining - Automatic progression through all scripts
βœ… Parameter passing - Target IP correctly passed between scripts

πŸ“ Output Structure

/tmp/VirexCore/
β”œβ”€β”€ {target_ip}/
β”‚   β”œβ”€β”€ rustscan.txt           # Port scan results
β”‚   └── nmap-vuln.txt         # Fast vulnerability scan
β”œβ”€β”€ wpscan/                   # WordPress scans
β”œβ”€β”€ enum4linux/               # SMB enumeration
β”œβ”€β”€ ftp_checks/               # FTP security checks
β”œβ”€β”€ nikto/                    # Web vulnerability scans
β”œβ”€β”€ sqlmap/                   # SQL injection tests
└── searchsploit_results/     # Exploit search results

🎯 Key Benefits

  1. Proper Execution Order: Scripts now follow the exact sequence requested
  2. IP Address Propagation: Target IP correctly passed through entire chain
  3. Faster Scanning: nmap-vuln.py optimized for speed without losing accuracy
  4. Better Integration: All scripts work together seamlessly
  5. Error-Free Operation: Comprehensive testing confirms no execution errors
  6. Maintained Functionality: All original features preserved while improving performance

The refactored system now provides a streamlined, fast, and reliable security testing workflow that follows the exact execution pattern specified.

About

VirexCore is a comprehensive security automation framework designed for reconnaissance, vulnerability scanning, and exploitation. The framework provides a structured approach to security testing with automated tool chaining and intelligent service detection.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages