🇰🇷 한글 설명
WordPress용 WebToffee WooCommerce PDF 관련 플러그인에서 부적절한 직접 객체 참조(IDOR) 취약점이 발견되었습니다. 공격자가 주문 ID와 이메일 주소만 알면 WooCommerce order_key 없이도 다른 고객의 송장, 배송 라벨 및 개인정보를 탈취할 수 있습니다.
💡 쉬운 설명
로그인하지 않은 외부인이 다른 사람의 주문 번호와 이메일 주소만 알면, 그 사람의 영수증과 주소 같은 개인정보를 몰래 볼 수 있는 보안 결함입니다. 주문을 확인할 때 비밀번호 역할을 하는 특수 키를 확인하지 않고 이메일만 확인하기 때문에 발생합니다.
🇺🇸 원문 (English)
The WebToffee WooCommerce PDF Invoices, Packing Slips, Delivery Notes & Shipping Labels plugin for WordPress is vulnerable to Insecure Direct Object Reference in versions up to, and including, 5.0.2 via the 'email' parameter of the guest print_document_from_the_mail_link handler dispatched from print_window() on init. This is due to the handler authorizing access to an order's printable documents when the attacker-supplied (base64-encoded) 'email' equals the order's billing email — a non-secret identifier — instead of requiring the WooCommerce order_key. This makes it possible for unauthenticated attackers, when the site is configured to allow guest access to documents ('wt_pklist_print_button_access_for' != 'logged_in'), to retrieve any other customer's invoice, packing slip, delivery note, dispatch label or shipping label — including customer name, billing/shipping address, phone number, purchased products, prices, taxes and invoice metadata — by knowing the target order ID and the associated billing email address.
📍 영향받는 시스템
WebToffee WooCommerce PDF Invoices, Packing Slips, Delivery Notes & Shipping Labels plugin (버전 5.0.2 이하)
⚔️ 공격 벡터
공격자가 타겟의 주문 ID와 이메일을 base64로 인코딩하여 'email' 파라미터에 전달함으로써 인증 없이 문서를 요청함
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나, 설정에서 게스트 문서 접근 권한(wt_pklist_print_button_access_for)을 'logged_in'으로 변경함
🔧 검증 코드
명령어 결과에 해당 플러그인이 나타나면 설치된 것이며, 이후 플러그인 관리자 화면에서 버전이 5.0.2 이하인지 확인해야 합니다.
wp plugin list --status=active | grep -i 'webtoffee-woocommerce-pdf-invoices'