🇰🇷 한글 설명
WordPress용 GeoDirectory 플러그인 2.8.169 이하 버전에서 파일 경로 검증 미흡으로 인해 임의 파일 삭제 취약점이 발견되었습니다. 인증된 공격자가 특정 쿼리 스트링을 조작하여 서버의 중요한 파일(예: wp-config.php)을 삭제할 수 있으며, 이는 원격 코드 실행(RCE)으로 이어질 수 있습니다.
💡 쉬운 설명
로그인 권한이 있는 사용자가 플러그인의 허점을 이용해 서버에 있는 중요한 파일을 마음대로 지울 수 있는 보안 약점입니다. 중요한 설정 파일을 지우면 웹사이트를 마비시키거나 해커가 서버를 장악할 수 있습니다.
🇺🇸 원문 (English)
The GeoDirectory – WP Business Directory Plugin and Classified Listings Directory plugin for WordPress is vulnerable to arbitrary file deletion due to insufficient file path validation in the delete_revision function in all versions up to, and including, 2.8.169. This makes it possible for authenticated attackers, with subscriber-level access and above, to delete arbitrary files on the server, which can easily lead to remote code execution when the right file is deleted (such as wp-config.php). By placing post_type=attachment exclusively in the query string to bypass the consistency check, an attacker can convert an auto-draft GeoDirectory listing into a WordPress attachment with attacker-controlled file paths injected into attachment metadata, which the delete_revision handler then dereferences and unlinks without any post-type or path validation.
📍 영향받는 시스템
GeoDirectory – WP Business Directory Plugin and Classified Listings Directory (버전 2.8.169 및 그 이하 모든 버전)
⚔️ 공격 벡터
인증된 사용자가 쿼리 스트링에 post_type=attachment를 삽입하여 파일 경로 검증을 우회한 후 delete_revision 함수를 호출하여 공격
🛡️ 대응 방법
GeoDirectory 플러그인을 최신 보안 패치가 적용된 버전으로 즉시 업데이트하십시오.
🔧 검증 코드
출력 결과에 geodirectory가 포함되어 있는지 확인하고, 설치된 버전을 체크하여 2.8.169 이하인지 확인하십시오.
wp plugin list --status=active | grep -i 'geodirectory'