🔍 CVE-2026-6399

4.4
CVSS Score
MEDIUM
2026-05-20
2026-07-24 08:10
✅ 완료

🇰🇷 한글 설명

WordPress의 General Options 플러그인 1.1.0 이하 버전에서 저장형 XSS 취약점이 발견되었습니다. Contact Number 필드에서 HTML 태그만 제거하고 큰따옴표를 인코딩하지 않아, 공격자가 속성 값을 탈출하여 악성 스크립트를 삽입할 수 있습니다. 관리자 권한을 가진 공격자가 설정 페이지에 스크립트를 심으면 다른 관리자가 해당 페이지를 방문할 때 실행됩니다.

💡 쉬운 설명

플러그인의 설정 칸에 특수 문자를 입력하면 웹사이트의 보안 벽을 뚫고 악성 코드를 실행할 수 있는 문제입니다. 관리자 계정을 가진 사람이 이 기능을 악용하면 다른 관리자의 브라우저에서 몰래 나쁜 명령을 내릴 수 있습니다.

🇺🇸 원문 (English)

The General Options plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to and including 1.1.0. This is due to the use of sanitize_text_field() for output escaping in the Contact Number (ad_contact_number) field — a function that strips HTML tags but does not encode double-quote characters to their HTML entity equivalent ("). When the stored value is echoed inside a double-quoted HTML attribute (value="..."), an attacker-supplied double-quote character breaks out of the attribute context. Even with WordPress's wp_magic_quotes mechanism (which prefixes quotes with a backslash), the resulting \" sequence is NOT treated as an escaped quote by HTML parsers — the backslash is rendered as a literal character and the bare double-quote still closes the attribute. This makes it possible for authenticated attackers with Administrator-level access and above to inject arbitrary web scripts in the admin settings page that will execute whenever any administrator visits the General Options settings page.

📍 영향받는 시스템

WordPress General Options plugin versions up to and including 1.1.0

⚔️ 공격 벡터

관리자 권한을 이용해 Contact Number 필드에 큰따옴표를 포함한 악성 스크립트를 입력하여 저장

🛡️ 대응 방법

General Options 플러그인을 최신 버전으로 업데이트하거나, 입력값 출력 시 esc_attr() 함수를 사용하도록 수정

🔧 검증 코드

명령어 결과에 'general-options'와 버전 '1.1.0'이 포함되어 있다면 해당 취약점에 노출된 상태입니다.

Shell / Script
wp plugin list --name general-options --format=csv | grep -E 'general-options,.*,1.1.0'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

WordPress