긴급!! 엘리멘토 3.11.7 이전버전 해커에게 취약점 노출로 급하게 패치 - 여러분의 워드프레스 안전한지 체크하세요.

2023. 4. 4. 08:20워드프레스 정보창고/워드프레스 - 에러코드

많은 해커들은 수백만 개의 사이트를 완전히 제어할 수 있는 WordPress 플러그인 결함을 악용합니다.
Elementor Pro 회사는 취약점을 수정 베포했지만 모든 사람이 패치를 설치한 것은 아닙니다.


대부분 설치해서 그냥 사용하기때문에 버전 체크를 안하시게 되면 해커에게 쉽게 노출됩니다.
일단 노출되고 파일 변조가 있게되면 자기 도메인을 치고 들어가면 이상한 사이트로 리다이렉트되면서 수정도 안되고
수정해놔도 다시 변조되고가 반복됩니다. 코어파일과 wp-include 폴더 체크하셔야 됩니다.


해외 내용을 요약하면
해커들은 널리 사용되는 WordPress 플러그인에서 수백만 개의 사이트를 완전히 제어할 수 있는 능력을 제공하는 치명적인 취약점을 적극적으로 악용하고 있다고 연구원들은 말했습니다.

10점 만점에 8.8점의 심각도를 지닌 이 취약점은 WordPress 콘텐츠 관리 시스템으로 구동되는 1,200만 개 이상의 사이트에서 실행되는 프리미엄 플러그인인 Elementor Pro에 존재합니다 . Elementor Pro를 사용하면 사용자가 다양한 도구를 사용하여 고품질 웹사이트를 만들 수 있습니다. 그 중 하나는 별도의 WordPress 플러그인인 WooCommerce입니다. 이러한 조건이 충족되면 구독자 또는 고객과 같이 사이트에 계정이 있는 사람은 누구나 전체 관리자 권한이 있는 새 계정을 만들 수 있습니다.

이 취약점은 보안 회사인 NinTechNet의 연구원인 Jerome Bruandet이 발견했습니다.
지난 주, Elementor Pro 플러그인 개발자인 Elementor 회사는 급하게 결함을 패치한 버전 3.11.7을 출시했습니다 .

화요일에 게시된 게시물 에서 Bruandet은 다음과 같이 썼습니다.

 

users_can_register인증된 공격자는 취약점을 악용하여 등록( )을 활성화하고 기본 역할( )을 "관리자"로 설정하여 관리자 계정을 생성하거나 default_role관리자 이메일 주소를 변경( admin_email)하거나 아래와 같이 모든 트래픽을 외부 악성 웹사이트로 리디렉션 할 수 있습니다.
siteurl다른 많은 가능성 중에서 변경하여 :
MariaDB [example]> SELECT * FROM `wp_options` WHERE `option_name`='siteurl';
+-----------+-------------+------------------+----------+
| option_id | option_name | option_value     | autoload |
+-----------+-------------+------------------+----------+
|		 1 | siteurl     | https://evil.com | yes 	 |
+-----------+-------------+------------------+----------+
1 row in set (0.001 sec)

 

또한 별도의 보안 회사인 PatchStack의 연구원들은 이 취약점이 적극적으로 악용되고 있다고 보고했습니다 . 
공격은 다음과 같은 다양한 IP 주소에서 발생합니다.

  • 193.169.194.63
  • 193.169.195.64
  • 194.135.30.6

손상된 사이트에 업로드된 파일의 이름은 종종 다음과 같습니다.

  • wp-resortpack.zip
  • wp-rate.php
  • lll.zip

손상된 사이트의 URL은 종종 다음과 같이 변경됩니다.

  • away[dot]trackersline[dot]com

손상된 액세스 제어 취약점은 Elementor Pro의 "elementor-pro/modules/woocommerce/module.php" 구성 요소 사용에서 비롯됩니다. WooCommerce가 실행 중일 때 이 스크립트는 다음 AJAX 작업을 등록합니다.

 

/**
 * Register Ajax Actions.
 *
 * Registers ajax action used by the Editor js.
 *
 * @since 3.5.0
 *
 * @param Ajax $ajax
 */
public function register_ajax_actions( Ajax $ajax ) {
   // `woocommerce_update_page_option` is called in the editor save-show-modal.js.
   $ajax->register_ajax_action( 'pro_woocommerce_update_page_option', [ $this, 'update_page_option' ] );
   $ajax->register_ajax_action( 'pro_woocommerce_mock_notices', [ $this, 'woocommerce_mock_notices' ] );
}
/**
 * Update Page Option.
 *
 * Ajax action can be used to update any WooCommerce option.
 *
 * @since 3.5.0
 *
 * @param array $data
 */
public function update_page_option( $data ) {
   update_option( $data['option_name'], $data['editor_post_id'] );
}


담당자인 ruandet 
B은 update_option 기능은 "관리자 또는 상점 관리자가 일부 특정 WooCommerce 옵션을 업데이트할 수 있도록 허용해야 하지만, 관리자에서 특정 권한을 가진 사용자에게만 액세스를 콘트롤하는 기능 제어가 부족합니다"라고  설명했습니다. 그는 이어서

Elementor는 자체 AJAX 핸들러를 사용하여 pro_woocommerce_update_page_option전역 elementor_ajax작업을 포함한 대부분의 AJAX 작업을 관리합니다.
무료 버전(Elementor Pro 실행에 필요)의 "elementor/core/common/modules/ajax/module.php"
스크립트에 있습니다.
/**
 * Handle ajax request.
 *
 * Verify ajax nonce, and run all the registered actions for this request.
 *
 * Fired by `wp_ajax_elementor_ajax` action.
 *
 * @since 2.0.0
 * @access public
 */
public function handle_ajax_request() {
   if ( ! $this->verify_request_nonce() ) {
  	$this->add_response_data( false, esc_html__( 'Token Expired.', 'elementor' ) )
     	->send_error( Exceptions::UNAUTHORIZED );
   }
   ...

 

Elementor Pro를 사용하는 모든 사용자는 이전 버전이 모두 취약하므로 3.11.7 이상을 실행 중인지 확인해야 합니다. 
관리자-플럭인-업데이트를 통해서 반드시 업데이트를 해주시는게 좋습니다.
워드프레스가 워낙 보안에 취약하고 해외에서 공격이 많이 오는 것으로 유명하지만 전세계적으로 가장 많이 설치된 엘리멘토 페이지빌더를 통해서 보안이 뚫린점은 생각지 못한 부분입니다.

보안의 기본은 워드프레스 최신버전 설치와 최소한의 플러그인 설치, 그리고 wordfense처럼 보안 플러그인, 해외 IP 차단등으로 기본정도는 막을 수 있습니다. 일단 긴급 발표된 만큼 빠른 패치나 기존 사용하던 버전을 먼저 체크해보시고 업데이트를 해주시는게 좋습니다.


📌 블로그 면책조항

본 블로그의 모든 콘텐츠는 일반적인 정보 제공을 목적으로 하며, 전문적인 법률, 의료, 금융 조언을 대체하지 않습니다. 제공되는 정보의 정확성과 최신성을 위해 노력하고 있지만, 일부 내용이 부정확하거나 누락될 수 있으며 이에 대한 책임을 지지 않습니다. 또한 외부 링크의 정보와 서비스 신뢰성을 보장하지 않으며, 이를 이용해 발생한 손해에 대해서도 책임지지 않습니다. 본 블로그의 모든 콘텐츠는 저작권법의 보호를 받으며 무단 복제나 상업적 이용은 금지되고, 이용자의 모든 행위는 본인의 책임 하에 이루어져야 합니다. 본 면책조항은 사전 공지 없이 변경될 수 있음을 알려드립니다.

📌 Google Adsense 광고 고지

본 블로그는 원활한 서비스 제공 및 운영을 위해 Google Adsense를 통한 광고를 게재하고 있습니다. Google을 포함한 제3자 광고 제공업체는 쿠키를 사용하여 사용자의 이전 방문 기록에 기반한 광고를 표시할 수 있습니다. Google의 쿠키 사용으로 인해 사용자는 본 블로그 및 다른 사이트 방문 기록을 기반으로 보다 개인화된 광고를 제공받게 됩니다. 사용자는 Google 광고 설정에서 맞춤 광고를 거부하거나 www.aboutads.info에서 제3자 쿠키 사용을 차단할 수 있습니다. 본 고지는 Google Adsense 프로그램 정책과 개인정보 보호를 위해 안내드립니다.