🔍 CVE-2026-9180

5.3
CVSS Score
MEDIUM
2026-07-03
2026-07-06 18:02
✅ 완료

🇰🇷 한글 설명

WordPress의 MotoPress Appointment Booking 플러그인 2.4.4 이하 버전에서 권한 우회 취약점이 발견되었습니다. 공격자는 인증 없이 특정 REST API 엔드포인트를 통해 기존 예약 정보의 고객 이름, 이메일, 전화번호 및 고객 ID를 임의로 수정할 수 있습니다. 이는 예약 생성 핸들러가 요청된 예약의 소유권을 검증하지 않고 공격자가 제공한 ID를 그대로 로드하기 때문에 발생합니다.

💡 쉬운 설명

예약 관리 플러그인의 보안 설정 오류로 인해, 로그인하지 않은 외부인이 다른 사람의 예약 정보를 마음대로 바꿀 수 있는 문제입니다. 공격자는 예약 번호를 알아낸 뒤 고객의 연락처나 이름을 자신의 정보로 덮어쓸 수 있습니다.

🇺🇸 원문 (English)

The MotoPress Appointment Booking plugin for WordPress is vulnerable to Authorization Bypass Through User-Controlled Key in all versions up to, and including, 2.4.4. This is due to the `POST /motopress/appointment/v1/bookings` REST endpoint being registered with `'permission_callback' => '__return_true'`, allowing unauthenticated access, while the `createBooking` handler in `BookingsRestController.php` accepts an attacker-supplied `payment_details.booking_id` value and loads the referenced booking via `findById()` without verifying that the caller owns or has any rights to that booking. This makes it possible for unauthenticated attackers to overwrite the customer name, email address, phone number, and `customer_id` of any non-confirmed victim booking by submitting a request with no reservation items, causing `BookingService::createBooking()` to load the existing victim booking object and persist it with attacker-controlled customer data. Victim booking IDs can be harvested prior to exploitation without authentication by querying the also-publicly-accessible `GET /motopress/appointment/v1/bookings/reservations` endpoint with a guessable `service_id` and date range, and only bookings whose status is not `STATUS_CONFIRMED` (e.g., pending or auto-draft) are valid targets.

📍 영향받는 시스템

MotoPress Appointment Booking plugin for WordPress (version 2.4.4 및 그 이하 모든 버전)

⚔️ 공격 벡터

인증되지 않은 사용자가 REST API 엔드포인트에 조작된 booking_id를 포함한 POST 요청을 전송하여 기존 예약 데이터를 덮어씀

🛡️ 대응 방법

플러그인을 최신 버전으로 업데이트하거나, 해당 REST API 엔드포인트의 permission_callback 설정을 적절한 권한 검증 로직으로 수정해야 합니다.

🔧 검증 코드

출력된 플러그인 버전이 2.4.4 이하인지 확인하여 취약 여부를 판단합니다.

Shell / Script
wp plugin list --allow-root | grep -E 'motopress-appointment-booking'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

IBM Security Verify Access