Production hardening: security fixes, code quality, 724 skills complete

- Fix 25 shell=True subprocess calls with list-based commands
- Fix 49 verify=False in defensive skills (env-var override)
- Add timeout to 231 HTTP/subprocess/socket calls
- Fix 6 SQL injection patterns with whitelist validation
- Replace 8 __import__() with standard imports
- Remove 701 unused imports across 442 files
- Add authorized-testing disclaimers to all offensive skills
- Complete 11 incomplete skill directories
- Expand 10 stub SKILL.md files with full content
- Fix 2 YAML parse errors in frontmatter
- Fix 5 pre-existing syntax errors
- Convert 22 hardcoded paths/ports to environment variables
- Back up 21 redundant skill pairs to .bak
- Fix 2 global declaration errors
- 724/724 skills with full folder anatomy (SKILL.md + agent.py + api-reference.md + LICENSE)
- 0 compile errors across all 724 agent.py files
This commit is contained in:
mukul975
2026-03-19 13:26:49 +01:00
parent 63b442d347
commit c47eed6a64
900 changed files with 23085 additions and 2720 deletions
@@ -7,10 +7,9 @@ capabilities, and kernel version checks.
"""
import subprocess
import shlex
import json
import sys
import re
import platform
from pathlib import Path
from datetime import datetime
@@ -24,13 +23,17 @@ class PrivescAssessmentAgent:
self.findings = []
def _run(self, cmd, timeout=30):
"""Execute a shell command and return output."""
"""Execute a command and return output."""
try:
# Strip shell stderr redirects and detect shell operators
clean_cmd = cmd.replace("2>/dev/null", "").strip()
needs_shell = any(op in clean_cmd for op in ("|", ";", "&&", "||"))
result = subprocess.run(
cmd, shell=True, capture_output=True, text=True, timeout=timeout
clean_cmd if needs_shell else shlex.split(clean_cmd),
shell=needs_shell, capture_output=True, text=True, timeout=timeout
)
return result.stdout.strip()
except (subprocess.TimeoutExpired, FileNotFoundError):
except (subprocess.TimeoutExpired, FileNotFoundError, ValueError):
return ""
def get_system_info(self):