Developer e01ee36e6f Additional critical fixes: malware-scanner.sh - input validation & error handling
ADDITIONAL ISSUES FIXED (7 major issues):

1. MISSING INPUT VALIDATION - Lines 2743, 2785
   - Domain input now validated with regex (prevents injection, special chars)
   - Custom path now validated for existence and readability
   - Rejects invalid domain formats before processing

2. MALDET AVAILABILITY CHECK - Line 3035
   - maldet_scan_submenu() now verifies maldet is installed before running
   - Prevents crashes when user selects maldet menu but scanner isn't installed
   - Shows helpful message directing user to installation

3. DIRECTORY CREATION ERROR HANDLING - Line 1283
   - mkdir now checks for success, returns error on failure
   - chmod also checked with error handling
   - Prevents silent failures when /opt not writable or disk full

4. SESSION DIRECTORY RACE CONDITION - Line 1273
   - Added $$  (process ID) and $RANDOM to session naming
   - Prevents collision when multiple users run simultaneously
   - Unique naming: malware-YYYYMMDD-HHMMSS-PID-RANDOM

5. CONTROL PANEL DETECTION VALIDATION - Line 2598
   - Added check to verify control panel not "unknown" after detection
   - Prevents scanning with wrong directory structure
   - Shows clear error message with remediation steps

6. ARRAY BOUNDS VALIDATION - Line 3347
   - Check available_scanners array not empty before displaying
   - Prevents crashes when no scanners installed
   - Shows helpful message to install scanners first

7. CUSTOM PATH READABILITY - Line 2793
   - Validates path is readable (not just existent)
   - Prevents scanning paths with permission errors

VALIDATION & TESTING:
✓ Syntax validation passed
✓ All input validation patterns tested
✓ Error handling branches verified
✓ Race condition fix verified (unique naming)

CODE QUALITY IMPROVEMENTS:
- Better error messages guide user to solutions
- Defensive programming prevents crashes
- Input sanitization prevents injection attacks
- Array bounds checked before access
2026-04-21 22:42:08 -04:00
2025-11-03 18:14:51 -05:00

🧪 Linux Server Toolkit - DEV Branch

STATUS: 🚀 Development & Testing Branch (Separate from Production)

This is the dev branch for testing, development, and experimentation. Changes here are isolated from production and can be safely tested before merging to main.


🚀 Quick Start

One command - pulls dev branch with YELLOW ⚠️ BETA banner:

curl -sL https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit/archive/dev.tar.gz | tar xz && source linux-server-management-toolkit/run.sh

When exiting (option 0), answer "yes" and cleanup happens automatically - no extra steps.


📍 Key Differences (Dev vs Production)

Feature Dev Branch Production
Cache .sysref.beta .sysref
Version 2.1.0-BETA 2.1.0
Banner 🟨 Yellow (⚠️) 🔵 Cyan
Git Branch dev main
Purpose Testing & Development Stable/Production

📦 Features

Comprehensive multi-panel server management suite supporting cPanel, InterWorx, Plesk, and standalone Apache with:

  • 🛡️ Security & Monitoring: Live attack monitor, bot blocker, malware scanner, IP reputation
  • 💾 Backup & Recovery: Acronis management, MySQL database restore
  • 🌐 Website Diagnostics: Error analysis, WordPress tools, Cloudflare detection
  • 📧 Email Diagnostics: Mail queue, blacklist checker, SPF/DKIM/DMARC validation
  • 📊 Performance Analysis: MySQL optimization, PHP tuning, hardware health, Varnish cache
  • 🔍 System Diagnostics: Health checks, loadwatch analysis, bandwidth monitoring

📖 Documentation

For detailed documentation, see the main repository: https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit


Version: 2.1.0-BETA Repository: https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit Branch: dev

S
Description
No description provided
Readme MIT 18 MiB
Languages
Shell 100%