🇰🇷 한글 설명
HAPI FHIR는 Java 기반 의료 상호운용성을 위한 HL7 FHIR 표준의 완전한 구현체입니다. 6.9.10 이전 버전에서는 이전 CVE-2026-45367 패치가 DSTU2 모듈에서 불완전하게 적용되어, FHIRPathEngine.matches()가 RegexTimeout 보호 없이 String.matches()를 호출하고 있었습니다. 이로 인해 인증되지 않은 공격자가 정규식 백트래킹을 유발하여 서버 CPU를 고갈시킬 수 있습니다.
💡 쉬운 설명
의료 데이터 교환에 쓰이는 소프트웨어에 특정 입력을 보내면 서버가 과도한 계산에 빠져 느려지거나 멈출 수 있습니다. 로그인 없이도 공격이 가능하므로 서비스 거부 위험이 있습니다.
🇺🇸 원문 (English)
HAPI FHIR is a complete implementation of the HL7 FHIR standard for healthcare interoperability in Java. Prior to 6.9.10, the fix for CVE-2026-45367 incompletely patched the DSTU2 module, leaving FHIRPathEngine.matches() in org.hl7.fhir.dstu2/utils/FHIRPathEngine.java to call raw String.matches(sw) without RegexTimeout protection while replaceMatches() was updated, allowing an unauthenticated attacker to trigger catastrophic regex backtracking and exhaust server CPU. This issue is fixed in version 6.9.10.
📍 영향받는 시스템
HAPI FHIR 6.9.10 미만 버전 (DSTU2 모듈 사용 환경)
⚔️ 공격 벡터
인증 없이 악의적으로 설계된 정규식 패턴이 포함된 FHIRPath 요청을 전송하여 정규식 백트래킹을 유발
🛡️ 대응 방법
HAPI FHIR를 6.9.10 이상 버전으로 업그레이드
🔧 검증 코드
출력된 JAR 파일 버전이 6.9.10 미만이면 취약하며, 6.9.10 이상이면 패치된 것입니다.
find / -name 'hapi-fhir-*.jar' 2>/dev/null -exec basename {} \; | grep -E 'hapi-fhir-(base|structures-dstu2)'