Skip to Content
OpenVAPTAlpha
Pre-release. Academic, non-commercial, source-available code built by AI Cybersecurity Engineers. Free for your own use, 100% at your own risk. This website collects no data. Read MoreRead Less
Pre-release. OpenVAPT has no Stable release yet. Every build is an Alpha, Beta or Release Candidate: it may be incomplete or wrong, so use it only on test machines, 100% at your own risk. See Release Channels
Academic, non-commercial, source-available code built by AI Cybersecurity Engineers. These are AI systems, not people or registered engineers. Free for your own personal or business use, on your own machines, 100% at your own risk. Not for sale. Not for providing services. This website collects no data. Read the Acknowledgements
Pre-release. OpenVAPT has no Stable release yet. Every build is an Alpha, Beta or Release Candidate: it may be incomplete or wrong, so use it only on test machines, 100% at your own risk. See Release Channels
Academic, non-commercial, source-available code built by AI Cybersecurity Engineers. These are AI systems, not people or registered engineers. Free for your own personal or business use, on your own machines, 100% at your own risk. Not for sale. Not for providing services. This website collects no data. Read the Acknowledgements

Check Catalogue

Every check OpenVAPT runs, generated from the code. Sort, filter or search, then open a check to see its rationale, detection logic, fix, references, standards mapping and full source.

IDCheckCategorySeverityCWE
HOST-AUD-001Audit Daemon Not Enabled at Boot
Checks that the audit daemon (auditd) is set to start at every boot, not only running now.
Logging and Monitoring LowCWE-778
HOST-AUD-002Identity Files Not Audited
Checks that changes to the account, group, password and sudo files are recorded by the audit system.
Logging and Monitoring LowCWE-778
HOST-AUD-003Login and Logout Events Not Audited
Checks that the files recording logins, failed logins and sessions are watched by the audit system.
Logging and Monitoring LowCWE-778
HOST-AUD-004System Time Changes Not Audited
Checks that the audit system records changes to the system clock and time zone.
Logging and Monitoring LowCWE-778
HOST-AUD-005Kernel Module Loading Not Audited
Checks that loading and unloading kernel modules is recorded by the audit system.
Logging and Monitoring LowCWE-778
HOST-AUD-006Privileged Command Use Not Audited
Checks that the audit system records when ordinary users run privileged (setuid or setgid) programs.
Logging and Monitoring LowCWE-778
HOST-AUD-007Audit Configuration Not Immutable
Checks that the audit rule set ends with -e 2, which locks the rules until the next reboot.
Logging and Monitoring LowCWE-778
HOST-AUD-008Audit Log Files Readable by Others
Checks that the audit log directory and files can be read only by root.
Logging and Monitoring LowCWE-532, CWE-732
HOST-AUD-009Audit Daemon Ignores a Full Log Disk
Checks that auditd is told what to do when its log file is full or the disk runs low, rather than silently dropping events.
Logging and Monitoring LowCWE-778
HOST-AUD-010Journal Not Persistent or Not Compressed
Checks that systemd-journald is configured to keep the journal on disk and to compress it.
Logging and Monitoring LowCWE-778
HOST-AUD-011Logs Not Forwarded to a Remote Collector
Checks that system logs are sent to another machine, so an intruder with root cannot erase the only copy.
Logging and Monitoring LowCWE-778
HOST-BOOT-001Boot Loader Has No Password
Checks that GRUB is configured with a superuser and a hashed password so the boot entries cannot be edited at the console.
Access Control MediumCWE-306
HOST-BOOT-002UEFI Secure Boot Disabled
Checks the firmware's SecureBoot variable to see whether the boot chain is verified.
Secure Configuration MediumCWE-1326
HOST-BOOT-003Uncommon Filesystem Modules Not Disabled
Checks that the cramfs, freevxfs, jffs2, hfs, hfsplus, udf and squashfs kernel modules are disabled in modprobe.d.
Secure Configuration MediumCWE-1188
HOST-BOOT-004USB Storage Driver Not Disabled
Checks that the usb-storage kernel module is disabled in modprobe.d on servers that do not need removable media.
Secure Configuration MediumCWE-1188
HOST-BOOT-005Kernel Module Loading Unrestricted
Checks that the running kernel refuses unsigned modules or has module loading switched off entirely.
Secure Configuration LowCWE-1188
HOST-BOOT-006No File Integrity Monitoring
Checks that a file integrity tool (AIDE, Tripwire, Samhain or equivalent) is installed and scheduled to run.
Logging and Monitoring MediumCWE-778
HOST-BOOT-007Prelink Installed
Checks that the prelink tool is absent, or disabled where the package is still installed.
Secure Configuration LowCWE-344
HOST-BOOT-008Core Dumps Not Restricted
Checks that process core dumps are turned off through PAM limits, and through systemd-coredump where the kernel hands dumps to it.
Information Exposure LowCWE-528
HOST-CRON-001Cron Jobs Run Programs Other Users Can Modify
Resolves the programs and scripts that system and root cron jobs run and checks whether any is world-writable or sits in a world-writable folder.
Access Control HighCWE-732, CWE-426
HOST-CRON-002World-Writable Directory in Cron's PATH
Checks the PATH that system cron jobs search for commands for world-writable or relative entries.
Access Control HighCWE-426, CWE-427
HOST-CTR-001Docker API Exposed Over TCP Without TLS
Checks whether the Docker daemon is configured to listen on a TCP socket without TLS client verification.
Network Exposure CriticalCWE-306, CWE-319
HOST-CTR-002Docker Daemon Not Hardened
Checks the Docker daemon defaults: no-new-privileges, inter-container communication, user namespace remapping and live restore.
Secure Configuration MediumCWE-250, CWE-1188
HOST-CTR-003Privileged or Host-Namespace Containers
Looks for containers running privileged, sharing the host's PID, network or IPC namespace, or with dangerous added capabilities.
Secure Configuration HighCWE-250, CWE-653
HOST-CTR-004Containers Mount the Docker Socket or Host Root
Looks for containers that bind-mount the Docker socket, the host root filesystem or sensitive host paths.
Access Control HighCWE-250, CWE-732
HOST-CTR-005Docker Container Logs Have No Size Limit
Checks whether the Docker daemon's default log driver caps log file size and rotation.
Logging and Monitoring LowCWE-779, CWE-770
HOST-CTR-006Docker Userland Proxy Enabled
Checks whether the Docker daemon still uses the docker-proxy userland process for published ports.
Secure Configuration LowCWE-1188
HOST-CTR-007Docker Default Ulimits Not Set
Checks whether the Docker daemon sets default ulimits (open files and processes) for containers.
Secure Configuration LowCWE-770
HOST-CTR-008Docker Socket Accessible to Non-Administrators
Checks the Docker socket's permissions and who belongs to the docker group.
Access Control HighCWE-732, CWE-250
HOST-CTR-009Docker Not Running in Rootless Mode
Reports whether the Docker daemon runs as root or in rootless mode. Informational.
Secure Configuration InfoCWE-250
HOST-CTR-010Docker Daemon Allows Insecure Registries or Debug Features
Checks daemon.json for insecure-registries, debug mode and experimental features.
Secure Configuration MediumCWE-494, CWE-1188
HOST-CTR-011Seccomp or AppArmor Disabled for Containers
Looks for the daemon or individual containers turning off the default seccomp profile, AppArmor or SELinux labelling.
Secure Configuration HighCWE-653, CWE-250
HOST-CTR-012Containers Run Without Memory or Process Limits
Looks for containers with no memory limit and no PID limit.
Secure Configuration MediumCWE-770
HOST-CTR-013Containers Run as Root With a Writable Root Filesystem
Looks for containers whose process runs as root and whose root filesystem is writable.
Secure Configuration MediumCWE-250, CWE-732
HOST-CTR-014containerd Remote API or Podman Unconfined Defaults
Checks the containerd and Podman configuration files for a TCP API without TLS and for unconfined seccomp or disabled labelling defaults.
Secure Configuration HighCWE-306, CWE-1188
HOST-CTR-015Docker Content Trust Not Enabled
Checks whether DOCKER_CONTENT_TRUST=1 is set system-wide so that only signed images are pulled.
Secure Configuration LowCWE-494, CWE-347
HOST-CVE-001Installed OS Packages With Known Vulnerabilities
Checks installed packages against an offline vulnerability snapshot.
Patch and Vulnerability Management HighCWE-1104
HOST-CVE-002Known Exploited Vulnerabilities Present
Checks installed packages against an offline vulnerability snapshot.
Patch and Vulnerability Management CriticalCWE-1104
HOST-CVE-003Vulnerability Snapshot Outdated or Test Data
Checks installed packages against an offline vulnerability snapshot.
Patch and Vulnerability Management LowCWE-1104
HOST-DKR-001Users With Root-Equivalent Docker Access
Checks whether non-root users can control Docker, which is equivalent to root access.
Identity and Authentication HighCWE-250, CWE-266
HOST-FS-001Sensitive Account Files Have Unsafe Permissions
Checks that /etc/shadow and /etc/gshadow are not readable by others, and /etc/passwd and /etc/group are not writable by others.
Access Control HighCWE-732
HOST-FS-002Temporary Directory Missing the Sticky Bit
Checks that world-writable temp directories have the sticky bit set.
Access Control HighCWE-377, CWE-732
HOST-FS-003World-Writable Files in System Configuration
Looks for files under /etc and in cron directories that any user can modify.
Access Control HighCWE-732
HOST-FS-004Unexpected SUID or SGID Programs
Looks for set-user-ID or set-group-ID programs in places where packages do not normally install them.
Access Control HighCWE-250
HOST-FS-005Cron Files Writable by Non-Root Users
Checks that system cron files and directories are owned by root and not writable by others.
Access Control HighCWE-732
HOST-FS-006Boot Loader Configuration Exposed
Checks that the GRUB configuration is not readable or writable by normal users.
Access Control MediumCWE-732
HOST-FS-007Private TLS Keys Readable by Others
Checks that TLS private keys under the standard key directories are not readable by other users.
Cryptography and TLS HighCWE-732
HOST-FS-008Temporary Filesystems Allow Executables or Devices
Checks that /tmp, /var/tmp and /dev/shm are mounted with nodev and nosuid.
Secure Configuration LowCWE-276
HOST-FS-009Default File Creation Mask Too Permissive
Checks that the default umask makes new files unreadable to other users (027 or stricter).
Access Control LowCWE-276
HOST-FS-010/var/tmp Not a Separate Filesystem
Checks that /var/tmp is its own mount (or a bind mount of /tmp) with nodev, nosuid and noexec.
Secure Configuration LowCWE-276
HOST-FS-011/home Not a Separate Filesystem With nodev
Checks that user home directories live on their own mount with nodev (and nosuid where practical).
Secure Configuration LowCWE-276
HOST-FS-012Log Directories on the Root Filesystem
Checks that /var/log (or /var) is a separate filesystem so runaway logging cannot fill the root disk.
Secure Configuration LowCWE-770
HOST-FS-013Temporary Filesystems Allow Executables
Checks that /tmp, /var/tmp and /dev/shm, where they are separate mounts, carry the noexec option.
Secure Configuration LowCWE-276
HOST-FS-014World-Writable Files Outside Temporary Directories
Looks for files that any user can modify in program, service and home locations other than /etc (which HOST-FS-003 covers).
Access Control MediumCWE-732
HOST-FS-015Files With No Known Owner or Group
Looks for files whose owner or group id no longer appears in /etc/passwd or /etc/group.
Access Control LowCWE-282
HOST-FS-016SUID or SGID Programs Outside the Known Baseline
Lists set-user-ID and set-group-ID programs in the system binary directories that are not on the documented baseline of what distributions ship.
Access Control MediumCWE-250
HOST-FS-017World-Writable Directories Without the Sticky Bit
Looks for shared writable directories outside /tmp and /etc that let any user delete or replace other users' files.
Access Control MediumCWE-732, CWE-377
HOST-FS-018Kernel Symbol Map or Initial RAM Disk Readable by Others
Checks that /boot/System.map-* and the initial RAM disk images are not readable by every user.
Information Exposure LowCWE-497, CWE-732
HOST-FS-019Cron and At Not Restricted to Allowed Users
Checks that cron.allow and at.allow exist, are private to root, and that the deny lists are not relied upon instead.
Access Control LowCWE-862
HOST-FS-020Cron Configuration Readable by Other Users
Checks that /etc/crontab is mode 600 and the cron.d, cron.hourly, cron.daily, cron.weekly and cron.monthly directories are mode 700, all owned by root.
Access Control LowCWE-732
HOST-FS-021Shell Profile Sets a Permissive File Creation Mask
Checks that system-wide shell start-up files do not set a umask that leaves new files readable by every user.
Access Control LowCWE-276
HOST-FS-022Account Database Files or Their Backups Not Owned and Locked by Root
Checks the owner and permissions of /etc/passwd, /etc/group, /etc/shadow, /etc/gshadow and their dash-suffixed backup copies.
Access Control HighCWE-732, CWE-522
HOST-IDS-001No Brute-Force Protection Service
Checks that a log-based intrusion prevention service (fail2ban, sshguard or CrowdSec) is running.
Logging and Monitoring LowCWE-307
HOST-K8S-001Kubelet Allows Anonymous or Unauthorised Access
Checks the kubelet configuration for anonymous authentication, AlwaysAllow authorisation or the unauthenticated read-only port.
Identity and Authentication CriticalCWE-306, CWE-862
HOST-K8S-002Kubernetes Data Directory Accessible to Others
Checks that the etcd data directory is accessible only by its owner.
Access Control HighCWE-732
HOST-K8S-003Kubernetes Credential Files Readable by Others
Checks that kubeconfig files and Kubernetes PKI private keys are not readable by other users.
Identity and Authentication HighCWE-732
HOST-KRN-001Address Space Layout Randomisation Not Fully Enabled
Checks that the kernel randomises memory layout for stack, libraries, heap and VDSO.
Secure Configuration MediumCWE-344
HOST-KRN-002Kernel Pointers Exposed to Unprivileged Users
Checks that kernel memory addresses are hidden from normal users.
Secure Configuration LowCWE-497
HOST-KRN-003Kernel Log Readable by Unprivileged Users
Checks that only privileged users can read the kernel log (dmesg).
Secure Configuration LowCWE-497
HOST-KRN-004Setuid Programs May Dump Core
Checks that privileged programs do not write core dumps.
Secure Configuration LowCWE-528
HOST-KRN-005IP Forwarding Enabled
Checks that the server does not route packets between networks.
Secure Configuration LowCWE-1188
HOST-KRN-006ICMP Redirects Accepted
Checks that the kernel ignores ICMP redirect messages.
Secure Configuration LowCWE-940
HOST-KRN-007Source-Routed Packets Accepted
Checks that the kernel drops packets that dictate their own route.
Secure Configuration LowCWE-940
HOST-KRN-008TCP SYN Cookies Disabled
Checks that SYN cookies protect the server from SYN flood attacks.
Secure Configuration LowCWE-770
HOST-KRN-009Unprivileged eBPF Allowed
Checks that normal users cannot load eBPF programs into the kernel.
Secure Configuration MediumCWE-749
HOST-KRN-010Process Tracing Not Restricted
Checks that processes cannot attach a debugger to other processes of the same user.
Secure Configuration LowCWE-749
HOST-KRN-011Symlink Protection Disabled
Checks that the kernel blocks following symlinks owned by other users in world-writable sticky directories.
Secure Configuration LowCWE-59
HOST-KRN-012Hardlink Protection Disabled
Checks that users cannot create hard links to files they do not own.
Secure Configuration LowCWE-59
HOST-KRN-013Reverse Path Filtering Disabled
Checks that the kernel drops packets whose source address could not be routed back through the receiving interface.
Secure Configuration LowCWE-940
HOST-KRN-014Martian Packets Not Logged
Checks that packets with impossible source addresses are logged.
Secure Configuration LowCWE-778
HOST-KRN-015Server Sends ICMP Redirects
Checks that the server does not send ICMP redirects, which only routers should do.
Secure Configuration LowCWE-1188
HOST-KRN-016Broadcast ICMP Echo Answered
Checks that the server ignores ping requests sent to broadcast addresses.
Secure Configuration LowCWE-406
HOST-KRN-017IPv6 ICMP Redirects Accepted
Checks that the kernel ignores IPv6 ICMP redirect messages.
Secure Configuration LowCWE-940
HOST-KRN-018Performance Events Open to Unprivileged Users
Checks that unprivileged users cannot use kernel performance events to observe the system.
Secure Configuration LowCWE-749
HOST-KRN-019Magic SysRq Key Enabled
Checks that the magic SysRq key combination is disabled or limited to keyboard synchronisation.
Secure Configuration LowCWE-749
HOST-KRN-020FIFO Protection in Shared Directories Disabled
Checks that the kernel refuses to open FIFOs in world-writable sticky directories that another user owns.
Secure Configuration LowCWE-59
HOST-KRN-021Regular File Protection in Shared Directories Disabled
Checks that the kernel refuses to open, with O_CREAT, regular files in world-writable sticky directories that another user owns.
Secure Configuration LowCWE-59
HOST-KRN-022Unprivileged User Namespaces Allowed
Checks that normal users cannot create user namespaces, unless the server runs containers that need them.
Secure Configuration LowCWE-749
HOST-KRN-023IPv6 Source-Routed Packets Accepted
Checks that the kernel drops IPv6 packets that dictate their own route.
Secure Configuration LowCWE-940
HOST-KRN-024Secure ICMP Redirects Accepted
Checks that the kernel also ignores ICMP redirects that come from its configured gateways.
Secure Configuration LowCWE-940
HOST-KRN-025IPv6 Router Advertisements Accepted
Checks that the server does not reconfigure its IPv6 addresses and routes from router advertisements.
Secure Configuration LowCWE-940
HOST-KRN-026Bogus ICMP Error Responses Logged
Checks that the kernel silently ignores malformed ICMP error responses instead of logging each one.
Secure Configuration LowCWE-779
HOST-KRN-027Kexec Kernel Replacement Allowed
Checks that a running kernel cannot be replaced at run time with kexec.
Secure Configuration LowCWE-749
HOST-KRN-028Unprivileged userfaultfd Allowed
Checks that only privileged processes can use userfaultfd.
Secure Configuration LowCWE-749
HOST-KRN-029TTY Line Discipline Autoloading Enabled
Checks that unprivileged users cannot make the kernel load terminal line discipline modules.
Secure Configuration LowCWE-1188
HOST-KRN-030BPF JIT Hardening Off
Checks that the BPF just-in-time compiler blinds constants in generated code for every user.
Secure Configuration LowCWE-1188
HOST-KRN-031io_uring Open to Unprivileged Users
Checks that io_uring is disabled, or limited to privileged processes, on kernels that offer the setting.
Secure Configuration LowCWE-749
HOST-LOG-001System Logging Not Persistent
Checks that system logs survive a reboot (rsyslog/syslog-ng running, or a persistent journal).
Logging and Monitoring LowCWE-778
HOST-LOG-002Security Audit Daemon Not Running
Checks whether the Linux audit daemon (auditd) is running.
Logging and Monitoring LowCWE-778
HOST-LOG-003Security Logs Readable by All Users
Checks that authentication and system logs are not world-readable.
Logging and Monitoring LowCWE-532
HOST-LOG-004Log Rotation Not Configured
Checks that logrotate (or journald size limits) keeps logs from filling the disk.
Logging and Monitoring LowCWE-770
HOST-MAC-001No Mandatory Access Control Enforced
Checks that AppArmor or SELinux is enabled and enforcing.
Secure Configuration LowCWE-250
HOST-OS-001Operating System Past End of Security Support
Checks whether the Linux distribution release still receives free security updates.
Patch and Vulnerability Management HighCWE-1104
HOST-PAM-001Password Quality Module Not Enforced
Checks that new passwords pass through pam_pwquality with its dictionary check on, so dictionary words and user-name variants are rejected.
Identity and Authentication LowCWE-521
HOST-PAM-002Account Lockout Releases Too Quickly
Checks that a locked account stays locked for at least 15 minutes (or until an administrator unlocks it).
Identity and Authentication LowCWE-307
HOST-PAM-003su Not Restricted to an Administrative Group
Checks that only members of a named group (wheel or sudo) may use su to become another user.
Identity and Authentication LowCWE-250, CWE-862
HOST-PAM-004Password History Not Enforced
Checks that PAM remembers at least the last 5 passwords so a changed password cannot be changed straight back.
Identity and Authentication LowCWE-262
HOST-PAM-005Minimum Password Age Not Set
Checks that a password cannot be changed again on the same day it was set.
Identity and Authentication LowCWE-262
HOST-PAM-006Password Expiry Warning Too Short
Reports whether users are warned at least 7 days before a password expires.
Identity and Authentication InfoCWE-262
HOST-PAM-007Inactive Accounts Never Locked
Checks that new accounts are set to lock automatically after a password has been expired and unused for at most 30 days.
Identity and Authentication LowCWE-262
HOST-PAM-008Root PATH Contains Unsafe Entries
Checks that the PATH set for root does not include the current directory, empty entries, relative paths or directories other users can write to.
Identity and Authentication MediumCWE-426, CWE-427
HOST-PAM-009No Shell Idle Timeout
Checks that interactive shells log out after at most 15 minutes without input (TMOUT).
Identity and Authentication LowCWE-613
HOST-PKG-001Security Updates Waiting to Be Installed
Checks the package manager for published security updates that are not installed yet.
Patch and Vulnerability Management HighCWE-1104
HOST-PKG-002Repository Signature Checks Disabled
Checks that the package manager verifies repository signatures, so a tampered mirror or intercepted download cannot install code as root.
Patch and Vulnerability Management HighCWE-494, CWE-347
HOST-PKG-003Third-Party Package Repositories Present
Lists package repositories that are not run by the distribution vendor, so each one can be justified.
Patch and Vulnerability Management InfoCWE-1357
HOST-PKG-004Many Old Kernels Retained
Checks that no more than three kernel versions are installed.
Patch and Vulnerability Management LowCWE-1104
HOST-PKG-005Running Kernel Older Than Installed Kernel
Checks that the kernel in memory is the newest kernel installed, so kernel security fixes are actually in effect.
Patch and Vulnerability Management MediumCWE-1104
HOST-PKG-006Package Lists Not Refreshed Automatically
Checks that the package manager downloads fresh repository metadata on a schedule, so pending updates can be seen at all.
Patch and Vulnerability Management LowCWE-1104
HOST-PWD-001Weak Password Hashing Algorithm Configured
Checks that new passwords are hashed with a modern, slow algorithm (SHA-512 or yescrypt).
Identity and Authentication MediumCWE-916, CWE-328
HOST-PWD-002Accounts With Obsolete Password Hashes
Checks /etc/shadow for passwords still stored with MD5 or traditional DES crypt.
Identity and Authentication MediumCWE-916, CWE-328
HOST-PWD-003Short Minimum Password Length
Checks that the password quality policy requires at least 15 characters.
Identity and Authentication LowCWE-521
HOST-PWD-004No Account Lockout After Failed Logins
Checks that PAM temporarily locks accounts after repeated failed logins.
Identity and Authentication MediumCWE-307
HOST-PWD-005Forced Periodic Password Rotation Configured
Reports whether new accounts are forced to change passwords on a short fixed schedule.
Identity and Authentication InfoCWE-262
HOST-SEC-001Secrets in World-Readable Files
Looks inside world-readable configuration files under /etc and the web roots for private keys, cloud access keys and password assignments.
Information Exposure HighCWE-312, CWE-732, CWE-798
HOST-SSH-001SSH Allows Direct Root Login
Checks whether the SSH daemon accepts logins as root with a password.
Identity and Authentication HighCWE-250
HOST-SSH-002SSH Password Authentication Enabled
Checks whether SSH accepts passwords instead of only keys.
Identity and Authentication MediumCWE-307, CWE-521
HOST-SSH-003SSH Permits Empty Passwords
Checks whether SSH lets accounts with an empty password log in.
Identity and Authentication CriticalCWE-258
HOST-SSH-004SSH Offers Weak Cryptography
Checks the SSH ciphers, MACs, key exchange and host key algorithms for outdated choices.
Cryptography and TLS MediumCWE-327
HOST-SSH-005SSH X11 Forwarding Enabled
Checks whether SSH forwards graphical X11 sessions.
Secure Configuration LowCWE-1188
HOST-SSH-006SSH Allows Many Authentication Attempts
Checks whether MaxAuthTries is above 4.
Identity and Authentication LowCWE-307
HOST-SSH-007SSH Forwarding Features Enabled
Checks effective SSH Match contexts for TCP, agent, tunnel and gateway forwarding.
Secure Configuration MediumCWE-441
HOST-SSH-008SSH Authentication Controls Too Permissive
Checks effective SSH authentication method and login grace settings.
Identity and Authentication LowCWE-307, CWE-308
HOST-SSH-009SSH Host Private Keys Readable by Others
Checks that SSH host private keys are readable only by root.
Cryptography and TLS HighCWE-732
HOST-SSH-010SSH Server Configuration Writable by Non-Root Users
Checks that the SSH daemon configuration cannot be modified by group or other users.
Access Control HighCWE-732
HOST-SSH-011SSH Legacy Trust Options Enabled
Checks for host-based trust and user environment options that weaken SSH authentication.
Identity and Authentication MediumCWE-290, CWE-15
HOST-SSH-012SSH Logging Level Too Low
Checks that sshd logs at INFO or VERBOSE level.
Logging and Monitoring LowCWE-778
HOST-SSH-013SSH Authorized Keys Without Restrictions or Protection
Checks root's authorized_keys for keys without from= or command= options, and every authorized_keys file for permissive modes.
Identity and Authentication LowCWE-732, CWE-250
HOST-SUDO-001Sudo Commands Not Logged to a Dedicated File
Checks that sudo uses a pseudo-terminal and keeps its own log file.
Logging and Monitoring LowCWE-778
HOST-SVC-001Unnecessary Legacy Services Running
Checks for desktop and legacy network services that servers rarely need.
Secure Configuration LowCWE-1188
HOST-SVC-002Telnet Server Installed or Enabled
Checks whether a Telnet server is installed or set to start at boot.
Secure Configuration MediumCWE-319, CWE-1188
HOST-SVC-003rsh, rlogin, rexec or finger Server Installed or Enabled
Checks whether the Berkeley r-services (rsh, rlogin, rexec) or a finger server is installed or enabled.
Secure Configuration MediumCWE-319, CWE-1188
HOST-SVC-004TFTP Server Installed or Enabled
Checks whether a TFTP server is installed or set to start at boot.
Secure Configuration MediumCWE-306, CWE-1188
HOST-SVC-005FTP Server Installed or Enabled
Checks whether an FTP server (vsftpd, ProFTPD or Pure-FTPd) is installed or set to start at boot.
Secure Configuration MediumCWE-319, CWE-1188
HOST-SVC-006NIS Server or Client Installed or Enabled
Checks whether the Network Information Service (NIS, ypserv or ypbind) is installed or enabled.
Secure Configuration MediumCWE-319, CWE-522
HOST-SVC-007Avahi or CUPS Installed or Enabled
Checks whether zero-configuration discovery (Avahi) or the printing system (CUPS) is installed or enabled.
Secure Configuration LowCWE-1188
HOST-SVC-008NFS Server or rpcbind Installed or Enabled
Checks whether the NFS server or the RPC port mapper (rpcbind) is installed or enabled.
Secure Configuration LowCWE-1188, CWE-306
HOST-SVC-009DHCP or DNS Server Installed or Enabled
Checks whether a DHCP server or an authoritative or recursive DNS server (BIND) is installed or enabled on a machine that is not a network server.
Secure Configuration LowCWE-1188
HOST-SVC-010Samba File Server Installed or Enabled
Checks whether the Samba SMB file server is installed or set to start at boot.
Secure Configuration LowCWE-1188
HOST-SVC-011SNMP Agent or Squid Proxy Installed or Enabled
Checks whether an SNMP agent or the Squid caching proxy is installed or enabled.
Secure Configuration LowCWE-1188, CWE-319
HOST-SVC-012inetd Super-Server Installed or Enabled
Checks whether xinetd or another inetd super-server is installed or enabled.
Secure Configuration LowCWE-1188
HOST-SYSD-001Custom Services Run as Root
Checks whether long-running services written by the administrator run as root instead of a dedicated user.
Identity and Authentication MediumCWE-250
HOST-SYSD-002Custom Services Lack Sandboxing
Checks whether custom long-running services use systemd's basic sandboxing options.
Secure Configuration LowCWE-250, CWE-653
HOST-SYSD-003Service Unit Files Writable by Non-Root Users
Checks whether any systemd service unit or drop-in file can be changed by a user other than root.
Access Control HighCWE-732
HOST-SYSD-004Service Programs in Writable Locations
Checks whether a service starts a program from a temporary folder, or a program file that other users can replace.
Access Control HighCWE-732, CWE-427
HOST-SYSD-005Secrets Written Into Service Unit Files
Checks whether passwords, tokens or keys are set with Environment= in systemd unit files.
Information Exposure MediumCWE-526, CWE-312
HOST-TIME-001Time Synchronisation Not Active
Checks that the clock is kept in sync (chrony, ntpd or systemd-timesyncd).
Logging and Monitoring LowCWE-778
HOST-UPD-001Automatic Security Updates Not Configured
Checks that security updates are installed automatically.
Patch and Vulnerability Management LowCWE-1104
HOST-UPD-002Reboot Required to Apply Updates
Checks whether installed updates (often kernel or core library fixes) are waiting for a reboot.
Patch and Vulnerability Management MediumCWE-1104
HOST-USR-001Extra Accounts With Root Privileges (UID 0)
Checks /etc/passwd for accounts other than root that have user id 0.
Identity and Authentication HighCWE-250, CWE-266
HOST-USR-002Accounts Without a Password
Checks /etc/shadow for accounts whose password field is empty.
Identity and Authentication HighCWE-258, CWE-521
HOST-USR-003Sudo Rules Without Password (NOPASSWD)
Checks sudoers files for rules that grant root without asking for a password.
Identity and Authentication HighCWE-306
HOST-USR-004Duplicate User IDs
Checks that no two accounts share the same numeric user id.
Identity and Authentication MediumCWE-286
HOST-USR-005System Accounts With Login Shells
Checks that service accounts (UID below UID_MIN, usually 1000, other than root) cannot log in interactively.
Identity and Authentication LowCWE-250
HOST-USR-006Legacy NIS Entries in Account Files
Checks /etc/passwd, /etc/shadow and /etc/group for legacy '+' NIS inclusion entries.
Identity and Authentication MediumCWE-288
HOST-USR-007Insecure Trust Files in Home Directories
Looks for .rhosts, .shosts and .netrc files in user home directories.
Identity and Authentication HighCWE-256, CWE-290
HOST-USR-008Duplicate Group IDs or Account Names
Checks /etc/group for duplicate GIDs and group names, and /etc/passwd for duplicate user names.
Identity and Authentication MediumCWE-286
HOST-USR-009Password and Shadow Files Out of Step
Checks that every /etc/passwd account has a /etc/shadow entry, that no password hash sits in /etc/passwd, and that /etc/shadow has no orphan entries.
Identity and Authentication MediumCWE-256, CWE-522
HOST-USR-010Home Directories Accessible to Other Users
Checks that the home directory of each interactive account denies read, write and execute to others.
Access Control LowCWE-732, CWE-276
NET-AI-001AI Model Server or Dashboard Reachable From the Network
Checks whether a self-hosted AI model server, AI web interface, AI cluster dashboard or vector database listens on a network-reachable address.
Network Exposure HighCWE-306, CWE-1327
NET-AI-002Jupyter Configuration Weakens Authentication
Checks whether a Jupyter configuration blanks the login token without setting a password, or turns off cross-site request protection.
Identity and Authentication HighCWE-306, CWE-352
NET-APP-001Debugger or Application Control Ports Exposed
Checks whether the Node.js inspector, Tomcat AJP or shutdown port, PHP-FPM FastCGI or Jupyter listen on network-reachable addresses.
Network Exposure HighCWE-489, CWE-1327
NET-APP-002Application Server Ports Reachable Without a Reverse Proxy
Checks whether application servers and developer tools (Node.js, Tomcat, Django, Flask, Vite) serve HTTP on network-reachable addresses.
Network Exposure MediumCWE-1188, CWE-1327
NET-DB-001Database or Cache Service Exposed to the Network
Checks whether databases, caches, search engines or the Docker API listen on a network-reachable address.
Data Services HighCWE-1327, CWE-306
NET-DB-002Redis Authentication and Network Binding
Redis lacks protected mode, authentication, or a loopback-only bind.
Data Services CriticalCWE-306, CWE-1188
NET-DB-003MongoDB Authorization and Network Binding
MongoDB authorization is disabled or it binds beyond loopback.
Data Services CriticalCWE-306, CWE-1188
NET-DB-004PostgreSQL Trust and Broad Client Access
PostgreSQL accepts trust authentication or unrestricted client networks.
Data Services CriticalCWE-306, CWE-1188
NET-DB-005MySQL or MariaDB Unsafe Network Options
MySQL or MariaDB enables local file loading, skips grants, or listens broadly with networking enabled.
Data Services HighCWE-306, CWE-1188
NET-DB-006Memcached UDP or Broad Listen Address
Memcached enables UDP or listens on a non-loopback address.
Data Services HighCWE-406, CWE-1188
NET-DB-007Elasticsearch Security and Network Binding
Elasticsearch security is disabled or network.host is broadly reachable.
Data Services CriticalCWE-306, CWE-1188
NET-DB-008Unsafe NFS Export Options
NFS exports are world-accessible or use no_root_squash or insecure.
Data Services HighCWE-732, CWE-306
NET-DB-009Unsafe Samba Guest or SMB1 Configuration
Samba permits guest access, maps unknown users to guest, or allows SMB1.
Data Services HighCWE-732, CWE-306
NET-DB-010BIND Open Recursion
BIND enables recursion without restricting recursive clients.
Data Services HighCWE-406
NET-DB-011BIND Zone Transfers Allowed to Any
BIND permits zone transfers to any client.
Data Services HighCWE-497
NET-DB-012Postfix Open Relay Controls
Postfix relay restrictions are missing or mynetworks trusts overly broad ranges.
Data Services HighCWE-441
NET-DB-013Mail Cleartext Authentication Allowed
Postfix or Dovecot permits plaintext authentication without requiring TLS.
Cryptography and TLS MediumCWE-319, CWE-523
NET-DB-014MySQL Symbolic Links Allowed for Tables
MySQL or MariaDB does not disable symbolic links for table files (skip-symbolic-links or symbolic-links=0).
Data Services MediumCWE-59, CWE-732
NET-DB-015MySQL secure_file_priv Not Restricted
secure_file_priv is not set, or is set to an empty value, so LOAD DATA and SELECT ... INTO OUTFILE can read and write anywhere the server process can.
Data Services MediumCWE-73, CWE-250
NET-DB-016MySQL Does Not Require Encrypted Client Connections
require_secure_transport is not ON, so clients may log in and query over plaintext TCP.
Cryptography and TLS MediumCWE-319
NET-DB-017MySQL Error Log Not Configured
log_error is not set, so server errors, failed logins and startup warnings go to the console or syslog without a dedicated, retained file.
Logging and Monitoring LowCWE-778
NET-DB-018MySQL Resolves Client Host Names
skip-name-resolve is not set, so grants that name hosts depend on DNS answers and every connection waits on a reverse lookup.
Data Services LowCWE-350, CWE-290
NET-DB-019PostgreSQL Uses md5 or password Authentication
pg_hba.conf has active rules with the md5 or password method instead of scram-sha-256.
Identity and Authentication MediumCWE-328, CWE-916
NET-DB-020PostgreSQL SSL Not Enabled
postgresql.conf does not set ssl = on, so TCP clients cannot encrypt their sessions and hostssl rules cannot apply.
Cryptography and TLS MediumCWE-319
NET-DB-021PostgreSQL Connection Logging Off
log_connections and log_disconnections are off, so successful logins leave no record.
Logging and Monitoring LowCWE-778
NET-DB-022PostgreSQL Password Encryption Not SCRAM
password_encryption is set to md5, so new and changed passwords are stored as md5 verifiers that work as pass-the-hash credentials.
Identity and Authentication MediumCWE-916, CWE-328
NET-DB-023Redis Dangerous Commands Not Restricted
redis.conf neither renames nor disables CONFIG, FLUSHALL, FLUSHDB, DEBUG and KEYS, and no ACL user excludes the @dangerous category.
Data Services MediumCWE-749
NET-DNS-001BIND Version String Disclosed
named.conf has no version statement in options, so a CHAOS class query for version.bind returns the exact BIND release.
Information Exposure LowCWE-497
NET-DNS-002BIND DNSSEC Validation Disabled
named.conf sets dnssec-validation no, so the resolver accepts forged answers for signed zones.
Data Services MediumCWE-347, CWE-350
NET-FW-001No Active Host Firewall
Checks whether a host firewall (nftables, iptables, ufw or firewalld) is filtering incoming traffic.
Network Exposure MediumCWE-923
NET-FW-002IPv6 Listeners Without IPv6 Firewall
Network-reachable IPv6 listeners exist without a default-deny IPv6 firewall policy.
Network Exposure HighCWE-923
NET-FW-003Firewall Allows Sensitive Services From Anywhere
Checks whether the host firewall explicitly opens a listening database, administrative or application server port to every address on the internet.
Network Exposure HighCWE-923, CWE-1327
NET-FW-004Firewall Rules Open Ports With No Service
Checks for firewall allow rules whose port has no listening service on this machine.
Network Exposure LowCWE-1188
NET-FW-005Container Ports Bypass the Host Firewall
Checks whether Docker publishes container ports through its own iptables chains with no DOCKER-USER filtering.
Network Exposure MediumCWE-923, CWE-1327
NET-FW-006Firewall Exposure Map of Listening Services
Shows, for every network-reachable listening socket, what the host firewall does with traffic to it.
Network Exposure InfoCWE-923
NET-LSN-001Inventory of Listening Network Services
Lists every TCP and UDP port this machine listens on, and whether it is reachable from other machines.
Network Exposure InfoCWE-1327
NET-MAIL-001Postfix SMTP TLS Not Offered or Has No Certificate
smtpd_tls_security_level is none or unset, or is may or encrypt without a server certificate, so incoming SMTP sessions cannot be encrypted.
Cryptography and TLS MediumCWE-319
NET-MAIL-002Postfix Allows TLS 1.0 or 1.1
smtpd_tls_protocols or smtpd_tls_mandatory_protocols is unset or still allows TLSv1 or TLSv1.1.
Cryptography and TLS MediumCWE-326, CWE-327
NET-MAIL-003Postfix VRFY Command Enabled
disable_vrfy_command is not yes, so anyone who connects can ask the server whether a mailbox exists.
Information Exposure LowCWE-204
NET-MAIL-004Dovecot Does Not Require TLS
Dovecot's ssl setting is yes or no instead of required, so IMAP and POP3 clients may use unencrypted sessions.
Cryptography and TLS MediumCWE-319
NET-SVC-001Cleartext Legacy Services Listening
Checks for Telnet, FTP, rsh/rlogin, TFTP, plain POP3/IMAP/LDAP, SNMP v1/v2c and rsync daemons on network-reachable addresses.
Network Exposure HighCWE-319
NET-SVC-002Control Plane or Remote Desktop Ports Network-Reachable
Docker API, Kubernetes API, kubelet, etcd, VNC or RDP listen on network-reachable addresses.
Network Exposure CriticalCWE-1327, CWE-923
NET-SVC-003Network Time Service Amplification Risk
NTP or chrony serves broad clients or permits legacy monitoring commands that can amplify traffic.
Network Exposure HighCWE-406
NET-SVC-004Management Panel or Monitoring Ports Network-Reachable
Webmin, cPanel, WHM, RabbitMQ Management, Consul, the Docker API with TLS or the Prometheus node exporter listen on network-reachable addresses.
Network Exposure MediumCWE-1188, CWE-1327
NET-TLS-001Deprecated TLS 1.0 or 1.1 Accepted
Checks whether local TLS services still accept TLS 1.0 or TLS 1.1.
Cryptography and TLS MediumCWE-326, CWE-327
NET-TLS-002TLS Certificate Expired or Expiring Soon
Checks the expiry date of the certificate each local TLS service presents.
Cryptography and TLS MediumCWE-298
NET-TLS-003Self-Signed or Mismatched TLS Certificate
Checks whether each site presents a self-signed certificate, or one that does not cover its name.
Cryptography and TLS MediumCWE-295, CWE-297
NET-TLS-004Weak TLS 1.2 Cipher Suites Accepted
A local TLS service accepts an RC4, 3DES, or CBC with SHA-1 cipher suite under TLS 1.2.
Cryptography and TLS MediumCWE-326, CWE-327
NET-TLS-005TLS Certificate Public Key Too Small
A TLS leaf certificate uses RSA below 2048 bits or an elliptic curve below 256 bits.
Cryptography and TLS MediumCWE-326
NET-TLS-006SHA-1 Signed TLS Leaf Certificate
A TLS leaf certificate is signed using SHA-1.
Cryptography and TLS MediumCWE-327
WEB-APA-001Apache Reveals Version in Header and Footer
ServerTokens is not Prod or ServerSignature is On, so responses and error pages show the Apache version and modules.
Information Exposure LowCWE-497
WEB-APA-002Apache TRACE Method Enabled
TraceEnable is not set to Off, so the HTTP TRACE method echoes requests back to the client.
Secure Configuration LowCWE-1188, CWE-749
WEB-APA-003Apache Directory Indexes Enabled in Configuration
An Options directive enables Indexes (or All), so folders without an index page list their files.
Information Exposure MediumCWE-548
WEB-APA-004Apache AllowOverride All Permits .htaccess Control
A Directory block sets AllowOverride All, so any .htaccess file under it can change handlers, options and access rules.
Secure Configuration LowCWE-15, CWE-1188
WEB-APA-005Apache Allows TLS 1.0 or 1.1
SSLProtocol permits SSLv3, TLSv1 or TLSv1.1, or is not set on a TLS-enabled server (the default all -SSLv3 allows TLS 1.0 and 1.1).
Cryptography and TLS HighCWE-326, CWE-327
WEB-APA-006Apache Cipher Suite Includes Weak Suites
SSLCipherSuite includes NULL, export, DES or 3DES, RC4, MD5, anonymous or other legacy suites, or SSLHonorCipherOrder forces a legacy order.
Cryptography and TLS HighCWE-327
WEB-APA-007Apache OCSP Stapling Not Enabled
A TLS-enabled Apache does not set SSLUseStapling on.
Cryptography and TLS LowCWE-299
WEB-APA-008Apache Has No Request Filtering Module
Neither mod_security (ModSecurity) nor mod_evasive is loaded, so Apache has no request filtering or flood control in front of the application.
Secure Configuration InfoCWE-1188
WEB-APA-009Apache ETag Reveals Inode Numbers
FileETag includes INode (or All), so ETag headers leak filesystem inode numbers of served files.
Information Exposure LowCWE-497
WEB-APA-010Apache Serves Repository and Environment Files
No DirectoryMatch, FilesMatch or RedirectMatch rule denies .git, .svn, .hg or .env paths, so they are served if present under a document root.
Information Exposure LowCWE-538, CWE-527
WEB-APA-011Apache Has No Slow Request Protection
mod_reqtimeout does not appear to be loaded and no RequestReadTimeout is set, so a client that sends its request very slowly can hold a worker for the whole Timeout.
Secure Configuration MediumCWE-770
WEB-APP-001Laravel Debug Mode On or Application Key Missing
Checks Laravel .env files for APP_DEBUG=true or an empty APP_KEY.
Information Exposure HighCWE-489, CWE-209, CWE-321
WEB-APP-002Application .env File Readable by All Users
Checks the permission bits of framework .env files for world-read access.
Access Control MediumCWE-732, CWE-312
WEB-APP-003Symfony Running in the Development Environment
Checks Symfony .env files for APP_ENV=dev or APP_DEBUG=1.
Information Exposure HighCWE-489, CWE-215
WEB-APP-004Rails Master Key or Secrets File Exposed
Checks Rails config/master.key, credentials key files and secrets.yml for world-read permissions or a location inside a web root.
Access Control HighCWE-732, CWE-312, CWE-321
WEB-APP-005Rails Production Does Not Force HTTPS
Checks config/environments/production.rb for config.force_ssl = true.
Web Application Security MediumCWE-319, CWE-614
WEB-APP-006Spring Boot Actuator Endpoints Fully Exposed
Checks Spring Boot application properties for management.endpoints.web.exposure.include=* and probes the local site for an open /actuator/env.
Information Exposure HighCWE-306, CWE-497
WEB-APP-007Flask Debug Mode Enabled in Application Code
Looks for app.run(debug=True) or app.debug = True in Flask entry files. A heuristic; the service check WEB-PY-004 covers the environment switches.
Secure Configuration LowCWE-489, CWE-215
WEB-APP-008Dependency Lock Files Older Than a Year
Reports composer.lock, package-lock.json, yarn.lock, Gemfile.lock and poetry.lock files not modified for 365 days or more (dependency freshness). Informational.
Patch and Vulnerability Management InfoCWE-1104, CWE-1395
WEB-APP-009Git Repository Stored Inside a Web Root
Looks on disk for a .git folder directly inside each web document root.
Information Exposure MediumCWE-527, CWE-538
WEB-APP-010Framework Writable Folders Open to All Users
Checks Laravel and Symfony cache, log and storage folders for world-write permission.
Access Control MediumCWE-732, CWE-94
WEB-CK-001Cookies Missing Secure, HttpOnly or SameSite
Checks the security flags on cookies the home page sets.
Web Application Security MediumCWE-614, CWE-1004, CWE-1275
WEB-CMS-001WordPress Version Disclosed
Checks whether WordPress sites reveal their exact version in the page or in readme.html.
Information Exposure LowCWE-497
WEB-CMS-002WordPress XML-RPC Interface Enabled
Checks whether xmlrpc.php answers on WordPress sites.
Web Application Security LowCWE-307
WEB-CMS-003WordPress User Accounts Enumerable
Checks whether the WordPress REST API lists user accounts to anonymous visitors.
Information Exposure LowCWE-204
WEB-CMS-004CMS Configuration Readable by All Users
Checks whether wp-config.php, Joomla configuration.php or Drupal settings.php can be read by every local user.
Access Control HighCWE-732, CWE-260
WEB-CMS-005CMS Configuration Writable by Other Users
Checks whether wp-config.php, Joomla configuration.php or Drupal settings.php is group- or world-writable.
Access Control HighCWE-732
WEB-CMS-006WordPress Shows Debug Output to Visitors
Checks wp-config.php for WP_DEBUG enabled without WP_DEBUG_DISPLAY set to false.
Information Exposure MediumCWE-209, CWE-489
WEB-CMS-007WordPress Dashboard File Editor Enabled
Checks whether wp-config.php leaves the built-in theme and plugin file editor enabled.
Secure Configuration LowCWE-94, CWE-1188
WEB-CMS-008WordPress Automatic Updates Disabled
Checks whether wp-config.php turns off WordPress background updates, including security releases.
Patch and Vulnerability Management MediumCWE-1104
WEB-CMS-009Joomla Debug or Verbose Error Reporting Enabled
Checks Joomla configuration.php for debug mode or maximum/development error reporting.
Information Exposure MediumCWE-209, CWE-489
WEB-CMS-010Joomla Version Disclosed
Checks whether a Joomla site serves its version manifest at /administrator/manifests/files/joomla.xml.
Information Exposure LowCWE-497
WEB-CMS-011Drupal Version Disclosed by Changelog
Checks whether a Drupal site serves CHANGELOG.txt, which names the exact Drupal version.
Information Exposure LowCWE-497
WEB-CMS-012Drupal Core Past End of Life
Reads the installed Drupal core version from disk and compares its major release with the Drupal security coverage dates.
Patch and Vulnerability Management HighCWE-1104
WEB-CMS-013Drupal Trusted Host Patterns Not Set
Checks Drupal settings.php for the trusted_host_patterns setting.
Web Application Security MediumCWE-644, CWE-346
WEB-CMS-014Joomla Core Past End of Life
Reads the installed Joomla version from administrator/manifests/files/joomla.xml on disk and compares it with the Joomla support dates.
Patch and Vulnerability Management HighCWE-1104
WEB-CMS-015Magento Not in Production Mode
Checks app/etc/env.php for a MAGE_MODE other than production.
Information Exposure MediumCWE-489, CWE-209
WEB-CMS-016Ghost Configured With a Plain HTTP Site URL
Checks Ghost config.production.json for a url that starts with http://.
Web Application Security MediumCWE-319
WEB-CMS-017WordPress Cron Reachable by Visitors
Reports whether /wp-cron.php answers to anonymous requests on WordPress sites. Informational.
Secure Configuration InfoCWE-770
WEB-CMS-018WordPress Author Archive Reveals Login Names
Checks whether /?author=1 redirects to an author archive, which exposes the first account's login name in the address.
Information Exposure LowCWE-204
WEB-CMS-019Drupal update.php Open Without Authentication
Checks Drupal settings.php for $settings['update_free_access'] = TRUE.
Secure Configuration HighCWE-306
WEB-COR-001Cross-Origin Resource Sharing Allows Any Origin With Credentials
Checks the home page's CORS headers for a wildcard origin combined with credentials, or an origin of null.
Web Application Security MediumCWE-942
WEB-CVE-001Vulnerable Web Application Libraries
Matches local web library versions against offline OSV advisories; WordPress core is inventoried and reported Incomplete because OSV publishes no WordPress feed.
Patch and Vulnerability Management HighCWE-1104
WEB-DOC-001Secrets or Backups Stored Inside a Web Root
Looks on disk inside each web document root for environment files, database dumps, backups, archives and private keys.
Information Exposure HighCWE-530, CWE-538, CWE-312
WEB-DOC-002Web Root Files Writable by Other Users
Looks for world-writable files inside web document roots.
Access Control HighCWE-732
WEB-DOC-003Archives or Certificates Inside a Web Root
Lists archives (*.tar.gz, *.tgz, *.tar, *.7z) and certificate files (*.pem, *.crt) inside each web document root for review, outside download folders.
Information Exposure MediumCWE-538, CWE-552
WEB-EXP-001Git Repository Exposed on the Website
Checks whether the .git folder can be downloaded from each site.
Information Exposure HighCWE-527, CWE-538
WEB-EXP-002Environment or Secrets File Exposed
Checks whether .env and similar configuration files can be downloaded.
Information Exposure CriticalCWE-538, CWE-260
WEB-EXP-003PHP Information Page Exposed
Checks for phpinfo() pages left on the site.
Information Exposure MediumCWE-497
WEB-EXP-004Backup or Database Dump Files Downloadable
Checks for common backup archives and SQL dumps left in the web root.
Information Exposure HighCWE-530
WEB-EXP-005Directory Listing Enabled
Checks whether the web server lists folder contents when there is no index page.
Information Exposure MediumCWE-548
WEB-EXP-006Web Server Status Page Exposed
Checks whether Apache server-status/server-info or nginx stub_status are reachable for each site.
Information Exposure MediumCWE-497
WEB-EXP-007Other Version Control Metadata Exposed
Checks for exposed Subversion, Mercurial and Bazaar metadata folders.
Information Exposure HighCWE-527
WEB-EXP-008Log Files Downloadable From the Website
Checks for application and debug logs published under the web root.
Information Exposure HighCWE-532, CWE-538
WEB-EXP-009Dependency Manifests Exposed
Checks whether package manifests and lock files are downloadable.
Information Exposure LowCWE-538
WEB-EXP-010Default Web Server Page Served
Checks whether a site shows the web server's default installation page.
Information Exposure LowCWE-1188, CWE-497
WEB-EXP-011Database Administration Tool Exposed
Checks whether phpMyAdmin or Adminer login pages are publicly reachable.
Information Exposure MediumCWE-1188, CWE-306
WEB-EXP-012Framework Debug Pages Exposed
Checks for development debug tools and verbose error pages left enabled in production.
Information Exposure HighCWE-489, CWE-209
WEB-HDR-001Missing HTTP Strict Transport Security (HSTS)
Checks that HTTPS sites tell browsers to always use HTTPS, for at least six months.
Web Application Security MediumCWE-319, CWE-523
WEB-HDR-002Missing Content Security Policy
Checks that each site sends a Content-Security-Policy header.
Web Application Security MediumCWE-1021, CWE-79
WEB-HDR-003Site Can Be Framed (Clickjacking)
Checks that each site forbids being embedded in other sites' frames.
Web Application Security MediumCWE-1021
WEB-HDR-004Missing X-Content-Type-Options
Checks that browsers are told not to guess (sniff) content types.
Web Application Security LowCWE-430
WEB-HDR-005Missing Referrer-Policy
Checks that each site limits what URL information is leaked to other sites in the Referer header.
Web Application Security LowCWE-201
WEB-HDR-006Missing Permissions-Policy
Checks that each site restricts powerful browser features (camera, microphone, geolocation) it does not use.
Web Application Security LowCWE-1188
WEB-HDR-007Server Software Version Disclosed
Checks whether response headers reveal exact web server, PHP or framework versions.
Information Exposure LowCWE-497
WEB-NGX-001nginx Version Shown in Server Header
nginx does not set server_tokens off, so responses and error pages carry the exact nginx version.
Information Exposure LowCWE-497
WEB-NGX-002nginx Directory Listing Enabled in Configuration
An nginx server or location block sets autoindex on.
Information Exposure MediumCWE-548
WEB-NGX-003nginx Allows TLS 1.0 or 1.1
ssl_protocols lists SSLv3, TLSv1 or TLSv1.1, or is not set on a TLS-enabled server, so the allowed version depends on the nginx build.
Cryptography and TLS HighCWE-326, CWE-327
WEB-NGX-004nginx Cipher List Includes Weak Suites
ssl_ciphers includes NULL, export, DES or 3DES, RC4, MD5, anonymous or other legacy suites, or ssl_prefer_server_ciphers forces a legacy order.
Cryptography and TLS HighCWE-327
WEB-NGX-005nginx OCSP Stapling Off or Session Tickets On
A TLS-enabled nginx does not enable ssl_stapling, or leaves ssl_session_tickets on.
Cryptography and TLS LowCWE-299, CWE-326
WEB-NGX-006nginx Request Limits Not Configured
nginx sets no client_max_body_size, limit_req_zone or limit_conn_zone, so request size and rate rely on defaults alone.
Secure Configuration InfoCWE-770, CWE-307
WEB-NGX-007nginx Serves Hidden Files and Folders
No location block denies paths that begin with a dot, so .git, .env, .svn and .htaccess files under the document root are served if present.
Information Exposure MediumCWE-538, CWE-527
WEB-NODE-001Node.js Version Past End of Life
Checks whether the installed Node.js runtime is a release line that no longer receives security fixes.
Patch and Vulnerability Management HighCWE-1104
WEB-NODE-002Node.js Debugger (Inspector) Enabled in a Service
Checks whether a Node.js service is started with --inspect, which opens the V8 debugger.
Secure Configuration CriticalCWE-489, CWE-306
WEB-NODE-003Node.js Service Not Running in Production Mode
Checks whether Node.js services set NODE_ENV=production.
Secure Configuration LowCWE-489, CWE-209
WEB-PHP-001PHP Displays Errors to Visitors
Checks whether PHP prints error messages into web pages.
Secure Configuration MediumCWE-209
WEB-PHP-002PHP Version Exposed in Headers
Checks whether PHP adds an X-Powered-By header with its version.
Information Exposure LowCWE-497
WEB-PHP-003PHP Allows Remote File Inclusion
Checks whether include() and require() may load code from URLs.
Secure Configuration HighCWE-98
WEB-PHP-004PHP Version Past End of Security Support
Checks whether the installed PHP branch still receives security fixes from the PHP project.
Patch and Vulnerability Management HighCWE-1104
WEB-PHP-005PHP Session Cookies Not Hardened
Checks PHP's session settings: HttpOnly and SameSite cookies and strict session id mode.
Web Application Security MediumCWE-1004, CWE-384
WEB-PY-001Django Debug Mode Enabled
Checks Django settings files for DEBUG = True with no production override.
Information Exposure HighCWE-489, CWE-215
WEB-PY-002Django Accepts Any Host Header
Checks Django settings for ALLOWED_HOSTS = ['*'].
Web Application Security MediumCWE-346
WEB-PY-003Django Uses the Generated Development Secret Key
Checks Django settings for a SECRET_KEY that starts with django-insecure-, the marker of the key generated by startproject.
Cryptography and TLS HighCWE-798, CWE-321
WEB-PY-004Python Interactive Debugger Enabled in a Service
Checks whether a service runs Flask or Werkzeug with the interactive debugger enabled.
Secure Configuration CriticalCWE-489, CWE-94
WEB-PY-005Python Development Server Used in a Service
Checks whether a service runs a development web server such as manage.py runserver, flask run or python -m http.server.
Secure Configuration MediumCWE-489, CWE-1188
WEB-SEC-001No security.txt Contact File
Checks whether each site publishes /.well-known/security.txt (RFC 9116).
Web Application Security InfoCWE-1188
WEB-TLS-001Site Available Over Plain HTTP Without Redirect
Checks that every site redirects http:// requests to https://.
Cryptography and TLS MediumCWE-319
WEB-TOM-001Tomcat Manager Reachable Without Address Restriction
Checks whether the Tomcat Manager or Host Manager application is deployed without an address filter limiting it to localhost.
Web Application Security HighCWE-1188, CWE-923
WEB-TOM-002Tomcat Administrative Users With Default or Weak Passwords
Checks tomcat-users.xml for manager or admin accounts with well-known default passwords, passwords equal to the user name, or short passwords.
Identity and Authentication CriticalCWE-1392, CWE-521, CWE-256
WEB-TOM-003Tomcat Shutdown Port Uses the Default Command
Checks whether Tomcat's shutdown port is enabled with the well-known default command SHUTDOWN.
Secure Configuration MediumCWE-1188
WEB-TOM-004Tomcat AJP Connector Unprotected (Ghostcat)
Checks for an active AJP connector that has no shared secret and is not bound to loopback, or that disables the secret requirement.
Web Application Security CriticalCWE-306, CWE-1327
WEB-TOM-005Tomcat Example and Documentation Applications Deployed
Checks whether the examples or docs web applications that ship with Tomcat are deployed.
Information Exposure MediumCWE-1188

Dataset

The whole catalogue is published as one JSON file, generated from the code at every build: id, title, domain, severity, CVSS v3.1 vector, control category with its CIS Controls v8 and NIST CSF 2.0 mapping, CWE, OWASP Top 10, ASVS, WSTG and NIST SP 800-53 identifiers, the Academy modules that teach each check, and a permalink to the source file at this commit.

catalogue.json llms-full.txt (Plain Text)

Licence: OpenVAPT Source-Available Licence 1.3. Credit is required when you copy or adapt the data: "Data from OpenVAPT (openvapt.com), version 0.1.0-alpha.6, built by AI Cybersecurity Engineers, used under the OpenVAPT Source-Available Licence 1.3." See How to Cite OpenVAPT. Severities describe a typical internet-facing server; they are not a measure of your own risk.