CVE-2026-26198
ormar는 집계 함수 min() 및 max()를 통한 SQL 인젝션에 취약합니다.
- 게시됨
- 2026. 2. 24.
- 업데이트됨
- 2026. 2. 24.
- CNA 할당 중
- GitHub_M
- 증거 관찰됨
- 2026. 8. 25.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H낮음 · 다음 30일
- 백분위수
- 58.1%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Ormar는 Python용 비동기 미니 ORM입니다. 0.9.9부터 0.22.0까지의 버전에서 집계 쿼리를 수행할 때, Ormar ORM은 사용자가 제공한 열 이름을 검증이나 삭제(sanitization) 없이 `sqlalchemy.text()`에 직접 전달하여 SQL 표현식을 구성합니다. `QuerySet` 클래스의 `min()` 및 `max()` 메서드는 열 매개변수로 임의의 문자열 입력을 허용합니다. `sum()` 및 `avg()`는 존재하지 않는 필드를 거부하는 `is_numeric` 유형 검사로 부분적으로 보호되지만, `min()` 및 `max()`는 이 검증을 완전히 건너뜁니다. 그 결과, 공격자가 제어하는 문자열이 집계 함수 호출 내부에 원시 SQL로 삽입됩니다. 권한이 없는 사용자는 열 매개변수로 하위 쿼리를 주입하여 쿼리된 모델과 관련 없는 테이블을 포함한 전체 데이터베이스 내용을 읽을 수 있는 이 취약점을 악용할 수 있습니다. 버전 0.23.0에 패치가 포함되어 있습니다.
소스
2Python의 Ormar ORM에서 발견된 심각한 SQL 인젝션에 대한 심층 분석 — 재현, 수정, 그리고 테스트
CVE-2026-26198에 대한 개념 증명 익스플로잇으로, 취약점과 그 영향을 시연합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.