🔍 CVE-2026-3960

9.8
CVSS Score
CRITICAL
2026-04-23
2026-05-19 21:52
✅ 완료

🇰🇷 한글 설명

H2O-3의 /99/ImportSQLTable API 엔드포인트에서 MySQL JDBC만 차단하는 불완전한 보안으로 인해, 공격자가 PostgreSQL JDBC 프로토콜로 전환하여 socketFactory 파라미터를 악용함으로써 인증 없이 임의의 코드를 실행할 수 있습니다. 버전 3.46.0.10에서 수정되었습니다.

💡 쉬운 설명

H2O-3 데이터 분석 소프트웨어의 특정 웹 기능이 MySQL만 보호하기 때문에 PostgreSQL을 사용하면 보안을 우회할 수 있습니다. 누구나 악의적인 명령어를 실행할 수 있으므로 버전 3.46.0.10으로 업데이트해야 합니다.

🇺🇸 원문 (English)

A critical remote code execution vulnerability exists in the unauthenticated REST API endpoint /99/ImportSQLTable in H2O-3 version 3.46.0.9 and prior. The vulnerability arises due to insufficient security controls in the parameter blacklist mechanism, which only targets MySQL JDBC driver-specific dangerous parameters. An attacker can bypass these controls by switching the JDBC URL protocol to jdbc:postgresql: and exploiting PostgreSQL JDBC driver-specific parameters such as socketFactory and socketFactoryArg. This allows unauthenticated attackers to execute arbitrary code on the H2O-3 server with the privileges of the H2O-3 process. The issue is resolved in version 3.46.0.10.

📍 영향받는 시스템

H2O-3 버전 3.46.0.9 이하

⚔️ 공격 벡터

인증 없이 /99/ImportSQLTable 엔드포인트에 PostgreSQL JDBC URL(jdbc:postgresql:)과 socketFactory 파라미터가 포함된 요청 전송

🛡️ 대응 방법

H2O-3를 버전 3.46.0.10 이상으로 업그레이드

🔧 검증 코드

버전이 3.46.0.9 이하면 취약, 3.46.0.10 이상이면 안전. API 미응답시 jar 파일 이름에서 버전 확인.

Shell / Script
curl http://localhost:54321/3/About 2>/dev/null | grep -o '3\.[0-9]\+\.[0-9]\+\.[0-9]\+' | head -1

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

MySQL