Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. nautobot
  4. ›
  5. CVE-2023-51649

CVE-2023-51649: Nautobot missing object-level permissions enforcement when running Job Buttons

December 22, 2023 (updated November 22, 2024)

When submitting a Job to run via a Job Button, only the model-level extras.run_job permission is checked (i.e., does the user have permission to run Jobs in general?). Object-level permissions (i.e., does the user have permission to run this specific Job?) are not enforced by the URL/view used in this case (/extras/job-button/<uuid>/run/) The effect is that a user with permissions to run even a single Job can actually run all configured JobButton Jobs.

Not all Jobs can be configured as JobButtons; only those implemented as subclasses of JobButtonReceiver can be used in this way, so this vulnerability only applies specifically to JobButtonReceiver subclasses.

Additionally, although the documentation states that both extras.run_job permission and extras.run_jobbutton permission must be granted to a user in order to run Jobs via JobButton, the extras.run_jobbutton permission is not actually enforced by the view code, only by the UI by disabling the button from being clicked normally. Furthermore, the extras.run_jobbutton permission never prevented invoking Jobs (including JobButtonReceiver subclasses) via the normal “Job Run” UI, so after some discussion, we’ve decided that the extras.run_jobbutton permission is redundant, and as it never achieved its stated/documented purpose, the fixes below will remove the UI check for extras.run_jobbutton and all other references to the extras.run_jobbutton permission, rather than adding enforcement of this previously unenforced permission.

References

  • github.com/advisories/GHSA-vf5m-xrhm-v999
  • github.com/nautobot/nautobot
  • github.com/nautobot/nautobot/commit/3d964f996f4926126c1d7853ca87b2ff475997a2
  • github.com/nautobot/nautobot/commit/d33d0c15a36948c45244e5b5e10bc79b8e62de7f
  • github.com/nautobot/nautobot/issues/4988
  • github.com/nautobot/nautobot/pull/4993
  • github.com/nautobot/nautobot/pull/4995
  • github.com/nautobot/nautobot/security/advisories/GHSA-vf5m-xrhm-v999
  • github.com/pypa/advisory-database/tree/main/vulns/nautobot/PYSEC-2023-287.yaml
  • nvd.nist.gov/vuln/detail/CVE-2023-51649

Code Behaviors & Features

Detect and mitigate CVE-2023-51649 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 1.5.14 before 1.6.8, all versions starting from 2.0.0 before 2.1.0

Fixed versions

  • 1.6.8
  • 2.1.0

Solution

Upgrade to versions 1.6.8, 2.1.0 or above.

Impact 4.3 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N

Learn more about CVSS

Weakness

  • CWE-863: Incorrect Authorization

Source file

pypi/nautobot/CVE-2023-51649.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 14 May 2025 12:15:22 +0000.