🇰🇷 한글 설명
WordPress의 Simple Divi Shortcode 플러그인 1.2 이하 버전에서 [showmodule] 쇼트코드의 'id' 파라미터를 통해 저장형 XSS 취약점이 발생합니다. 입력값에 대한 적절한 검증 및 출력 이스케이프 처리가 누락되어, 공격자가 임의의 HTML 및 스크립트를 삽입할 수 있습니다. 이를 통해 기여자(Contributor) 권한 이상의 인증된 공격자가 악성 스크립트를 실행할 수 있습니다.
💡 쉬운 설명
웹사이트 게시물에 악성 코드를 몰래 심어두어, 다른 사용자가 해당 페이지를 볼 때 해킹 스크립트가 실행되게 만드는 취약점입니다. 글을 쓸 수 있는 권한이 있는 사람이 이 기능을 악용하여 사용자 정보를 훔칠 수 있습니다.
🇺🇸 원문 (English)
The Simple Divi Shortcode plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'id' parameter of the [showmodule] shortcode in versions up to, and including, 1.2 This is due to insufficient input sanitization and output escaping in the showmodule_shortcode() function, which concatenates the 'id' shortcode attribute directly into a dynamically constructed shortcode string without applying esc_attr() or any escaping, allowing an attacker to break out of the attribute context and inject arbitrary HTML. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
📍 영향받는 시스템
Simple Divi Shortcode plugin for WordPress (version 1.2 and below)
⚔️ 공격 벡터
인증된 공격자가 [showmodule] 쇼트코드의 'id' 속성에 악성 스크립트를 삽입하여 저장
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나, 입력값에 esc_attr()와 같은 이스케이프 함수를 적용하도록 코드를 수정해야 합니다.
🔧 검증 코드
명령어 결과에 해당 플러그인 이름과 1.0에서 1.2 사이의 버전이 나타나면 취약한 상태입니다.
wp plugin list --name=simple-divi-shortcode --format=csv | grep -E 'simple-divi-shortcode,1.[0-2]'