
MapPress Maps Pro < 2.53.9 - Execução Remota de Código (RCE) devido a Controle de Acesso Incorreto em Ações AJAX
MapPress Maps Pro < 2.53.9 - Execução Remota de Código (RCE) devido a Controle de Acesso Incorreto em Ações AJAX
A versão pro deste plugin registra várias ações AJAX que chamam funções sem verificações de capacidade e nonce, especificamente as funções ‘ajax_get’, ‘ajax_save’ e ‘ajax_delete’ em mappress_template.php. Dessa forma, é possível que um atacante autenticado com permissões mínimas, como um assinante, realize as seguintes ações:
Fazer upload de um arquivo PHP executável (incluindo potenciais backdoors) e obter Execução Remota de Código enviando uma requisição $_POST para wp-admin/admin-ajax.php com o parâmetro ‘action’ definido como ‘mapp_tpl_save’, o parâmetro ‘name’ definido como o nome base do arquivo que deseja criar, e o parâmetro ‘content’ definido como código PHP executável. Esse arquivo será criado no diretório do tema ativo no momento e poderá ser executado a partir dele.
Excluir qualquer arquivo PHP existente no site (como wp-config.php) enviando uma requisição $_POST para wp-admin/admin-ajax.php com o parâmetro ‘action’ definido como ‘mapp_tpl_delete’, e o parâmetro ‘name’ definido como o nome base do arquivo a ser excluído. Por exemplo, para excluir wp-config.php, um ataque de travessia de diretório pode ser usado, e o parâmetro ‘name’ poderia ser definido como ‘../../../wp-config’. Isso faria com que o site fosse redefinido, momento em que um atacante poderia obter controle total do site.
Visualizar o conteúdo de qualquer arquivo PHP existente no site (como wp-config.php) enviando uma requisição $_GET para wp-admin/admin-ajax.php com o parâmetro ‘action’ definido como ‘mapp_tpl_get’, e o parâmetro ‘name’ do arquivo a ser divulgado. Por exemplo, para visualizar o conteúdo de wp-config.php, um ataque de travessia de diretório pode ser usado, e o parâmetro ‘name’ poderia ser definido como ‘../../../../wp-config’.
python3 exploit.py --url http://wordpress.lan --username user --password useruser1 --code "<?php phpinfo(); ?>"