
WordPress의 핵심 기능인 댓글 처리 과정에서 새로운 취약점(CVE-2026-93485, "Comment2Shell")이 발견됐습니다. 로그인하지 않은 방문자도 악성 댓글 하나로 관리자의 브라우저에서 스크립트를 실행시킬 수 있으며, 관리자가 해당 페이지를 열기만 해도 서버 전체 제어권을 빼앗길 수 있습니다. 영향을 받는 버전은 WordPress 4.7부터 7.1까지로 매우 광범위하며, 댓글 승인 기능이 기본적으로 꺼져 있어 악성 댓글이 별도 검토 없이 바로 노출될 수 있습니다. WordPress는 9월 17일 버전 7.1.1 등 각 브랜치별 패치를 배포했으며, 즉시 업데이트할 것을 권고하고 있습니다. 같은 업데이트에서 관리자 링크 클릭만으로 서버 코드 실행이 가능한 두 번째 취약점 "Click2Shell"도 함께 수정됐습니다.
WordPress 4.7~7.1 버전에서 익명 방문자가 댓글에 특수 줄바꿈 문자를 삽입해 XSS(크로스사이트 스크립팅, 타인의 브라우저에서 악성 코드를 실행하는 공격)를 유발하고, 이를 통해 관리자 세션을 탈취해 서버에서 임의 명령을 실행할 수 있는 취약점(CVE-2026-93485, 'Comment2Shell')이 발견됐습니다.
공격 성공 시 서버에 웹셸(공격자가 원격으로 명령을 보낼 수 있는 파일)이 설치되어 서버 전체가 장악될 수 있으며, WordPress 4.7 이상 7.1 이하 버전을 운영하는 전 세계 수백만 사이트가 잠재적 대상입니다.
댓글 저장 시 HTML을 필터링하는 단계와 페이지 출력 시 재포맷하는 단계 사이의 처리 간극이 원인입니다. 허용된 HTML 태그 속성 안에 줄바꿈을 삽입하면, 출력 과정에서 해당 텍스트가 브라우저가 자동 실행하는 이벤트 핸들러로 변환됩니다.
WordPress는 2026년 9월 17일 버전 7.1.1 등 각 유지보수 브랜치별 패치를 배포했습니다. 즉시 업데이트가 불가능한 경우 댓글 기능을 비활성화하거나 WAF(웹 방화벽)·보안 플러그인을 적용하는 임시 대응이 권장됩니다.
댓글 승인이 기본적으로 꺼져 있어 악성 댓글이 관리 없이 즉시 게시될 수 있으므로, '댓글 승인 = 보안 통제'라는 인식은 금물입니다. 패치를 적용해도 이미 이루어진 변경은 되돌릴 수 없으므로, 공격 의심 사이트는 알 수 없는 플러그인이나 파일이 없는지 반드시 점검해야 합니다.
본문
Swati Khandelwal 2026년 9월 22일 | 취약점 / 웹 보안
WordPress 코어의 새로운 취약점으로 인해, 로그인하지 않은 방문자가 페이지에 숨겨진 스크립트를 심는 댓글을 남길 수 있게 됐다. 이후 로그인한 관리자가 해당 페이지를 열면, 스크립트가 사이트 서버에서 코드를 실행할 수 있다.
WordPress는 CVE-2026-93485로 추적되며 "Comment2Shell"이라 불리는 이 취약점을 9월 17일 버전 7.1.1에서 수정하고, 사이트 소유자에게 즉시 업데이트할 것을 안내했다. 현재까지 실제 공격에 사용된 흔적은 없으며, 미국 정부의 실제 악용 소프트웨어 결함 목록(CISA KEV)에도 등재되지 않았다.
이 식별자를 부여한 Patchstack은 해당 취약점을 CVSS 기준 10점 만점에 7.1점으로 평가했다.
WordPress는 댓글 저장 시 위험한 HTML을 검사한 뒤, 페이지가 표시될 때 이를 재포맷하는 구조인데, 이 두 단계 사이의 간극에서 취약점이 발생했다.
버그를 신고한 보안 연구원 Rafie Muhammad는 9월 21일 작성한 분석 글에서 전체 공격 체인을 상세히 설명했다. 핵심은 댓글에서 허용된 HTML 태그의 속성 안에 삽입된 줄바꿈 문자였다.
WordPress가 표시를 위해 댓글을 재포맷하는 과정 중 한 단계에서 해당 태그가 분리되고, 공격자의 텍스트가 브라우저가 라이브 이벤트 핸들러로 처리하는 위치로 이동했다. 이 핸들러는 클릭 없이도 페이지가 로드되는 즉시 자동 실행됐다.
스크립트는 로그인 여부에 관계없이 해당 페이지를 연 사람의 브라우저에서 실행되며, 그 사람의 사이트 접근 권한 수준으로 동작했다.
서버에서 코드를 실행하려면 한 가지 조건이 더 필요했다. 바로 로그인한 관리자가 악성 댓글이 포함된 페이지를 열어야 한다는 것이다.
그러면 스크립트는 관리자 자신의 세션을 이용해 웹셸이 포함된 플러그인을 업로드할 수 있다. 웹셸이란 공격자가 보내는 명령을 무엇이든 실행하는 소형 파일이다. 이런 방식으로 플러그인을 업로드하는 것은 관리자의 브라우저에서 서버 제어권으로 넘어가는 알려진 경로다.
이 공격은 또한 사이트의 댓글 표시 방식에도 의존했다. 블록 테마를 사용하는 사이트, 또는 동일한 방식으로 댓글을 포맷하는 클래식 테마를 사용하는 사이트에서 작동했으며, 그 외 사이트에서는 작동하지 않았다.
공격이 성립하려면 먼저 악성 댓글이 페이지에 나타나야 했다. WordPress는 이 취약점이 "댓글 승인을 전제로"만 악용 가능하다고 설명했다.
그러나 댓글 검토 기능은 기본적으로 꺼져 있으며, 최초 댓글 작성자를 보류하는 설정도 우회할 수 있어, 아무도 승인하지 않아도 댓글이 페이지에 올라올 수 있다. Patchstack이 말했듯이, "댓글 검토는 보안 통제 수단이 아니다."
대응 방법
WordPress 7.1.1로 업데이트하거나, 현재 사용 중인 브랜치가 보안 패치를 계속 제공하고 있다면 해당 브랜치의 최신 릴리스로 업데이트한다. 영향을 받는 버전은 4.7부터 7.1까지이며, 현재 브랜치별 수정 릴리스는 다음과 같다:
- WordPress 7.1: 7.1.1로 업데이트
- WordPress 7.0: 7.0.5로 업데이트
- WordPress 6.9: 6.9.8로 업데이트
- 4.7까지 구버전 브랜치: 각 브랜치에 맞는 수정 릴리스 설치(최소 4.7.36까지 지원되며, 각 브랜치별 릴리스는 WordPress 릴리스 문서에 명시됨)
즉시 업데이트할 수 없는 사이트는 게시물의 댓글을 닫거나 사이트 전체에서 댓글을 비활성화하는 방법으로 침입 경로를 차단할 수 있으며, WAF(웹 애플리케이션 방화벽)나 보안 플러그인이 악성 댓글을 차단할 수도 있다.
WordPress와 연구원 모두 별도의 임시 해결 방법을 공개하지 않았다. 업데이트로 취약점은 수정되지만, 공격자가 이미 가한 변경은 되돌릴 수 없다. 공격을 받았다고 의심할 이유가 있는 사이트는 인식하지 못하는 플러그인이나 파일이 없는지도 확인해야 한다.
WordPress 7.1.1은 총 11개의 보안 문제를 수정했다. 이 댓글 취약점은 계정 없는 공격자가 접근할 수 있는 유일한 문제였으며, 나머지 대부분은 어느 정도 접근 권한을 가진 로그인 사용자가 있어야 했다.
같은 릴리스에서는 "Click2Shell"이라는 두 번째 취약점도 수정됐다. 이는 조작된 링크를 통해 WordPress가 테마를 설치하도록 유도하고, 해당 테마의 두 번째 취약점과 결합해 서버에서 코드를 실행할 수 있는 취약점이었다. 이 역시 로그인한 관리자가 링크를 열어야 했다.
WordPress 코어에는 올해 다른 심각한 결함도 있었다. 7월에는 로그인 없이도 공격자가 코드를 실행할 수 있는 "wp2shell"이라는 버그가 발견됐으며, 이후 미국 당국이 실제 공격에 사용됐다고 목록에 등재했다.
8월에는 연구자들이 로그인 페이지의 스크립팅 취약점을 악용해 관리자 권한으로 코드를 실행하기도 했다. 이는 모두 댓글 버그와는 별개의 취약점이다.
관련 투런 솔루션
이 뉴스의 취약점·위협, 투런 솔루션으로 대응하세요.






