피드로 돌아가기
Someone Bought 30 WordPress Plugins and Planted a Backdoor in All of Them
Hacker NewsHacker News
Security

Ethereum Smart Contract 기반 C2를 활용한 31종 플러그인 공급망 공격 분석

Someone Bought 30 WordPress Plugins and Planted a Backdoor in All of Them

2026년 4월 13일8advanced

Context

기존 WordPress 플러그인 생태계의 소유권 이전 과정에서 코드 리뷰 및 검증 메커니즘의 부재로 인한 보안 취약점 발생. 신뢰받던 플러그인 포트폴리오가 매각된 후, 새로운 소유자가 정기 업데이트를 통해 백도어를 삽입한 Supply Chain Attack 사례임.

Technical Solution

  • PHP Deserialization 취약점을 이용한 RCE(Remote Code Execution) 경로 확보를 위해 unserialize() 함수와 file_get_contents()를 조합한 백도어 설계
  • permission_callback: __return_true 설정의 비인증 REST API 엔드포인트를 생성하여 원격에서 임의 함수 호출 및 인자 제어 구조 구현
  • 도메인 차단을 무력화하기 위해 Ethereum Smart Contract를 통해 C2 도메인을 동적으로 Resolve하는 Blockchain-based DNS 체계 도입
  • wp-config.php 파일 내 require_once ABSPATH . 'wp-settings.php'; 라인에 약 6KB 규모의 악성 페이로드를 삽입하여 지속성(Persistence) 유지
  • Googlebot에만 스팸 콘텐츠를 노출하는 Cloaking 기법을 적용하여 사이트 관리자의 탐지를 회피하는 가시성 제어 로직 구현

- Third-party 플러그인 업데이트 전 `unserialize()` 등 위험 함수 추가 여부 확인 - `wp-config.php` 등 핵심 설정 파일의 파일 크기 및 체크섬(Checksum) 기반 무결성 모니터링 구축 - 비정상적인 외부 RPC 엔드포인트 호출 및 Ethereum RPC 통신 트래픽 차단 설정 - REST API 엔드포인트의 `permission_callback` 설정이 `__return_true`로 설정된 개방형 인터페이스 전수 조사

원문 읽기