NRPE 2.15 Remote Command Execution Exploit

# Exploit Title : NRPE <= 2.15 Remote Code Execution Vulnerability # # Discovered by : Dawid Golunski # dawid (at) legalhackers (dot) com # legalhackers.com # # Exploit Author : Claudio Viviani # http://www.homelab.it # # # # C crc32 function ripped from check_nrpe_clone by Alan Brenner
# http://www.abcompcons.com/files/nrpe_client.py
#
# pyOpenSSL Library required (http://pyopenssl.sourceforge.net/)
#
# [root@localhost ~]# pip-python install pyOpenSSL
#
# NRPE <= 2.15 Remote Command Execution Vulnerability # Release date: 17.04.2014 # Discovered by: Dawid Golunski # Severity: High # CVE-2014-2913 # # http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-2913 # http://www.exploit-db.com/exploits/32925/ # http://www.homelab.it/index.php/2014/05/03/nagios-nrpe-remote-command-injection-test-fix/ (ITA) # # Tested on CentOS 5.x, CentOS 6.x, BacBox 3.x, KaliLinux 1.0.6 with Python 2.x

Nagios NRPE <= 2.15 Remote Command Injection: Analisi, test e fix della vulnerabilità

Nrpe è un agent che viene installato su tutte le macchine monitorare da Nagios e a seconda delle varie personalizzazioni può restituire varie informazioni, come ad esempio lo stato del disco rigido, della memoria, la funzionalità o meno di determinati servizi ecc..

L’agent viene interrogato da Nagios tramite un plugin dal nome “check_nrpe” il quale può richiedere informazioni in due modalità:

Eseguendo i comandi preimpostati sul file di configurazione dell’agent
Personalizzando gli argomenti delle interrogazioni da linea di comando

La vurnerabilità è stata scovata proprio nel secondo caso, ovvero la possibilità di inserire comandi arbitrari da eseguire sulla macchina remota al posto degli argomenti del plugin check_nrpe.