p PatchFirst

CVE-2026-26198

CVE-2026-26198 · ormar is vulnerable to SQL Injection through aggregate functions min() and max()

This page contains facts from public vulnerability sources. Check the original advisory before updating.

Ormar is a async mini ORM for Python. In versions 0.9.9 through 0.22.0, when performing aggregate queries, Ormar ORM constructs SQL expressions by passing user-supplied column names directly into `sqlalchemy.text()` without any validation or sanitization. The `min()` and `max()` methods in the `QuerySet` class accept arbitrary string input as the column parameter. While `sum()` and `avg()` are partially protected by an `is_numeric` type check that rejects non-existent fields, `min()` and `max()` skip this validation entirely. As a result, an attacker-controlled string is embedded as raw SQL inside the aggregate function call. Any unauthorized user can exploit this vulnerability to read the entire database contents, including tables unrelated to the queried model, by injecting a subquery as the column parameter. Version 0.23.0 contains a patch.

CVSS 9.8 · Critical · EPSS 1.0% · Fix available

Published
Updated

Stack: system · python

Affected products and versions

  • ormar

    Versions
    • >= 0.9.9, < 0.23.0: Affected

    No fix published

  • ormar Debian:12

    Versions
    • 0.12.0-3
    • 0.12.2-1
    • 0.20.2-1
    • 0.21.0-1
    • 0.22.0-1
    • 0.23.0-1
    • 0.23.1-1
    • 0.24.0-1
    • 0.24.0-2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • ormar Debian:14

    Versions
    • 0.11.2-1
    • 0.11.2-2
    • 0.11.2-3
    • 0.11.3-1
    • 0.12.0-1
    • 0.12.0-2
    • 0.12.0-3
    • 0.12.2-1
    • 0.20.2-1
    • 0.21.0-1
    • 0.22.0-1
    Affected ranges
    • ECOSYSTEM: < 0.23.0-1

    Update to 0.23.0-1

  • ormar PyPI

    Versions
    • 0.10.0
    • 0.10.1
    • 0.10.10
    • 0.10.11
    • 0.10.12
    • 0.10.13
    • 0.10.14
    • 0.10.15
    • 0.10.16
    • 0.10.17
    • 0.10.18
    • 0.10.19
    • 0.10.2
    • 0.10.20
    • 0.10.21
    • 0.10.22
    • 0.10.23
    • 0.10.24
    • 0.10.25
    • 0.10.3
    • 0.10.4
    • 0.10.5
    • 0.10.6
    • 0.10.7
    • 0.10.8
    • 0.10.9
    • 0.11.0
    • 0.11.1
    • 0.11.2
    • 0.11.3
    • 0.12.0
    • 0.12.1
    • 0.12.2
    • 0.12.3
    • 0.20.0
    • 0.20.1
    • 0.20.2
    • 0.21.0
    • 0.22.0
    • 0.9.9
    Affected ranges
    • ECOSYSTEM: ≥ 0.9.9, < 0.23.0

    Update to 0.23.0

  • ormar Ubuntu:24.04:LTS

    Versions
    • 0.12.0-3
    • 0.12.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • ormar Ubuntu:25.10

    Versions
    • 0.12.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • ormar Ubuntu:26.10

    Versions
    • 0.22.0-1
    • 0.24.0-2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • ormar Ubuntu:26.04:LTS

    Versions
    • 0.12.2-1
    • 0.20.2-1
    • 0.21.0-1
    • 0.22.0-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

Original sources

Check your server →