긴급 코너스톤 플러그인 임의 코드 취약점//게시일 2026-06-06//CVE-2026-49113

WP-방화벽 보안팀

Cornerstone Plugin Vulnerability

플러그인 이름 코너스톤
취약점 유형 임의 코드 실행
CVE 번호 CVE-2026-49113
긴급 높은
CVE 게시 날짜 2026-06-06
소스 URL CVE-2026-49113

긴급 보안 권고 — 코너스톤 플러그인(< 7.8.8)에서의 임의 코드 실행 및 지금 해야 할 일

날짜: 2026-06-05
작가: WP-방화벽 보안팀

요약하자면

높은 심각도의 임의 코드 실행 취약점(CVE-2026-49113, CVSS 8.5)이 코너스톤 플러그인 버전 이전에 영향을 미칩니다. 7.8.8. 낮은 권한의 인증된 사용자(구독자 수준)가 주입 결함을 악용하여 취약한 사이트에서 원격 코드 실행으로 상승할 수 있습니다. 이 문제는 보안 연구원인 응우옌 바 칸이 2026년 4월에 보고하였고 2026년 6월 초에 공개되었습니다.

귀하의 WordPress 사이트가 코너스톤을 사용하고 7.8.8보다 이전 버전을 실행 중이라면 즉시 업데이트하십시오. 즉시 업데이트할 수 없는 경우, WAF에서 가상 패치 및 완화 제어를 적용하고, 접근을 제한하며, 아래의 사고 대응 체크리스트를 따르십시오.

이 권고는 WP‑Firewall 보안 팀에서 제공하며, 명확하고 실용적인 지침이 필요한 사이트 소유자, 개발자 및 호스팅 제공자를 위해 작성되었습니다 — 기술적인 군더더기 없이.


무슨 일이 있었나

  • 취약점: 임의 코드 실행(원격)
  • 영향을 받는 소프트웨어: 코너스톤 WordPress 플러그인
  • 취약한 버전: 이전의 모든 릴리스 7.8.8
  • 패치됨: 7.8.8
  • CVE: CVE-2026-49113
  • 보고됨: 2026년 4월 23일(연구원); 공개 발표 2026년 6월 4일
  • 심각성: 높은 (CVSS 8.5)
  • 필요한 권한: 구독자 (낮은 권한, 인증된 사용자)

요약하자면: 결함으로 인해 인증된 낮은 권한의 사용자가 웹 서버/PHP 사용자 아래에서 임의 코드를 실행할 수 있는 데이터를 주입할 수 있습니다. 공격자는 이를 무기화하여 백도어를 설치하거나 악성 관리자 계정을 생성하거나 사이트를 완전히 제어하고 다른 시스템으로 전환할 수 있습니다.


왜 이것이 위험한가

이 유형의 취약점이 특히 심각한 주요 이유는 다음과 같습니다:

  • 임의 코드 실행은 공격자가 웹 서버의 맥락에서 PHP 또는 시스템 수준의 명령을 실행할 수 있음을 의미합니다. 이는 전체 사이트가 손상될 수 있습니다.
  • 필요한 공격자 권한이 낮습니다(구독자). 사용자 등록을 허용하거나 구독자가 있는 모든 사이트 — 멤버십, 블로그 및 전자상거래 상점을 포함하여 — 노출됩니다.
  • 이러한 취약점은 자동화된 대량 악용 캠페인에서 일반적으로 악용됩니다. PoC가 제공되면 대규모 자동 스캔이 일반적으로 빠르게 뒤따릅니다.
  • 탐지가 종종 지연됩니다: 공격자는 플러그인 업데이트를 생존하는 은밀한 백도어를 설치하는 경향이 있습니다.

공격자가 이를 악용할 수 있는 방법(고수준, 비악용)

익스플로잇 코드를 보여주기보다는 방어해야 할 공격자 워크플로우는 다음과 같습니다:

  1. 구독자 계정을 생성하거나 사용하세요(또는 하나를 손상시키세요).
  2. 콘텐츠를 적절하게 정리하거나 검증하지 않는 취약한 Cornerstone 엔드포인트(AJAX 작업, admin-ajax, 플러그인 AJAX 경로 또는 양식 필드)에 조작된 입력을 제출하세요.
  3. 애플리케이션이 공격자가 제공한 PHP를 평가하거나 작성하도록 하거나, 나중에 코드 실행을 트리거하는 저장된 페이로드를 생성하도록 하는 페이로드를 주입하세요.
  4. 원격 코드 실행을 사용하여 PHP 웹쉘을 작성하거나, 새로운 관리자 사용자를 생성하거나, 테마 파일을 수정하거나, 지속적인 액세스를 유지하세요.
  5. 데이터 도용, SEO 남용, 스팸, 호스팅 환경에서의 피벗 또는 랜섬을 위한 콘텐츠 암호화를 수행하세요.

초기 단계는 구독자 권한만 필요하기 때문에, 공개 등록, 회원 가입 또는 취약한 댓글-사용자 흐름이 있는 사이트는 높은 위험에 처해 있습니다.


위험에 처한 대상

  • Cornerstone 플러그인 버전이 이전 버전인 사이트 7.8.8.
  • 사용자 등록을 허용하거나 구독자 수준의 사용자가 있는 사이트.
  • 공격자가 피벗할 수 있는 공유 호스팅 및 다중 사이트 환경.
  • WAF/가상 패치 또는 공격적인 모니터링이 활성화되지 않은 사이트.

여러 개의 WordPress 설치를 호스팅하는 경우, 모든 설치를 확인하세요. 공격자는 일반적으로 도메인과 서브도메인을 스캔하므로 클러스터 내의 하나의 취약한 사이트가 여러 속성을 손상시키기에 충분합니다.


즉각적인 조치 (다음 한 시간 내에 할 일)

  1. Cornerstone을 7.8.8 이상으로 업데이트하세요. — 패치는 확정적인 수정입니다. 가능하면 즉시 수행하세요.
  2. 지금 업데이트할 수 없다면, 플러그인을 비활성화하십시오. Cornerstone 플러그인을 비활성화하거나 취약한 엔드포인트를 노출하는 기능을 끄세요(가능하면 스테이징에서 테스트하세요).
  3. WAF를 통해 가상 패치를 활성화하세요. — 취약한 요청 패턴을 차단하고 플러그인에 연결된 위험한 AJAX 엔드포인트를 비활성화하는 규칙을 적용하세요.
  4. 비밀번호 재설정을 강제하십시오. “구독자” 이상의 모든 사용자 계정과 의심스러운 계정에 대해. 모든 관리자 비밀번호를 재설정하는 것을 고려하세요.
  5. 사용자 등록 강화 — 공개 등록이 있는 경우 일시적으로 비활성화하세요.
  6. 모니터링/로깅을 켜거나 증가시키고 침해 지표를 스캔하십시오(아래 참조).
  7. 침해된 것으로 의심되면, 조사 및 수정하는 동안 사이트를 오프라인으로 전환하거나 유지 관리 모드로 설정하십시오.

손상의 지표(IoCs) — 무엇을 찾아야 하는지

파일, 데이터베이스 및 서버 로그에서 이러한 징후를 스캔하십시오:

  • 예상치 못한 관리자 사용자 또는 생성하지 않은 권한이 상승된 사용자.
  • wp-content/uploads, 테마 또는 플러그인에 있는 새로 생성되거나 수정된 PHP 파일; 특히 무작위 이름이거나 eval/base64_decode/system 호출을 포함하는 파일.
  • 의심스러운 예약 작업(wp_cron 항목) 또는 익숙하지 않은 크론 작업.
  • 웹 서버에서 비정상적인 IP/도메인으로의 아웃바운드 네트워크 연결.
  • CPU, 메모리 또는 아웃바운드 트래픽의 비정상적인 급증.
  • 플러그인 엔드포인트에 대한 POST 요청과 관련된 500/503 서버 오류.
  • 액세스 로그의 이상한 항목: admin-ajax.php 또는 비정상적인 페이로드(긴 Base64 문자열, 인식하지 못하는 클래스의 직렬화된 데이터)에 대한 POST.
  • 웹쉘 아티팩트: 인코딩된 데이터의 긴 줄 또는 eval, preg_replace with /e, assert(), 또는 create_function() 호출이 있는 파일.

유용한 grep(서버 콘솔에서 실행; 경로를 환경에 맞게 조정):

  • 최근에 수정된 PHP 파일을 찾습니다:
    find /var/www/html -type f -name "*.php" -mtime -30 -print
  • base64 및 eval 패턴을 찾으십시오:
    grep -R --line-number -I --exclude-dir=vendor -E "base64_decode|eval\(|assert\(|preg_replace\(|create_function\(" /var/www/html
  • admin-ajax에 대한 의심스러운 POST를 액세스 로그에서 검색하십시오:
    zgrep "POST .*admin-ajax.php" /var/log/apache2/*access* | grep -E "base64|eval|wp-content"

메모: 긍정적인 지표를 발견하면 로그와 파일 타임스탬프를 보존하십시오. 가능하다면 변경하기 전에 포렌식 스냅샷을 찍으십시오.


상세한 수정 전략

격리, 근절 및 복구를 위한 단계별 접근 방식.

1. 격리

  • 취약한 플러그인을 7.8.8로 업데이트하여 첫 번째 차단 단계를 수행하십시오.
  • 업데이트가 불가능한 경우 플러그인을 비활성화하거나 취약한 엔드포인트에 대한 요청을 차단하십시오.
  • 익스플로잇 패턴을 차단하기 위해 WAF 규칙을 적용하십시오(가상 패치).
  • 공개 등록을 비활성화하고 가능한 경우 IP 화이트리스트를 사용하여 로그인을 제한하십시오.

2. 조사

  • 로그 수집: 웹 서버, PHP-FPM, 접근, 오류 로그 및 WordPress 로그(있는 경우).
  • 파일 체크섬을 알려진 좋은 백업 또는 원본 플러그인/테마 배포와 비교하십시오.
  • 수정된 코어/테마/플러그인 파일과 wp-content/uploads, wp-content/plugins 및 wp-content/themes 아래에 새로 생성된 파일을 확인하십시오.

3. 근절

  • 발견된 웹쉘이나 백도어를 제거하십시오(주의해서 수행하십시오; 확실하지 않은 경우 깨끗한 백업에서 복원하십시오).
  • 악성 관리자 사용자를 삭제하고 모든 비밀번호를 재설정하십시오.
  • 노출되었을 수 있는 모든 API 키와 자격 증명을 회전하십시오.

4. 복구

  • 깨끗한 사전 침해 백업에서 사이트 파일과 데이터베이스를 복원한 후 플러그인/테마를 즉시 업그레이드하십시오.
  • 공식 소스에서 새로 다운로드하여 Cornerstone을 재설치한 후 7.8.8 이상으로 업데이트하십시오.
  • 보안 강화 조치를 다시 적용하십시오: 파일 권한, wp-config.php에서 파일 편집 비활성화, 최소 권한 사용자 역할.

5. 사건 후

  • 철저한 보안 스캔을 수행하십시오(악성 코드 스캐너, 파일 무결성 검사).
  • 측면 이동 또는 반복적인 지표에 대한 로그를 검토하십시오.
  • 사용자와 직원에게 사건에 대해 교육하고 장기적인 완화 조치를 구현하십시오.

내부에 전문 지식이 없다면, 포렌식 분석을 수행하고 깨끗한 복구 계획을 제공할 수 있는 보안 전문가와 협력하십시오. 호스트는 조사가 진행되는 동안 영향을 받은 계정을 격리하는 것을 고려해야 합니다.


WP‑Firewall이 귀하를 보호하는 방법 (실용적인 완화 옵션)

WP‑Firewall에서는 계층화된 접근 방식을 권장합니다. 다음은 관리형 방화벽, WAF 및 보안 서비스가 이러한 유형의 공격을 차단하는 데 어떻게 도움이 되는지입니다.

  • 가상 패치 (WAF 규칙): 취약한 Cornerstone 엔드포인트를 겨냥한 악성 페이로드를 가로채고 차단하는 타겟 규칙을 배포할 수 있으며, 즉각적인 플러그인 업데이트 없이도 공격 시도를 방지합니다.
  • 행동 감지: 의심스러운 POST 패턴, 비정상적인 요청 크기 및 잘못된 페이로드(예: 비정상적으로 큰 Base64 블롭 또는 직렬화된 페이로드)를 감지하고 제한합니다.
  • 역할 기반 접근 제어: IP로 관리 엔드포인트에 대한 접근을 제한하거나 플러그인 AJAX 핸들러에 대한 접근을 위해 추가 인증을 요구합니다.
  • 악성코드 검사 및 치료: 알려진 웹쉘 패턴에 대한 지속적인 스캔 및 악성 파일의 자동 격리/제거.
  • 실시간 경고 및 로그: 가능한 공격 시도가 차단될 때 실행 가능한 경고(이메일/SMS/UI)를 보내고 후속 조치를 위한 맥락 로그를 제공합니다.
  • 사고 지원: 손상이 발견되면 안내 및 관리된 복구를 제공합니다.

이러한 제어는 즉시 위험을 줄이고 권장 업데이트 및 포렌식 단계를 수행할 시간을 확보합니다.


제안된 WAF 규칙 개념 (원시 공격 페이로드를 붙여넣지 마십시오)

아래는 WAF 규칙을 위해 고려해야 할 고수준 패턴 및 행동입니다. 신중하게 구현하십시오 — 합법적인 트래픽을 차단하지 않도록 먼저 탐지/학습 모드에서 테스트하십시오.

  1. 명백한 원격 코드 패턴 차단:
    • POST 데이터에 의심스러운 함수 이름이 포함된 요청 차단: 평가(, assert(, base64_decode(, system(, exec(, shell_exec(, passthru(, preg_replace("/e").
    • 조치: 차단 및 로그.
  2. 관리 AJAX 엔드포인트 제한:
    • 비인증 사용자로부터 admin-ajax.php 및 모든 플러그인 전용 AJAX 엔드포인트에 대한 호출을 제한합니다.
    • 특권 작업을 수행하는 알려진 플러그인 엔드포인트의 경우, 내부 토큰을 요구하거나 로그인한 관리자에서 유래해야 합니다.
  3. 크기 임계값 및 문자 집합 검사:
    • 매우 큰 인코딩된 문자열, 비인쇄 문자 사용이 많은 경우 또는 매우 긴 직렬화된 페이로드를 포함하는 POST 본문을 차단합니다.
    • 조치: CAPTCHA 또는 403으로 CHALLENGE/REJECT.
  4. 직렬화된 PHP 객체 주입에 대한 서명:
    • 예상치 못한 클래스 이름(특히 몬스터 역직렬화될 수 있는 애플리케이션 클래스)을 포함하는 직렬화된 페이로드를 감지/분류합니다.
    • 조치: 차단 + 경고.
  5. 사용자 행동 프로파일링:
    • 새로 생성된 계정이나 IP 주소에서 반복 요청을 제한하며, 특히 긴 페이로드를 게시할 때 그렇습니다.
    • 조치: 속도 제한 또는 임시 금지.
  6. 지리/IP 제한(해당되는 경우):
    • 관리자 영역의 경우, 알려진 지리적 지역 또는 알려진 IP 범위만 허용하고, 다른 지역은 차단하거나 도전합니다.
  7. 업로드 정책:
    • 업로드 디렉토리에서 PHP 파일 실행을 방지합니다. 서버 구성에 따라 업로드에서 모든 .php, .phtml, .phar를 거부합니다.
    • 업로드에 대한 엄격한 파일 유형 검사를 구현합니다.

메모: 이는 개념적 제어입니다 — WP‑Firewall은 맞춤형, 낮은 오탐지 규칙을 구현할 수 있습니다. 먼저 탐지 모드에서 로그를 검증하지 않고 “차단” 모드에서 규칙을 적용하지 마십시오.


탐지 및 사냥 플레이북(실용적인 쿼리)

이러한 예제를 사용하여 시도된 또는 성공적인 악용의 증거를 사냥합니다.

WordPress 데이터베이스: 의심스러운 옵션 또는 게시물 콘텐츠를 검색합니다:

SELECT option_name, option_value
FROM wp_options
WHERE option_name LIKE '%cornerstone%' OR option_value LIKE '%eval(%' OR option_value LIKE 'se64_%';
SELECT ID, user_login, user_email, user_registered, user_status;

서버 로그: 의심스러운 요청을 찾습니다:

zgrep -i "admin-ajax.php" /var/log/apache2/*access* | zgrep -Ei "base64|eval|serialize|object"

파일 시스템: 업로드에서 새로운 PHP 파일을 확인합니다:

find /var/www/html/wp-content/uploads -type f -name "*.php" -print

직렬화 남용 또는 인코딩된 페이로드의 징후가 보이면 잠재적인 손상을 가정하고 사건 대응으로 에스컬레이션합니다.


강화 권장 사항 (미래 사건 방지)

  • 모든 플러그인, 테마 및 코어를 업데이트 상태로 유지합니다. 안전한 경우 자동 업데이트를 활성화합니다.
  • 사용자 역할을 제한하고 최소 권한 원칙을 적용합니다.
  • 플러그인 및 테마 편집기를 비활성화합니다: 추가 define('DISALLOW_FILE_EDIT', true); wp-config.php에.
  • 모든 특권 계정에 대해 강력한 비밀번호와 MFA를 시행합니다.
  • 가상 패칭 및 자동 스캔이 포함된 관리형 WAF를 사용합니다.
  • 업로드에서 PHP 실행 비활성화:
    <FilesMatch "\.php$">
       Deny from all
    </FilesMatch>
    
  • 정기적으로 백업하고 오프사이트에서 백업을 검증합니다.
  • 정기적인 파일 무결성 검사 및 악성 코드 스캔을 실행합니다.
  • 로그에서 이상 징후를 모니터링하고 로그를 중앙 집중식으로 저장하여 보존/포렌식 준비를 합니다.
  • 직원 및 사용자에게 피싱 및 자격 증명 위생에 대해 교육합니다.

호스팅 제공업체에 대한 권장 사항

  • 임대 사이트를 사전적으로 스캔하여 취약한 Cornerstone 버전을 찾아 고객에게 알립니다.
  • 영향을 받는 임대인에게 자동 가상 패칭 또는 WAF 규칙을 제공합니다.
  • 고객이 공급업체에서 제공한 패치를 업데이트할 수 있도록 안내 및 지원을 제공합니다.
  • 침해가 의심되는 사이트를 격리하고 고객에게 복구 단계 및 포렌식 옵션을 알립니다.
  • 명시적으로 요구되지 않는 한 모든 계정의 업로드 디렉토리에서 직접 PHP 실행을 차단합니다.

복구 체크리스트(침해를 당한 경우)

  1. 격리를 위해 사이트를 오프라인 또는 유지 관리 모드로 전환합니다.
  2. 로그 변경을 동결하고 포렌식 스냅샷을 찍습니다.
  3. 초기 접근 벡터를 식별하고 모든 지표를 기록합니다.
  4. 웹쉘/백도어를 제거하거나 깨끗한 백업에서 복원합니다.
  5. 취약한 플러그인을 패치합니다(코너스톤 7.8.8+).
  6. 모든 비밀번호와 API 키(데이터베이스, 관리자, FTP/SFTP, 호스팅 패널)를 변경합니다.
  7. 공식 소스에서 모든 플러그인/테마를 재설치합니다.
  8. 전체 맬웨어 스캔 및 파일 무결성 검사를 다시 실행합니다.
  9. 서비스를 다시 활성화하고 재발 여부를 면밀히 모니터링합니다.
  10. 사건을 호스트/보안 파트너에게 보고하고 영향을 받는 이해관계자에게 공개하는 것을 고려합니다.

WP‑Firewall에서 이 특정 코너스톤 권고를 처리하는 방법에 대한 조언

  • 코너스톤 <7.8.8을 실행 중인 경우, 7.8.8 이상으로 즉시 업데이트하는 것을 우선시합니다.
  • 업데이트 일정을 잡는 동안 타겟 가상 패치를 적용하기 위해 관리형 WAF를 사용합니다.
  • 등록이 열려 있는 경우, 임시로 닫거나 새 계정에 대한 추가 확인 단계를 설정합니다.
  • 전체 사이트 맬웨어 스캔을 활성화하고 WP‑Firewall에서 원클릭 무결성 검사를 실행합니다.
  • 의심스러운 엔드포인트 및 새 계정에 대해 자동 블랙리스트 및 속도 제한 보호를 활성화합니다.

관리 보안 운영 팀이 유료 플랜 고객을 위한 조사 및 긴급 수정 작업을 도와드릴 수 있습니다. 즉각적인 셀프 서비스 방어를 원하는 팀을 위해, 무료 기본 플랜에는 관리형 방화벽, WAF, 악성 코드 스캐너 및 OWASP Top 10 위험에 대한 완화 조치가 포함되어 있습니다(자세한 내용은 아래 참조).


새로 추가됨: 사이트 소유자를 위한 즉각적인 보호 — 무료 플랜 개요

WP‑Firewall로 즉각적인 무료 보호 받기

업데이트 및 수정 작업을 준비하는 동안 즉각적이고 비용이 없는 기본 보호를 원하신다면, 기본(무료) 플랜이 필수 방어를 제공합니다:

  • OWASP Top 10 벡터를 포함한 알려진 익스플로잇을 차단하는 관리형 방화벽 및 WAF 규칙
  • 무제한 대역폭 및 실시간 공격 차단
  • 일반 웹쉘 및 의심스러운 파일을 탐지하는 악성 코드 스캐너
  • 일반적인 주입 및 RCE 패턴에 대한 자동 완화 규칙

즉각적인 가상 패치 및 지속적인 보호를 활성화하려면 지금 가입하세요: https://my.wp-firewall.com/buy/wp-firewall-free-plan/

(자동 정리, IP 화이트리스트/블랙리스트 또는 월간 보고서가 필요하다면, 고급 수정 작업, 관리 서비스 및 자동 가상 패치를 위한 표준 및 프로 등급을 확인하세요.)


자주 묻는 질문

Q — 이미 7.8.8로 업데이트했습니다. 안전한가요?
A — 업데이트는 취약점을 제거하지만, 업데이트 이전에 사이트가 악용되었다면 여전히 백도어 또는 지속성 메커니즘이 있을 수 있습니다. 전체 악성 코드 스캔을 실행하고 파일 및 사용자를 검사하며 백업을 확인하세요.

Q — 사이트를 오프라인으로 전환할 수 없습니다 — 어떻게 해야 하나요?
A — WAF를 차단 모드로 설정하고 즉시 가상 패치를 활성화하세요. 패치를 적용할 수 있을 때까지 사용자 등록 및 플러그인 엔드포인트에 대한 외부 접근을 격리하고 차단하세요.

Q — 방문자가 로그인 없이 이를 악용할 수 있나요?
A — 이 취약점은 구독자 수준의 인증된 접근이 필요합니다. 그러나 공격자는 종종 등록이나 자격 증명 도용을 통해 구독자 계정을 생성하거나 획득하므로, 공개 등록은 위험을 증가시킵니다.

Q — 업데이트가 내 사이트 디자인이나 사용자 정의를 망칠까요?
A — 플러그인 업데이트는 때때로 사용자 정의 통합에 영향을 줄 수 있습니다. 항상 스테이징에서 먼저 업데이트를 테스트하세요. 손상이 발생하지 않도록 즉각적인 업데이트가 필요하다면, 업데이트를 적용한 후 테스트하세요; 문제가 발생하면 깨끗한 백업에서 복원하고 플러그인 저자 또는 개발자와 협력하세요.


마지막 말

이는 높은 우선 순위의 취약점입니다. 필요한 공격자 권한이 낮더라도, 결과는 전체 사이트 탈취가 될 수 있습니다. 지체하지 마세요: 지금 Cornerstone을 7.8.8로 업데이트하고, 즉시 업데이트할 수 없다면 WAF 가상 패치를 활성화하며, 침해 지표에 대한 집중 조사를 수행하세요. 도움이 필요하다면, 경험이 풍부한 WordPress 사고 대응자를 고려하세요.

WP‑Firewall 팀은 상황을 모니터링하고 있으며 모든 고객을 위한 보호 규칙을 제공합니다. 빠르고 실질적인 도움이 필요하다면, 저희 보안 팀이 도와드릴 준비가 되어 있습니다.

안전히 계세요,
WP‑Firewall 보안 팀


wordpress security update banner

WP Security Weekly를 무료로 받으세요 👋
지금 등록하세요
!!

매주 WordPress 보안 업데이트를 이메일로 받아보려면 가입하세요.

우리는 스팸을 보내지 않습니다! 개인정보 보호정책 자세한 내용은