🇰🇷 한글 설명
WordPress용 Mail Mint 플러그인 1.31.0 이하 버전에서 'status' 파라미터를 통한 SQL 인젝션 취약점이 발견되었습니다. 공격자가 SQL 쿼리 문자열에 직접 조작된 데이터를 삽입하여 데이터베이스의 민감한 정보를 추출할 수 있습니다. 이 취약점은 REST API를 통해 전달되는 JSON 데이터가 적절히 이스케이프되지 않아 발생합니다.
💡 쉬운 설명
이메일 마케팅 플러그인의 보안 허점을 이용해 해커가 데이터베이스에 몰래 명령을 내릴 수 있는 문제입니다. 관리자 권한을 가진 사용자가 악의적인 명령을 입력하면 중요한 고객 정보가 유출될 수 있습니다.
🇺🇸 원문 (English)
The Mail Mint – Email Marketing, Newsletter, Email Automation & WooCommerce Emails plugin for WordPress is vulnerable to SQL Injection via the 'status' parameter in all versions up to, and including, 1.31.0 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. The $wpdb->prepare() call does not protect against this injection because the attacker-controlled $contact_filter_query fragment is concatenated into the SQL format string before prepare() executes — prepare() only processes %s/%d placeholders and cannot sanitize content already embedded in the format string. REST API JSON bodies are parsed from php://input and bypass WordPress's wp_magic_quotes(), meaning double-quote characters in status array values reach the SQL sink unescaped. This makes it possible for authenticated attackers, with administrator-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. The required 'mint_read_contacts' capability is a plugin-specific capability not assigned to any default WordPress role; it must be explicitly granted by an administrator, making this effectively an Administrator+ vulnerability.
📍 영향받는 시스템
Mail Mint – Email Marketing, Newsletter, Email Automation & WooCommerce Emails plugin (v1.31.0 이하 모든 버전)
⚔️ 공격 벡터
인증된 관리자 권한을 가진 공격자가 REST API의 'status' 파라미터에 조작된 JSON 데이터를 전송하여 SQL 인젝션 수행
🛡️ 대응 방법
Mail Mint 플러그인을 최신 버전으로 업데이트하거나, 'mint_read_contacts' 권한이 불필요한 사용자에게 부여되지 않도록 관리하십시오.
🔧 검증 코드
출력된 결과에서 mail-mint 플러그인의 버전이 1.31.0 이하인지 확인하십시오.
wp plugin list --allow-root | grep -E 'mail-mint'