🔍 CVE-2026-48071

5.8
CVSS Score
MEDIUM
2026-08-06
2026-10-23 21:10
✅ 완료

🇰🇷 한글 설명

OpenReception의 예약 소프트웨어에서 PIN 인증 시도 횟수를 제한하는 과정에서 이메일 해시값을 공유 키로 사용하는 취약점이 발견되었습니다. 이로 인해 동일한 이메일을 사용하는 사용자가 여러 테넌트에 등록되어 있을 경우, 공격자가 특정 테넌트에서 인증 실패를 반복하여 해당 사용자를 모든 테넌트에서 차단할 수 있습니다.

💡 쉬운 설명

한 환자가 여러 병원을 이용할 때, 공격자가 한 병원에서 가짜 비밀번호를 계속 입력하면 환자가 다른 병원의 예약 서비스도 이용하지 못하게 막아버리는 문제입니다. 이메일 주소를 기준으로 차단 기록을 공유하기 때문에 발생하는 서비스 거부 공격입니다.

🇺🇸 원문 (English)

OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.4, the PIN-type challenge throttle uses `emailHash` as the only key. The throttle rows live in the central `challenge_throttle` table, which is shared across all tenants. Every tenant's `/api/tenants/{id}/appointments/verify-challenge` endpoint increments the same row when a PIN response fails, and every tenant's `/api/tenants/{id}/appointments/challenge` endpoint reads the same row when deciding whether to issue a new challenge. When the same `emailHash` exists in multiple tenants on the same OpenReception instance (the same patient holding tunnels in two different clinics that share the platform), an attacker who knows the patient's email can lock out that patient on tenant B by issuing failed challenge responses against tenant A. The attacker needs no relationship to tenant B; the lockout propagates through the shared throttle row. The lockout escalates with repeated failures. The first lockout triggers at 4 failed attempts and lasts approximately 60 seconds. Subsequent failures escalate the lockout duration to 5 minutes, 30 minutes, and 60 minutes per the throttle service's escalation logic. Repeated bursts produce sustained denial of service against the targeted email. Version 1.0.4 patches the issue.

📍 영향받는 시스템

OpenReception appointment booking software (version prior to 1.0.4)

⚔️ 공격 벡터

공격자가 타겟의 이메일 주소를 알고 있는 상태에서 특정 테넌트의 인증 엔드포인트에 반복적으로 잘못된 PIN을 전송하여 공유된 차단 테이블을 활성화함

🛡️ 대응 방법

OpenReception 소프트웨어를 버전 1.0.4 이상으로 업데이트하십시오.

🔧 검증 코드

출력 결과에 1.0.4 이상의 버전 번호가 포함되어 있는지 확인하십시오.

Shell / Script
curl -s http://<target-ip>/api/version | grep -E '1.0.4'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Windows iSCSI Target Service