서론
CVE-2026-60137은 WordPress Core의 WP_Query에서 author__not_in 값을 처리하는 과정과 관련된 SQL 삽입(SQL Injection, CWE-89) 취약점이다. CISA는 2026년 7월 21일 이 취약점을 Known Exploited Vulnerabilities(KEV) 목록에 올리고 실제 악용, 자동화 가능, 전체 기술 영향 가능성을 표시했다. 다만 이 취약점은 모든 WordPress 설치에서 임의의 요청만으로 발생한다고 단정할 수 없다. 플러그인 또는 테마가 신뢰할 수 없는 외부 입력을 해당 매개변수로 전달하는 통합 조건을 먼저 확인해야 한다.
본론
취약점 개요
| 항목 | 내용 |
|---|---|
| CVE | CVE-2026-60137 |
| 제품 | WordPress Core |
| 유형 | SQL 삽입(SQL Injection), CWE-89 |
| 관련 코드 | WP_Query의 author__not_in 처리 |
| 영향 버전 | 6.8.0–6.8.5, 6.9.0–6.9.4, 7.0.0–7.0.1 |
| 수정 버전 | 6.8.6, 6.9.5, 7.0.2 |
| 악용 상태 | CISA KEV 등재, 실제 악용 확인 |
심각도는 출처별로 차이가 있다. NVD에 등록된 WPScan CNA 평가는 CVSS v3.1 5.9 Medium이며, CISA ADP 평가는 9.1 Critical이다. 운영 우선순위는 단일 점수보다 KEV 등재, 실제 악용, 인터넷 노출도, 그리고 취약한 플러그인·테마 통합의 존재를 함께 반영해 정해야 한다.
영향 범위
직접적인 점검 대상은 WordPress 6.8.0–6.8.5, 6.9.0–6.9.4, 7.0.0–7.0.1이다. 각 계열은 6.8.6, 6.9.5, 7.0.2에서 수정됐다. 자산 목록에서 Core 버전만 확인하지 말고, 외부 요청값을 검색 조건으로 변환하는 플러그인·테마·커스텀 코드가 WP_Query의 author__not_in에 도달하는지를 함께 확인해야 한다.
| 우선순위 | 대상 | 위험 조건 |
|---|---|---|
| 즉시 | 인터넷 공개 WordPress의 영향 버전 | KEV 등재 및 외부 요청 노출 |
| 높음 | 사용자 입력을 받는 검색·목록·API 기능 | 외부 입력이 author__not_in으로 전달될 가능성 |
| 높음 | CVE-2026-63030도 미패치인 사이트 | 연계 공격 체인 위험 |
| 중간 | 접근 통제된 내부 사이트 | 패치와 코드 점검은 필요하나 노출도가 낮음 |
기술적 분석
WP_Query는 게시물 목록을 조회할 때 다양한 검색 매개변수를 처리한다. author__not_in은 특정 작성자를 결과에서 제외하는 데 사용된다. 플러그인·테마가 신뢰할 수 없는 문자열 또는 검증되지 않은 배열을 이 매개변수에 전달하면, 입력값의 정규화와 쿼리 구성 경계가 약해질 수 있다. 핵심은 WordPress Core 사용 자체가 아니라 외부 입력이 이 경로로 전달되는지다.
공개 자료에서 검증 가능한 재현용 PoC나 공격 페이로드는 확인하지 못했다. 따라서 임의 페이로드로 운영 사이트를 시험하지 말고, 코드 흐름과 로그를 중심으로 위험을 검증한다. 다음은 방어 목적의 코드 점검 범위 예시다.
점검 대상: 플러그인·테마·커스텀 코드의 WP_Query 호출
확인 항목: request/REST 파라미터 → author__not_in 전달 경로
안전 조건: 정수형 변환, 배열 요소 검증, 허용값 제한, 권한 검사
추적 로그: DB 쿼리 오류, 비정상적으로 긴 검색 파라미터, 반복된 4xx·5xx
CISA와 WordPress 보안 공지는 CVE-2026-63030의 REST API 경로 해석 취약점과 결합될 경우 SQL 삽입 및 원격 코드 실행(Remote Code Execution, RCE) 위험이 확대될 수 있다고 설명한다. RCE는 CVE-2026-60137 단독의 확정적 결과로 표현하면 안 되며, 두 CVE와 배포 환경의 조건이 연결된 공격 체인으로 평가해야 한다.
대응 방안
즉시 조치
- 모든 WordPress 자산의 실행 버전을 확인하고 해당 계열을 6.8.6, 6.9.5, 7.0.2 이상으로 업데이트한다. 자동 업데이트 알림만으로 끝내지 말고 관리자 화면, WP-CLI 또는 배포 산출물로 실제 버전을 재확인한다.
- CVE-2026-63030 패치 상태도 같은 변경 창에서 확인한다. 두 취약점을 개별 종결 처리하지 말고 함께 조치한다.
- 인터넷 공개 사이트와 사용자 입력을 검색·목록 기능에 사용하는 사이트를 최우선으로 처리한다.
24시간 이내 조치
- 플러그인·테마·커스텀 코드에서
WP_Query와author__not_in사용 위치를 찾고, 요청·REST·폼 입력이 전달되는 경로를 검토한다. 정수 변환, 배열 요소 검증, 허용값 제한, 권한 검사를 적용한다. - 2026년 7월 21일 이후 웹·애플리케이션·데이터베이스 로그에서 쿼리 오류, 비정상 REST API 배치 요청, 새 관리자 계정, 플러그인·테마 변경, 예상 밖 PHP 파일 생성을 조사한다.
- 패치가 지연되면 외부 노출과 관리자 접근을 최소화하고 WAF·리버스 프록시에서 비정상 요청을 모니터링한다. 이는 임시 완화이며 패치의 대체 수단이 아니다.
계획적 조치
자산 인벤토리에 WordPress Core·플러그인·테마 버전, 외부 노출도, 사용자 입력 처리 기능을 연결한다. KEV 등재 취약점은 일반 취약점보다 짧은 패치 SLA로 관리하고, 업데이트 후에는 사이트 기능과 API 연동을 검증한다.
운영 체크리스트
| 구분 | 점검 항목 | 권장 조치 | 담당 |
|---|---|---|---|
| 자산 확인 | WordPress Core 실행 버전 | 6.8.6·6.9.5·7.0.2 이상으로 업데이트 | 웹 운영 |
| 코드 검토 | WP_Query와 author__not_in 사용 |
외부 입력 경로와 타입·허용값 검증 | 개발팀 |
| 연계 위험 | CVE-2026-63030 패치 여부 | 같은 변경 창에서 동시 패치 | 웹 운영 |
| 로그 조사 | DB 오류·REST 요청·파일/계정 변경 | 보존 후 이상 징후 분석·격리 | 보안 대응 |
| 사후 검증 | 업데이트 후 기능·API 동작 | 서비스 장애 및 로그 정상화 확인 | 서비스 담당 |
결론
CVE-2026-60137은 실제 악용이 확인된 WordPress Core SQL 삽입 취약점으로, 영향 버전의 신속한 업데이트가 우선이다. 동시에 author__not_in에 도달하는 외부 입력 경로를 점검해야 하며, CVE-2026-63030과의 연계 가능성은 별도 공격 체인으로 구분해 관리해야 한다. 패치 후에도 로그·계정·파일 변경을 검토해 침해 흔적을 배제한다.
참고자료
- CVE Program
- NVD
- WordPress Security Advisory
- WordPress 7.0.2 Release
- CISA Known Exploited Vulnerabilities Catalog
- Security Desk: WordPress wp2shell 대응 가이드
본 콘텐츠는 AI 기술로 작성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하셨으면 댓글을 통해 의견을 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.
댓글 (0)
댓글을 작성하려면 로그인이 필요합니다.
로그인아직 댓글이 없습니다.
첫 번째 댓글을 작성해보세요!