Entre em contato

Precisa de alguma ajuda?

Phone:123-456-789
HackingSegurança na webSegurança wordpressSem categoria

Vulnerabilidade sendo explorada no plugin fb-messenger-live-chat

Imagine poder utilizar o messenger do Facebook para falar diretamente com os visitantes de seu site, pois é essa a funcionalidade que o plugin que estamos falando proporciona para seus usuários, porém quem não faz atualizações periódicas em seus plugins do WordPress pode ter uma desagradável surpresa.

 

Recentemente foi publicada uma falha de Cross Site Scripting (XSS) no plugin Live Chat with Facebook Messenger conforme citado em nosso blog parceiro, essa falha está sendo amplamente explorada na internet, visto que está instalado em mais de 30.000 sites WordPress.

 

A falha:

Por razões de funcionalidade o plugin permite a  alteração de opções na tabela de configurações do WordPress, a wp_options, porém a falta de uma proteção adequada permite que a opção ztb_domainid seja alterada e assim redirecionando o site para outros domínios maliciosos.

Como é possível ver no trecho de código abaixo, as opções wp_ajax_update_zb_fbc_code(para usuários autenticados) e wp_ajax_nopriv_update_zb_fbc_code(para usuários não autenticados),  usam a mesma função “ update_zb_fbc_code“, Assim, permitindo que qualquer usuário (logado ou não) modifique as configurações do plugin.

154 add_action(“wp_ajax_update_zb_fbc_code”, “update_zb_fbc_code”); 155 add_action(“wp_ajax_nopriv_update_zb_fbc_code”, “update_zb_fbc_code”);

Juntando isso ao fato da função insert_zb_fbc_code abaixo não possuir checagem de privilégios para evitar problemas de segurança, a falha pode ser facilmente explorada:

157 function update_zb_fbc_code(){
158	header('Access-Control-Allow-Origin: *');
159   header('Access-Control-Allow-Credentials: true');
160	$domain = addslashes($_REQUEST['domain']);
161	$public_key = addslashes($_REQUEST['access']);
162	$id = intval($_REQUEST['customer']);
163	$zbEmail = addslashes($_REQUEST['email']);
164	if(!isset($domain) || empty($domain)){
165		header("Location: ".admin_url()."admin.php?page=zb_fbc");
166	}else{
167		update_option( 'ztb_domainid', $domain );
168		update_option( 'ztb_access_key', $public_key );
169		update_option( 'ztb_id', $id );
170		update_option( 'ztb_email', $zbEmail );
171		update_option( 'ztb_status_disconnect', 2 );
172		wp_send_json( array(
173			'error' => false,
174			'message' => 'Update Zotabox embedded code successful !' 
175			)
176		);
177	}
178 }

Atualização:

Fizemos o teste na versão 1.4.9 e a falha foi devidamente sanada, sendo assim se você utiliza esse plugin o atualize o mais rápido possível.

 

Caso esteja com seu site redirecionando e não sabe como resolver entre em contato conosco para ajuda especializada.

 

 

 

O que você achou?

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.