PAGES
← all tools
◆ Identity & Access Management

sudo

v1.9.17 open-source

Sudo is a program that allows a sysadmin to give limited root privileges to users and log root activity.

Summary

sudo is an open-source, free command-line tool that lets a system administrator grant limited root privileges to specific users and logs what they do with them, rather than handing out full superuser access. It runs on Linux and Unix-like systems as the sudo command invoked before another command, configured through the sudoers policy file, which makes it relevant to sysadmins and platform teams managing shared servers rather than to end users. It sits in the identity and access management space, specifically privilege escalationprivilege escalationGaining permissions beyond those an account or process initially had. It can turn limited access into administrator control or access to another user's resources. and authorization control, a role it has effectively defined rather than adopted from a peer product. First committed in 1993 and still under active development, with 81 contributors and 300 commits in the past year, it remains a maintained, current piece of core Unix infrastructure.

Sudo is a program that allows a sysadmin to give limited root privileges to users and log root activity.

How sudo helps

Which of my users can run root-level commands, and what exactly are they allowed to run?

checks the requested command against the sudoers policy file's rules for that user and host, and permits or denies based on the matching entry rather than granting blanket root access

Who ran what as root on this system, and when?

logs each escalated command with the invoking user, so past root activity can be reconstructed after the fact

Did someone try to run a command they weren't authorized for?

denies the attempt against the sudoers rules and can show the user a custom message explaining why, instead of a silent or generic failure

Is a stale root session on this machine still letting someone skip authentication?

tracks per-command timestamp entries and clears all of them across every timestamp type when credentials are invalidated, closing gaps a partial reset would leave open

Could someone escalate privileges by planting a file in the current directory?

ignores relative entries in the search path by default, so a command in the working directory cannot be substituted for a trusted one

Is the terminal a logged command actually ran from the one the audit trail claims?

resolves the real terminal device even when standard device mapping is unavailable, so the recorded session can be tied to the correct tty

all 27 features, with the evidence for each →

Languages

Arabic, Catalan, Chinese (Simplified), Chinese (Traditional), Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, Indonesian, Italian, Japanese, Korean, Latvian, Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Turkish, Ukrainian, Vietnamese Interface: Arabic, Catalan, Chinese (Simplified), Chinese (Traditional), Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, Indonesian, Italian, Japanese, Korean, Latvian, Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Turkish, Ukrainian, Vietnamese

Features

27 capabilities · 1 backed by code, an API document or a real run

Built from sudo's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

What sudo offers you

  • Command-line interface6
  • Administrative audit log3
  • Plugin system2
  • CSV data export1
  • Plugin API support1
  • Python scripting support1
  • Scripting language support1
All capabilities 27 capabilities
Command execution behaviour configuration verified Controls how sudo searches for and executes commands, including whether to search the current directory and whether to display insult messages on authentication failure. 14 releases · 2 other sources · first seen Sep 2019

release 14 total

  • The ignore_dot sudoers setting is now on by default, hardening PATH against current-directory injection; a new --disable-ignore-dot configure option allows opt-out. v1.9.17 · Jun 2025 · source · release history
  • The ignore_dot sudoers setting is now on by default; existing setups that rely on . in PATH being honored will break unless --disable-ignore-dot is used at build time or ignore_dot is explicitly set to off in sudoers. v1.9.17 · Jun 2025 · source · release history
  • Sudo insults are now compiled in by default; enabled via --with-insults configure option or the insults sudoers option. v1.9.16 · Sep 2024 · source · release history
  • Added support for POSIX extended regular expressions in sudoers commands/arguments using ^...$ syntax. v1.9.10 · Mar 2022 · source · release history
  • The core dump size limit is now set to 0 by default unless overridden by the sudoers file. v1.9.9 · Jan 2022 · source · release history
  • Allows setting resource limits directly in the sudoers file via new config keys. v1.9.9 · Jan 2022 · source · release history

command line

  • --disable-ignore-dot — By default, sudo will not search for a command in the current v1.9.17 · Jun 2025 · command-line history
  • --without-insults — By default, sudo will include support for insults that can be SUDO_1_9_16 · Aug 2024 · command-line history
Fine-grained I/O and stream logging shipped Log specific input/output streams (stdin, stdout, stderr, ttyin, ttyout) for detailed auditing. 10 releases · 3 other sources · first seen Sep 2019

Also counts toward: Administrative audit log

release 10 total

  • Adds log_stdin, log_stdout, log_stderr, log_ttyin, and log_ttyout sudoers settings for fine-grained I/O logging support v1.9.12 · Oct 2022 · source · release history
  • Adds the -F (follow) flag to sudoreplay to replay sessions still in progress v1.9.1 · Jun 2020 · source · release history
  • sudo_sendlog utility sends existing sudo I/O logs to a centralized server v1.9.0 · May 2020 · source · release history
  • sudo_logsrvd logging daemon enables centralized I/O logs over TLS when built with --enable-openssl v1.9.0 · May 2020 · source · release history
  • log_servers sudoers setting configures central log server endpoints v1.9.0 · May 2020 · source · release history
  • Adds _log_allowed_ and _log_denied_ sudoers settings to disable logging of allowed/denied commands v1.8.29 · Oct 2019 · source · release history

example

  • Log specific streams in sudoers for detailed auditing of command execution # In /etc/sudoers: Defaults log_stdin, log_stdout v1.9.12 · Oct 2022 · source
  • Watch live I/O logs for an active sudo session sudoreplay -F <session_id> v1.9.1 · Jun 2020 · source
  • Replay a sudo session including the time it was suspended. sudoreplay -S <session_id> v1.8.26 · Sep 2019 · source
Configuration path and include management shipped Manage sudoers file paths, include directory warnings, alternate admin configuration directories, and character escaping in include directives. 7 releases · 2 other sources · first seen Sep 2019

release 7 total

  • Replaces path separator characters ('/') in user, group, or host names with underscores when expanding escapes in @include and @includedir directives as well as the iolog_file and iolog_dir sudoers Default settings 1.9.15 · Nov 2023 · source · release history
  • Adds --enable-adminconf configure option to specify a preferred configuration directory separate from sysconfdir v1.9.14 · Jun 2023 · source · release history
  • The visudo utility now displays a warning when it ignores a file in an include dir such as /etc/sudoers.d. 1.9.14 · Jun 2023 · source · release history
  • Converts sudo configuration file paths to colon-separated lists, allowing configuration files on read-only filesystems with local modifications in writable directories v1.9.14 · Jun 2023 · source · release history
  • Sudo configuration file paths have been converted to colon-separated lists of paths. 1.9.14 · Jun 2023 · source · release history
  • The new --enable-adminconf configure option can be used to specify a directory that is searched for configuration files in preference to the sysconfdir. 1.9.14 · Jun 2023 · source · release history

example

  • Specify an alternate admin configuration directory during build to override the default sysconfdir search path. ./configure --enable-adminconf=/opt/sudo/conf 1.9.14 · Jun 2023 · source
  • Edit a sudoers file located in a non-standard directory using visudo. visudo /etc/sudoers.local v1.8.27 · Sep 2019 · source
Entitlement reporting and export shipped Export sudoers rules to CSV format for entitlement auditing. 6 releases · 2 other sources · first seen Sep 2019

Also counts toward: Command-line interface, CSV data export

release

  • cvtsudoers now supports output in CSV format via a new flag. v1.9.9 · Jan 2022 · source · release history
  • lecture_file no longer accepts arbitrary file types; it must refer to a regular file or symbolic link to a regular file v1.9.5 · Jan 2021 · source · release history
  • lecture_file must now point to a regular file or symlink to one; non-regular files are rejected v1.9.5 · Jan 2021 · source · release history
  • The sudoers LDAP back-end now supports negated sudoRunAsUser and sudoRunAsGroup entries. v1.8.26 · Sep 2019 · source · release history
  • Supports OpenLDAP's TLS_REQCERT setting in ldap.conf for configuring TLS certificate verification. v1.8.26 · Sep 2019 · source · release history
  • The testsudoers utility now supports querying an LDIF-format policy 1.8.25 · Sep 2019 · source · release history

example

  • Export sudoers rules to CSV for entitlement reporting. cvtsudoers -f /etc/sudoers -t csv > output.csv v1.9.9 · Jan 2022 · source
  • Configure TLS certificate verification for the LDAP backend using OpenLDAP's standard setting. # In ldap.conf: TLS_REQCERT allow v1.8.26 · Sep 2019 · source
JSON log formatting options shipped Use compact or pretty JSON formats for sudo audit logs. 6 releases · 1 other source · first seen Nov 2020

Also counts toward: Administrative audit log

release

  • The existing json value for the log_format sudoers option is now aliased to json_pretty; in a future release json will alias to json_compact, changing default JSON log formatting for setups using log_format=json. v1.9.16 · Sep 2024 · source · release history
  • Adds json_compact value for the log_format sudoers option, enabling compact JSON output when logging to a file; existing json value aliased to json_pretty. v1.9.16 · Sep 2024 · source · release history
  • Adds submitenv key to JSON logs to record the invoking user's environment; removed runenv for rejected commands. v1.9.15 · Nov 2023 · source · release history
  • The runenv key is no longer logged for rejected commands; submitenv replaces it for the invoking user's context. v1.9.15 · Nov 2023 · source · release history
  • Adds admin_flag sudoers option to make the use of the ~/.sudo_as_admin_successful file configurable on systems built with --enable-admin-flag. v1.9.6 · Mar 2021 · source · release history
  • sudoers plugin now supports JSON-formatted logs via the log_format option (values: sudo, json). Default remains sudo. v1.9.4 · Nov 2020 · source · release history

example

  • Configure sudoers to allow control over the ~/.sudo_as_admin_successful file behavior. admin_flag v1.9.6 · Mar 2021 · source
Sudoers file validation and integrity checks shipped Check sudoers file ownership, permissions, and syntax during editing or verification. 6 releases · 1 other source · first seen Sep 2019

release

  • Logs the invoking user's environment as submitenv in JSON logs instead of logging the command's environment (runenv) for rejected commands 1.9.15 · Nov 2023 · source · release history
  • Logs the sudoers source in the JSON event log to identify which rule matched. 1.9.15 · Nov 2023 · source · release history
  • Adds -O and -P options to visudo to check or set file ownership and permissions. v1.9.9 · Jan 2022 · source · release history
  • The historic behavior of refusing to run upon sudoers syntax error is restored if error_recovery=false is not added to the sudoers plugin's optional arguments in sudo.conf; the new default is recovery v1.9.3 · Sep 2020 · source · release history
  • In visudo, you can now specify the sudoers file path without using the -f option. 1.8.27 · Sep 2019 · source · release history
  • The testsudoers utility now supports querying an LDIF-format policy. v1.8.25 · Sep 2019 · source · release history

example

  • Check sudoers file ownership and permissions during a syntax check run. visudo -c -O root -P 0440 /etc/sudoers v1.9.9 · Jan 2022 · source
Pseudo-terminal and background execution support shipped Manage pseudo-terminal allocation, terminal settings initialization, and background process execution for commands run via sudo. 6 releases · first seen Sep 2019

release

  • Defaults use_pty is now enabled by default; run sudo with Defaults !use_pty in /etc/sudoers to restore historic behavior. 1.9.14 · Jun 2023 · source · release history
  • The use_pty sudoers option is now enabled by default; add Defaults !use_pty to restore the historic behavior where a command is run in the user's terminal v1.9.14 · Jun 2023 · source · release history
  • When running a command in a pseudo-terminal, sudo will initialize the terminal settings even if it is the background process. 1.9.14 · Jun 2023 · source · release history
  • Sudo's -b option now works when the command is run in a pseudo-terminal. 1.9.14 · Jun 2023 · source · release history
  • sudo no longer forces a command into a pseudo-tty if an I/O logging plugin is configured but fails to actually log any I/O. v1.8.27 · Sep 2019 · source · release history
  • On HP-UX, sudo now updates the utmps file when running a command in a pseudo-tty (previously only updated utmp and utmpx). v1.8.27 · Sep 2019 · source · release history
Command interception and integrity verification shipped Use ptrace to intercept, log, and verify subcommands and ensure command parameters have not changed since authorization. 3 releases · 2 other sources · first seen Jun 2022

release

  • Enables _intercept_ and _log_subcmds_ support for both 32-bit and 64-bit binaries in AIX and Solaris packages. v1.9.15 · Nov 2023 · source · release history
  • Adds intercept_verify sudoers setting to verify command path, arguments and environment have not changed since authorization in ptrace-based intercept mode v1.9.12 · Oct 2022 · source · release history
  • Adds intercept_type sudoers setting to control ptrace(2) usage for _intercept_ and _log_subcmds_ on Linux with seccomp support v1.9.11 · Jun 2022 · source · release history

example

  • Enable verification of command integrity in intercept mode to ensure authorized parameters haven't been tampered with # In /etc/sudoers: Defaults intercept_verify v1.9.12 · Oct 2022 · source
  • Force sudo to use ptrace-based interception for subcommand logging on supported Linux architectures. Defaults intercept_type=\"ptrace\" myuser ALL=(ALL) _log_subcmds_ /bin/ls v1.9.11 · Jun 2022 · source
Centralized I/O log collection and forwarding shipped Enable sudo to collect detailed input/output logs and transmit them securely to a centralized server for auditing. 5 releases · first seen May 2020

Also counts toward: Administrative audit log

release

  • sudo_logsrvd gains a relay mode for creating log server hierarchies, with the store_first setting to buffer I/O locally before relaying. v1.9.7 · May 2021 · source · release history
  • The sudo_sendlog utility now supports the -s flag to stop sending I/O records after a specified elapsed time. v1.9.7 · May 2021 · source · release history
  • sudo_sendlog utility sends existing sudo I/O logs to a centralized server v1.9.0 · May 2020 · source · release history
  • sudo_logsrvd logging daemon enables centralized I/O logs over TLS when built with --enable-openssl v1.9.0 · May 2020 · source · release history
  • log_servers sudoers setting configures central log server endpoints v1.9.0 · May 2020 · source · release history
Secure path configuration defaults shipped Control the default secure_path behavior in the shipped sudoers file via build options or settings. 3 releases · 1 other source · first seen Sep 2024

release

  • New --with-secure-path-value=no configure option lets packagers ship the default sudoers file with the secure_path line commented out. v1.9.16p1 · Nov 2024 · source · release history
  • Default sudoers file now enables secure_path by default and preserves EDITOR, VISUAL, and SUDO_EDITOR when running visudo; new --with-secure-path-value configure option sets the default value. v1.9.16 · Sep 2024 · source · release history
  • Adds json_compact value for the log_format sudoers option, enabling compact JSON output when logging to a file; existing json value aliased to json_pretty. v1.9.16 · Sep 2024 · source · release history

example

  • Build sudo so the default sudoers ships with secure_path disabled — useful for distro packages that manage PATH policies separately. ./configure --with-secure-path-value=no v1.9.16p1 · Nov 2024 · source
Sudoers syntax debugging aids shipped Improve error reporting and alias warnings with file, line number, and column details. 4 releases · first seen Nov 2020

release

  • Duplicate alias warnings in sudoers now include the file and line number of the previous definition, making policy debugging faster. v1.9.16p1 · Nov 2024 · source · release history
  • Error messages sent via email now include the file name, line number, and column of the error, and aggregate multiple errors in a single message v1.9.11 · Jun 2022 · source · release history
  • visudo utility now correctly handles EDITOR environment variables containing single or double quotes in command arguments. v1.9.4 · Nov 2020 · source · release history
  • visudo syntax error messages now include the column number in addition to the line number. v1.9.4 · Nov 2020 · source · release history
Non-interactive authentication support shipped Enable PAM authentication in non-interactive mode and verify cached credentials without updating them. 4 releases · first seen May 2020

Also counts toward: Command-line interface

release

  • Adds -N (no-update) CLI option to prevent credential cache updates, enabling sudo -Nnv to verify if a user's credentials are currently valid v1.9.12 · Oct 2022 · source · release history
  • Added noninteractive_auth sudoers option to enable PAM authentication when -n is used. v1.9.10 · Mar 2022 · source · release history
  • -S command line option causes the sudo conversation function to write to standard output or standard error instead of the terminal device v1.9.0 · May 2020 · source · release history
  • pam_rhost sudoers setting enables or disables setting the PAM remote host value during PAM session setup v1.9.0 · May 2020 · source · release history
Password logging control shipped Configure password logging behavior via sudoers options or sudo_logsrvd settings. 3 releases · 1 other source · first seen Nov 2020

release

  • Added log_passwords and passprompt_regex settings to sudo_logsrvd configuration. v1.9.10 · Mar 2022 · source · release history
  • Added log_passwords and passprompt_regex sudoers options to control password logging behavior. v1.9.10 · Mar 2022 · source · release history
  • An empty value for the pid_file setting in sudo_logsrvd.conf disables the process ID file generation. v1.9.4 · Nov 2020 · source · release history

example

  • Configure sudo_logsrvd to disable PID file creation by setting pid_file to an empty string. # In /etc/sudo_logsrvd.conf pid_file = "" v1.9.4 · Nov 2020 · source
Command interception policy controls shipped Configure the sudoers rules governing which sub-commands are intercepted, how authentication is handled during interception, and whether set-ID programs are allowed in intercept mode. 4 releases · first seen Sep 2021

release

  • Adds intercept_authenticate sudoers setting to control password prompting for intercepted sub-commands v1.9.8 · Sep 2021 · source · release history
  • Adds intercept Defaults setting and INTERCEPT command tag to restrict or monitor sub-commands in privileged shells v1.9.8 · Sep 2021 · source · release history
  • Adds intercept_allow_setid sudoers setting to permit set-user-ID/set-group-ID programs in intercept mode v1.9.8 · Sep 2021 · source · release history
  • Adds log_subcmds sudoers setting to log additional commands run within a privileged shell via interception v1.9.8 · Sep 2021 · source · release history
PAM message passthrough shipped Allow PAM module messages to surface to the user during authentication. 2 releases · 1 other source · first seen Sep 2019

release

  • Adds pam_silent sudoers option, which can be negated (!pam_silent) to allow PAM authentication module output to reach the user. v1.9.16 · Sep 2024 · source · release history
  • PAM sessions opened by sudo now set the silent flag, except when running sudo -s or sudo -i, preventing pam_lastlog output for each command. v1.8.27 · Sep 2019 · source · release history

example

  • Allow PAM module messages (e.g. password expiry warnings) to surface to the user during sudo authentication. echo 'Defaults !pam_silent' >> /etc/sudoers.d/pam_output v1.9.16 · Sep 2024 · source
Developer mode deprecation and plugin safety shipped Remove the developer_mode setting and stop checking ownership/mode of loaded plugins. 3 releases · first seen Mar 2021

release

  • Sudo no longer checks ownership/mode of loaded plugins; developer_mode setting is removed. v1.9.13 · Feb 2023 · source · release history
  • The developer_mode setting in sudo.conf is no longer recognized and should be removed from configuration files. v1.9.13 · Feb 2023 · source · release history
  • Adds --disable-leaks configure option to suppress memory leaks on exit for use with development tools that measure memory leaks. v1.9.6 · Mar 2021 · source · release history
Application confinement profiles shipped Confine command execution to specific AppArmor profiles or use seccomp-based interception. 2 releases · 1 other source · first seen Jan 2021

release

  • Adds APPARMOR_PROFILE sudoers option to confine commands by a named AppArmor profile v1.9.11 · Jun 2022 · source · release history
  • Adds the selinux sudoers option to disable SELinux RBAC support in sudoedit v1.9.5 · Jan 2021 · source · release history

example

  • Run a command confined by a specific AppArmor profile via sudoers. myuser ALL=(ALL) APPARMOR_PROFILE=\"usr.sbin.my_service\" /usr/bin/my_service v1.9.11 · Jun 2022 · source
Working directory and root confinement shipped Configure sudo to enforce specific working directories or chroot environments for executed commands. 3 releases · first seen Sep 2020

Also counts toward: Command-line interface

release

  • Adds CWD and CHROOT sudoers options to set the working directory or root directory on a per-command basis v1.9.3 · Sep 2020 · source · release history
  • Adds -D (--chdir) and -R (--chroot) command-line flags to invoke CWD/CHROOT functionality when sudoers allows it v1.9.3 · Sep 2020 · source · release history
  • Adds runchroot and runcwd Defaults settings for global working directory or root directory configuration v1.9.3 · Sep 2020 · source · release history
Unknown runas ID handling policy shipped Configure whether sudo allows commands to run as users or groups not explicitly defined in the sudoers file, and validate that runas users have valid shells. 3 releases · first seen Dec 2019

release

  • Adds the _allow_unknown_runas_id_ sudoers setting to enable or disable support for unknown user or group IDs, which is now disabled by default v1.8.30 · Dec 2019 · source · release history
  • The default behavior for unknown user or group IDs has changed; previously allowed via ALL alias, it now requires the _allow_unknown_runas_id_ sudoers setting to be explicitly enabled v1.8.30 · Dec 2019 · source · release history
  • Adds the _runas_check_shell_ sudoers setting to require that the runas user has a shell listed in /etc/shells, preventing commands from running as users like bin without a valid shell v1.8.30 · Dec 2019 · source · release history
Custom denial messaging shipped Display custom text to users when a command is denied by sudoers policy. 1 release · 1 other source · first seen Sep 2024

release

  • Adds cmddenial_message sudoers option to display custom text to users when a command is denied by the sudoers policy. v1.9.16 · Sep 2024 · source · release history

example

  • Show a custom denial message to users blocked by sudoers policy, e.g. to point them to a ticketing system. echo 'Defaults cmddenial_message="Access denied. Request access at https://helpdesk.example.com"' >> /etc/sudoers.d/denial_msg v1.9.16 · Sep 2024 · source
Netgroup resolution configuration shipped Configure sudo to perform independent netgroup lookups using local configuration files instead of system libraries. 2 releases · first seen Jun 2023

release

  • When NETGROUP_BASE is set in the ldap.conf file, sudo will now perform its own netgroup lookups of the host name instead of using the system innetgr(3) function. 1.9.14 · Jun 2023 · source · release history
  • Enables use of the NETGROUP_QUERY parameter in ldap.conf to disable netgroup Triple queries for LDAP servers that do not support them while still allowing direct netgroup membership lookups v1.9.14 · Jun 2023 · source · release history
Enhanced sudoers file structure and management shipped Support for including external files with whitespace, flexible alias keywords, and stricter syntax rules. 2 releases · first seen May 2020

Also counts toward: Command-line interface

release

  • Sudoers rules must now end in either a newline or the end-of-file; multiple rules on a single line separated by white space are no longer permitted v1.9.3 · Sep 2020 · source · release history
  • -S command line option causes the sudo conversation function to write to standard output or standard error instead of the terminal device v1.9.0 · May 2020 · source · release history
Plugin type extensions (audit and approval) shipped Support for specialized audit and approval plugins to extend policy enforcement and logging capabilities. 2 releases · first seen May 2020

Also counts toward: Plugin system

release

  • Multiple audit plugins may be specified in the sudo.conf file v1.9.0 · May 2020 · source · release history
  • Multiple approval plugins may be specified in the sudo.conf file v1.9.0 · May 2020 · source · release history
Password prompt visibility aids shipped Provide audible or visual cues when waiting for password input to ensure users do not miss authentication prompts. 1 release · 1 other source · first seen Oct 2019

Also counts toward: Command-line interface

release

  • Adds the -B command line option that rings the terminal bell when prompting for a password v1.8.28 · Oct 2019 · source · release history

example

  • Trigger an audible alert when waiting for a password prompt to avoid missing the input request. sudo -B ls v1.8.28 · Oct 2019 · source
Privilege listing and inspection shipped Allow non-root users to list another user's privileges via a pseudo-command. 1 release · first seen Feb 2023

Also counts toward: Command-line interface

release

  • Adds a new __list__ pseudo-command in sudoers to allow non-root users to list another user's privileges via -U. v1.9.13 · Feb 2023 · source · release history
Group-based rule matching shipped Evaluate sudoers rules against user group memberships to determine command authorization, including support for unlimited group evaluation on macOS. 1 release · first seen Dec 2020

release

  • On macOS, sudo matches group-based rules for more than the first 15 groups without requiring group_source dynamic in sudo.conf. Previously only the first 15 groups were used for matching. v1.9.4p1 · Dec 2020 · source · release history
Python plugin support shipped Allow sudo plugins to be written in Python for custom functionality. 1 release · first seen May 2020

Also counts toward: Plugin API support, Plugin system, Python scripting support, Scripting language support

release

  • Python 3 plugin support enabled via --enable-python configure option v1.9.0 · May 2020 · source · release history

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for sudo, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail sudo puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

28 entries

  1. June 20251
  2. November 20242
  3. September 20241
  4. November 20232
  5. June 20232
  6. February 20231
  7. October 20221
  8. June 20221
  9. March 20221
  10. January 20221
  11. September 20211
  12. May 20211
  13. March 20211
  14. January 20211
  15. December 20201
  16. November 20201
  17. September 20201
  18. June 20201
  19. May 20201
  20. December 20191
  21. October 20192
  22. September 20193
    Show

    28 entries

    Project health

    Issue, contributor and maintainer activity in sudo-project/sudo, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 18 +7 vs prior 12 months
    2. Maintainers 1 +0 joined · −0 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 100% of issues opened, last 12 months
    5. Median time to close 4 days first maintainer reply 7.1 hours
    6. Open backlog 38 of 287 issues ever filed
    1. Issues opened / month 0 · 0 communitymaintainers
    2. Open backlog 38
    3. Contributors / month 2
    4. Commits / month 16
    5. Stars 1,710
    Issue themes, last 12 months
    • other 100%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Articles

    5 articles · updated Nov 4, 2026

    Where sudo turns up in what others publish: how-tos, attack reports that name it, and incident write-ups. A row says why it is here and quotes where the article names it; the link goes to the publisher.

    Attacks on sudo 5

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    None of its release's images build from a lockfile we can read.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →