🔍 CVE-2026-52837

0.0
CVSS Score
UNKNOWN
2026-07-14
2026-10-24 21:10
✅ 완료

🇰🇷 한글 설명

Easy!Appointments 1.5.2 이하 버전에서 예약 재조정 페이지(/index.php/booking/reschedule/{appointment_hash})가 인증 없이 고객 레코드 전체를 인라인 JavaScript로 노출합니다. 12자리 appointment_hash를 알면 ea_users 테이블의 모든 고객 정보를 열람할 수 있으며, 1.6.0 버전에서 패치되었습니다.

💡 쉬운 설명

예약 변경 링크를 아는 사람은 누구나 고객의 개인정보 전부를 볼 수 있는 취약점입니다. 이 링크는 예약 확인 메일과 URL에 그대로 노출되어 있어 쉽게 유출될 수 있습니다.

🇺🇸 원문 (English)

Easy!Appointments is a self hosted appointment scheduler. In versions up to and including 1.5.2, the booking reschedule view at `/index.php/booking/reschedule/{appointment_hash}` (handled by `Booking::index()`) embeds the entire customer record as inline JavaScript (`const vars = {... "customer_data": {...}, ...}`) without authentication and without field whitelisting. Anyone in possession of the 12-character `appointment_hash` — which appears in plain text in reschedule emails, confirmation page URLs, and operator-side calendar links — can read every column of that customer's row in the `ea_users` table. Version 1.6.0 contains a patch.

📍 영향받는 시스템

Easy!Appointments 1.5.2 이하 버전 (1.6.0에서 수정됨)

⚔️ 공격 벡터

예약 확인 메일, 확인 페이지 URL 등에서 appointment_hash를 획득한 뒤 /index.php/booking/reschedule/{hash}에 접속해 고객 데이터를 열람

🛡️ 대응 방법

Easy!Appointments를 1.6.0 이상으로 업그레이드하고, 필요 시 기존 appointment_hash 값을 무효화하거나 고객 정보 노출 여부를 점검

🔧 검증 코드

결과가 출력되면 해당 코드가 존재하여 취약할 가능성이 있으며, 아무 결과도 없거나 버전 확인 시 1.6.0 이상이면 패치된 것입니다.

Shell / Script
grep -rn "customer_data" /var/www/html/application/controllers/Booking.php 2>/dev/null | head -5

💻 영향받는 소프트웨어

Oracle Java SE