🔍 CVE-2026-89089

6.5
CVSS Score
MEDIUM
2026-09-10
2026-09-18 19:21
✅ 완료

🇰🇷 한글 설명

OpenNMS Meridian 및 Horizon의 JasperReports 기반 보고 기능에서 SQL 인젝션 취약점이 발견되었습니다. 낮은 권한을 가진 인증된 사용자가 특정 보고서의 DATE_FORMAT 파라미터를 조작하여 데이터베이스에 임의의 SQL을 실행하고 비밀번호나 SNMP 커뮤니티 스트링과 같은 민감한 정보를 탈취할 수 있습니다.

💡 쉬운 설명

로그인 권한이 있는 사용자가 보고서 기능을 악용해 데이터베이스에 몰래 명령을 내릴 수 있는 보안 약점입니다. 이를 통해 시스템의 중요한 비밀번호나 설정 정보를 훔쳐갈 위험이 있습니다.

🇺🇸 원문 (English)

A SQL injection vulnerability exists in the JasperReports-based reporting feature of multiple versions of OpenNMS Meridian and Horizon. A low-privileged authenticated user (ROLE_USER) can run the shipped, default-enabled online reports "Maintenance contracts expired" (AssetManagementMaintExpired) and "Maintenance contracts strategy" (AssetManagementMaintStrategy) via the reporting REST API (POST /rest/reports/{id}) and supply a DATE_FORMAT parameter that the report templates substitute literally, un-escaped, into their SQL queries. This lets an attacker execute arbitrary SQL against the OpenNMS database and read arbitrary data, including database-stored secrets such as provisioning and notification credentials and SNMP community strings. The solution is to upgrade to Meridian 2024.3.13, 2025.0.10 and Horizon 36.0.4 or newer. Meridian and Horizon installation instructions state that they are intended for installation within an organization's private networks and should not be directly accessible from the Internet.

📍 영향받는 시스템

OpenNMS Meridian (여러 버전), OpenNMS Horizon (여러 버전)

⚔️ 공격 벡터

REST API(POST /rest/reports/{id})를 통해 DATE_FORMAT 파라미터에 악의적인 SQL 구문을 삽입

🛡️ 대응 방법

Meridian 2024.3.13, 2025.0.10 또는 Horizon 36.0.4 이상의 최신 버전으로 업그레이드

🔧 검증 코드

API 응답 또는 시스템 정보를 통해 현재 설치된 OpenNMS의 버전을 확인하여 취약한 버전인지 대조합니다.

Shell / Script
curl -s http://<target_ip>/rest/reports/AssetManagementMaintExpired | grep -E 'version|release'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Spring Data REST