CVE-2026-15980: MyHome Core 인증 우회로 관리자 계정 탈취 가능한 취약점

CVE-2026-15980은 MyHome Core 플러그인의 send_link() AJAX 핸들러에서 권한 확인이 누락되고, activate() 함수에서 토큰 검증이 부적절한 취약점입니다. 비인증 공격자가 미확인 계정의 활성화 토큰을 생성한 뒤 해당 계정의 유효한 인증 쿠키를 획득할 수 있습니다. NVD는 이 취약점을 CVSS 3.1 기준 baseScore 9.8, baseSeverity CRITICAL로 평가했으며, 세 가지 조건이 동시에 충족되면 관리자 계정 탈취로 이어집니다.

CVE-2026-15980 개요: CVSS 9.8 CRITICAL 인증 우회 취약점

CVE-2026-15980은 TangibleWP에서 제공하는 WordPress MyHome Core 플러그인의 인증 우회 취약점으로, 활성화 토큰으로 계정을 탈취하는 경로를 포함합니다. CNA(CVE Numbering Authority)는 Wordfence이며, CVE Project(cveawg) 기록의 cveMetadata state는 PUBLISHED로 되어 있습니다.

NVD는 이 취약점을 CVSS 3.1 벡터 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H, baseScore 9.8, baseSeverity CRITICAL로 평가했습니다. 이 메트릭은 네트워크 기반 접근(AV:N), 낮은 공격 복잡성(AC:L), 권한 불필요(PR:N) 조건을 포함하며, 기밀성·무결성·가용성 모두 High(C:H/I:H/A:H)로 산정됩니다. 약점 유형은 CWE-289(Authentication Bypass by Alternate Name)로 분류되며, NVD vulnStatus는 ‘Received’로 기록되어 있습니다.

공격 원리: send_link() 권한 누락과 activate() 토큰 검증 결함의 결합

이 취약점의 기술적 원인은 두 함수의 결함이 조합된 형태입니다. 단일 결함만으로는 공격이 성립하지 않으며, send_link()와 activate()의 결함이 연쇄적으로 작동할 때 비인증 상태에서 계정 인증 세션을 획득하는 경로가 열립니다.

send_link() AJAX 핸들러의 권한 확인 누락

send_link() 함수는 AJAX 요청을 처리하는 핸들러로, 본래 인증된 사용자만 호출할 수 있어야 합니다. 그런데 이 핸들러에는 권한 확인(authorization check)이 누락되어 있어, 비인증 상태의 공격자도 해당 엔드포인트를 직접 호출할 수 있습니다. 이 누락 덕분에 공격자는 정당한 이메일 발송 절차를 거치지 않고 원하는 계정의 활성화 토큰을 생성할 수 있습니다.

activate() 함수의 부적절한 토큰 검증

activate() 함수는 계정 활성화 시 토큰을 검증하는 역할인데, 검증 로직이 부적절하게 구현되어 있습니다. 공격자가 send_link()로 생성한 토큰을 activate()에 전달하면 이 토큰이 정상적으로 검증되어 해당 계정에 유효한 인증 쿠키가 발급됩니다. 그 결과 이메일 확인 링크를 클릭한 것과 동일한 인증 상태가 만들어집니다.

관리자 계정 탈취가 성립하는 세 가지 조건

CVE-2026-15980이 악용되려면 다음 세 가지 조건이 동시에 충족되어야 합니다.

  1. MyHome 테마가 legacy/WPBakery 모드로 설정되어 있어야 한다. 현재 신규 모드로 운영 중인 사이트는 이 전제 조건을 만족하지 않으므로 해당 취약점의 직접적인 대상이 아닙니다.
  2. 프론트엔드 등록과 확인 이메일이 활성화되어 있어야 한다. 백오피스(admin)에서 직접 계정을 생성하는 방식만 사용하는 사이트에는 이 공격 경로가 적용되지 않습니다.
  3. 대상 계정에 myhomeagentconfirmed user meta가 아직 설정되지 않은 상태여야 한다. 계정 활성화(확인) 절차가 완료되기 전의 계정에 대해서만 공격이 성립합니다.

세 조건이 모두 충족되면 관리자를 포함한 해당 계정에 대한 탈취가 가능합니다. 실무로 보면 “관리자 계정을 백오피스에서 생성한 뒤 프론트엔드에서 이메일 확인을 기다리는 과도기”에 해당 계정이 무방비 상태에 놓이는 셈입니다.

영향 버전과 영향 대상

CVE Project(cveawg) 기록에서는 영향 받는 버전이 v0 이상 v4.4.5 이하(semver)로 명시되어 있습니다. MyHome Core를 최초 릴리스부터 4.4.5까지 설치한 모든 사이트가 잠재적 대상이며, CVE 공식 기록의 affected 컨테이너에는 vendor ‘TangibleWP’, product ‘MyHome Core’, versionType semver, status affected로 기재되어 있습니다.

항목 내용
플러그인 MyHome Core (TangibleWP)
영향 버전 v0 이상 ~ v4.4.5 이하 (semver)
CNA Wordfence
약점 유형 CWE-289 (Authentication Bypass by Alternate Name)
CVSS 3.1 9.8 CRITICAL (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
NVD vulnStatus Received

패치 및 대응: 4.4.6 업데이트와 운영 점검 체크리스트

Wordfence(본 CVE의 CNA) Vulnerability Details에는 패치 완료(Patched: Yes)와 수정 버전 4.4.6이 명시되어 있습니다. 이 정보는 CNA 1차 자료에서 확인된 단일 출처이므로, 업데이트 전 벤더 공식 체인지로그를 대조하는 것을 권장합니다. 4.4.6 이상 버전으로 업데이트하면 됩니다.

운영팀이 즉시 확인할 점검 항목은 다음과 같습니다.

  1. MyHome Core 플러그인 버전을 확인해 4.4.5 이하라면 4.4.6 이상으로 업데이트합니다.
  2. MyHome 테마의 현재 모드(legacy/WPBakery vs. 신규 모드)를 확인합니다. legacy/WPBakery 모드인 경우 이 취약점의 전제 조건이 성립하므로 특히 주의가 필요합니다.
  3. 프론트엔드 등록과 확인 이메일 설정이 활성화되어 있는지 점검합니다.
  4. 관리자 및 기타 핵심 계정의 myhomeagentconfirmed user meta가 이미 설정된 상태인지 확인합니다. 미설정 상태라면 공격 표적이 됩니다.
  5. 최근 접근 로그에서 send_link() 또는 activate() 관련 비정상 AJAX 호출이 있었는지 점검합니다.

공개 타임라인과 실제 공격 관측 현황

CVE 기록의 timeline에 따르면, 2026-07-16에 CVE ID가 예약(dateReserved)되었고, 2026-07-21에 벤더에게 통지(Vendor Notified)되었습니다. 공개(Disclosed)는 2026-08-29에 이루어졌으며, CVE 게시(datePublished)는 2026-08-30입니다. 발견자는 Rafie Muhammad(Awesome Motive)로 기재되어 있습니다.

Wordfence는 공개 당일 기준 최근 24시간 동안 이 취약점을 겨냥한 공격 290건을 차단했다고 보고했습니다. 이 수치는 차단(blocked) 건수이며, 실제 침해 성공 사례는 별도로 확인되지 않습니다. 현재까지 확인된 자료에는 공개 PoC나 실제 현장 악용(in-the-wild) 기록이 없어서, 악용의 실제 성행 여부는 판단 근거가 제한적입니다.

CWE-289와 NVD Received 상태가 의미하는 것

이 취약점은 CWE-289(Authentication Bypass by Alternate Name)로 분류됩니다. 정당한 인증 절차(이메일 확인 링크 등)를 우회해 대체 경로로 인증 상태를 획득하는 취약점 카테고리인데, 본 사례에서는 send_link()의 권한 누락이 해당 우회 경로를 형성합니다.

NVD vulnStatus가 ‘Received’로 기록되어 있다는 건 NVD가 해당 CVE를 접수했고 추가 평가나 분석이 진행 중일 수 있다는 뜻입니다. CVSS 9.8점과 CRITICAL 분류는 Primary source(Wordfence, security@wordfence.com)의 평가에 기반하며, 동일한 벡터와 점수는 CVE cvelistV5 기록에서도 일치합니다.

마무리: 조건 충족 시 실질적 위험, 패치 전 점검이 우선

CVE-2026-15980은 세 가지 조건이 모두 충족되지 않는 사이트에서는 공격이 성립하지 않습니다. 그러나 legacy/WPBakery 모드 + 프론트엔드 등록 활성화 + myhomeagentconfirmed 미설정 관리자 계정이라는 조합이 존재하는 사이트에서는, 비인증 상태에서 관리자 세션을 탈취당할 수 있는 실질적 위험이 있습니다. 공개 직후 24시간 내 290건의 표적 시도가 관측된 점을 감안하면, 4.4.6 패치 적용 전까지 해당 조건에 해당하는 사이트는 관리자 계정의 권한과 세션 관리에 추가 주의를 기울이는 것이 바람직합니다.

댓글 남기기