diff --git a/Network/ssl-tls-auditor/ssl_tls_auditor.py b/Network/ssl-tls-auditor/ssl_tls_auditor.py index a86b7b2..f0bb08c 100644 --- a/Network/ssl-tls-auditor/ssl_tls_auditor.py +++ b/Network/ssl-tls-auditor/ssl_tls_auditor.py @@ -596,11 +596,13 @@ def write_html(report: dict, prefix: str, client_name: str = "", footer_client = html.escape(client_name) if client_name else "Security Assessment" footer_assessor = html.escape(assessor) if assessor else "SecurityAuditScripts" + client_title_suffix = f" — {html.escape(client_name)}" if client_name else "" + html_content = f""" -SSL/TLS Audit \u2014 {html.escape(domain)}{' \u2014 ' + html.escape(client_name) if client_name else ''} +SSL/TLS Audit — {html.escape(domain)}{client_title_suffix} diff --git a/README.md b/README.md index be67dd4..e19d014 100644 --- a/README.md +++ b/README.md @@ -242,6 +242,13 @@ Each auditor produces JSON + CSV + HTML output and maps findings to CIS v8 Contr Pull requests and issues welcome. Use `tools/add_auditor.py` to scaffold new auditors — it auto-wires the script into `audit.py` and `exec_summary.py`. +### Local test setup + +```bash +pip install -r requirements-test.txt +pytest AWS/ OnPrem/Linux/ Network/ Email/ tests/ -v --import-mode=importlib +``` + --- ## Disclaimer diff --git a/audit.py b/audit.py index 3a6ff66..62ca0a1 100755 --- a/audit.py +++ b/audit.py @@ -253,7 +253,7 @@ def parse_args(argv: Optional[List[str]] = None) -> argparse.Namespace: * Supports --regions (multi-region scan). All others use the default region from your AWS CLI profile. -━━━ LINUX AUDITORS (--linux runs all 4) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +━━━ LINUX AUDITORS (--linux runs all 5) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ --linux_user Local users, sudoers, password policy, SSH keys --linux_firewall iptables/nftables/ufw rules, default policy diff --git a/tests/test_audit.py b/tests/test_audit.py index 357e2f3..85f703e 100644 --- a/tests/test_audit.py +++ b/tests/test_audit.py @@ -117,7 +117,7 @@ def test_linux_selects_all_linux(self): self.assertIn(name, selected) self.assertFalse(show_ps1) - def test_linux_selects_exactly_4(self): + def test_linux_selects_exactly_5(self): args = self._args("--linux") selected, _ = audit.select_auditors(args) self.assertEqual(len(selected), 5)