Skip to content
hbs-tool.
Documentation06 of 07

Testcase catalog

All 368 hardening testcases: Linux, Windows and shared families with counts and coverage.

≈ 1 min read

368 testcases - Linux LIN-* (165), Windows WIN-* (153), and shared GEN-* (50). Checks are applicability-gated, not duplicated: a Linux host runs ~215, a Windows host ~200; the union is 368.

FamilyCountCoverage
LIN-FS15Partitions (/tmp, /var, /home, …), mount options, bootloader perms, core dumps
LIN-SV10Legacy/inetd services, telnet/rsh/tftp clients absent, MTA posture
LIN-NET20IP forwarding, ICMP, rp_filter, redirects, syncookies, IPv6
LIN-FW5firewalld/ufw/nftables/iptables default-deny
LIN-LOG14rsyslog/journald config, permissions, rotation, remote forwarding
LIN-AU12auditd rules, immutability, retention
LIN-SSH15sshd: root login, ciphers/MACs/KEX, auth limits, forwarding
LIN-PAM14pwquality, faillock, pwhistory, password ageing, sudo policy
LIN-USER20passwd/shadow/group perms, UID 0 uniqueness, umask, home perms
LIN-TH40Kernel attack surface (eBPF, userns, io_uring, kptr/dmesg, lockdown), persistence hunting, containers/EOL/currency
WIN-ACC14Account policy (length/age/history/lockout, LSA restrictions, admins)
WIN-AU10Audit subcategories via auditpol /get (never secedit /export)
WIN-SEC22UAC, LM/NTLM, SMB signing, screen lock, legal notice, SMBv1
WIN-UR16User rights via read-only LSA policy APIs
WIN-EVT6Event log sizes/retention/permissions
WIN-DEF10Defender AV + ASR + update posture
WIN-SVC20Legacy/unnecessary services (Telnet, TFTP, RemoteRegistry, Spooler, …)
WIN-REG10Registry/filesystem ACLs, Run keys, unquoted service paths
WIN-NET18Firewall profiles, LLMNR/mDNS, RDP, WinRM, LDAP signing, NTLM
WIN-TH27Credential protection (LSA PPL, Credential Guard, HVCI, WDigest), ASR, persistence (IFEO, WMI, tasks, netsh), EOL/LAPS
GEN-INV25Inventory: ports, packages, users, tasks, shares, patch, TPM/Secure Boot, EDR/backup, identity
GEN-SRV24Server config review: time sync, DNS redundancy, updates, backup, log forwarding, pending reboot, certs, firewall, sudo/UAC, free space, swap, LDAP/Kerberos

Info

There is also one internal self-test (GEN-TOY-001), which is why the GEN family totals 50 (25 + 24 + 1). --list-checks prints the full set; every check degrades (never false-passes) when evidence is unavailable.