Обновить

Комментарии 44

Часто за всем не уследишь :) А вы — молодец! Так и нужно реагировать на подобные вещи!
за POSTом надо следить в первую очередь независимо от того какой сложности скрипт ты пишешь.
НЛО прилетело и опубликовало эту надпись здесь
Уже не первый раз, однако.

Эх, QIP, эх, РБК.
Им нравится
No one's perfect.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Да, потому что hash звучит как хэш, а hacker как хакер.
При чём там буква э?
Вы hewlett packard тоже читаете как пэкард? :)
НЛО прилетело и опубликовало эту надпись здесь
Надеюсь что действительно только Вы один до этого додумались, другие то могли и сплоиты повесить на квип.ру, а еще другие заразить скачиваемые аськи своими троянами, да или просто угнать пароли, мы то знаем что сервис webim.qip.ru сохраняет все переписки наши, пароли и так далее и жестко навязывают конечному пользователю свой jabber аккаунт у них, без которого не запуститься qip если не иметь сноровку.
НЛО прилетело и опубликовало эту надпись здесь
В этот раз да, видимо обошлось.
Не первый раз qip.ru нагибают, опыт уже есть.
жестко навязывают конечному пользователю свой jabber аккаунт

Молодцы же!
*холивар начинается здесь*
</thread>
> Вы один до этого додумались, другие то могли и сплоиты повесить на квип.ру, а еще другие заразить скачиваемые аськи своими троянами

Уже не модно :) Старые сборки qip 2005 были заражены Induc'ом.
жестко навязывают конечному пользователю свой jabber аккаунт у них, без которого не запуститься qip

qip 2010 вам в помощь
infium.exe" /isolated
говори «их», не «ихний»
Любой программист должен заучить мантру: «Не доверяй данным»
Есть ещё одна, реже используемая: «Они ни в коем случае не должны напрямую участвовать в инклудах.»
Можно использовать if, case, etc…
Например:
$city = trim($_POST['data']);
if (!empty($city)) {
  switch($city) {
   case '1':
   case '2':
   case '3':
     $this->showBlock($city);
     break;
   default:
     $this->showError(404);
     break;
  }
}


Или так (упрощённый вариант):
$city = trim($_POST['data']);
if (!empty($city) and is_numeric($city)) {
  $this->showBlock($city);
}else{
  $this->showError(404);
}


… и ещё полторы тысячи способов фильтрации данных, применяемых по обстоятельствам.

Но никогда не должно быть чего-то подобного: include($_POST['data']);
НЛО прилетело и опубликовало эту надпись здесь
за шестизнак)
Всем спасибо за комментарии, было приятно.
«Проверяйте всё, что вводит пользователь. По умолчанию он злоумышленник» (с) habrahabr.ru/blogs/php/12067/
Им не привыкать
Какой вы злой =)
Сколько здесь античатовцев…
НЛО прилетело и опубликовало эту надпись здесь
Мораль проще, не include'ь и не require'ь файлы с именами из параметров запроса оО
НЛО прилетело и опубликовало эту надпись здесь
Я считаю, они должны вам денег. Могли пострадать, если бы вы не сообщили о дыре.
НЛО прилетело и опубликовало эту надпись здесь
Ну, раз столько пафоса про простую дырку, значит денег вам не дали :)
>>> Правда закрыл не с первого раза, сначала они сделали замену "/" в переменной, то есть, была возможность юзать "\"…

Ужас, он хотя бы информатику в школе учил интересно?
«А если заинклдуить логи апача, предварительно снабдив их «ядовитым кодом» в поле User-Agent»

Уже давно есть много различных методов.
/proc/self/environ
Вообще, Xakep.ru
/proc/self/environ к примеру был, реально много различных методов:)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации