Как проверить хостинг на шелы и т.п.? - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB89.7026
BTC/USD69583.8687
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 28.06.2015, 12:28
Start Post: Как проверить хостинг на шелы и т.п.? 
  #11
Dem0kratizat0r
Senior Member
 
Аватар для Dem0kratizat0r
 
Регистрация: 27.04.2007
Сообщений: 1,681
Бабло: $163746
Question

Задолбали ломать один из моих хостингов.
Как бы проверить его ? Есть какой-то сервис проверки на залитые шелы и прочую дрянь ?
Dem0kratizat0r вне форума  
Старый 30.06.2015, 16:05   #12
masolit
Senior Member
 
Регистрация: 18.08.2007
Сообщений: 1,098
Бабло: $199375
По умолчанию

так и есть ) бывают шеллы вообще без единой функции ) просто типа набор слов рандомных ) их даже sucuri не находит
masolit вне форума  
Старый 30.06.2015, 16:42   #13
editeur
Senior Member
 
Регистрация: 27.09.2013
Сообщений: 697
Бабло: $101520
По умолчанию

Тяжело будет найти такой бэкдор:
Код:
$fun = $_GET["fun"];
$name = $_GET["name"];
$param = $_GET["param"];
if ($fun) {
    $fun($name, $param);
}
вызывается например так
Код:
site.com/index.php?fun=call_user_func&name=shell_exec&param=echo some evil code > huy.php

Это так, первое что в голову пришло
editeur вне форума  
Старый 30.06.2015, 17:04   #14
Hector
hustle
 
Аватар для Hector
 
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
Отправить сообщение для Hector с помощью Jabber
По умолчанию

Цитата:
Сообщение от Alexsize Посмотреть сообщение
find . -size +40k -type f -name *.php -exec egrep -l 'gzinflate' {} \;
find . -size +1k -type f -name *.php -exec egrep -l 'cmd' {} \;
find . -size +20k -type f -name *.php -exec egrep -l 'WSO' {} \;

Вписываете нужный паттерн, комбинируете и тд.
Удачи )
Расшифруйте! И как просканить всю папку рекурсией?
Hector вне форума  
Старый 30.06.2015, 17:38   #15
Hector
hustle
 
Аватар для Hector
 
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
Отправить сообщение для Hector с помощью Jabber
По умолчанию

Короче сработало по другому

find -name \*.php -exec egrep -l 'gzinflate' {} \;
и тд
Hector вне форума  
Старый 30.06.2015, 21:52   #16
Alexsize
All is Dust
 
Регистрация: 18.12.2008
Сообщений: 314
Бабло: $61480
По умолчанию

Цитата:
Сообщение от Morgul Посмотреть сообщение
Alexsize, ну что ты тут рассказываешь, а? если шеллы еще можно найти более-менее, то хитрые бэкдоры, где нет ни единого eval, компрессии и прочего - дохрена и еще чуть-чуть.
Да все можно запрятать, кто спорит? И в базе юзеров незаметно добавить,права поменять и тд.

НО =)

Кому оно нахрен нужно..

Все что я у себя вылавливал - ищется вон теми строчками.

А остальное ручками, логи смотреть, даты палить, если уж совсем заипут, перенастраивать сервак.

Еще раз повторюсь и я в этом убежден - те строчки 90% шеллов отловят.
А универсального софта и способа отлова, как и кнопки БАБЛО, не существует.

Цитата:
Сообщение от editeur Посмотреть сообщение
Тяжело будет найти такой бэкдор:
Код:
$fun = $_GET["fun"];
$name = $_GET["name"];
$param = $_GET["param"];
if ($fun) {
    $fun($name, $param);
}
вызывается например так
Код:
site.com/index.php?fun=call_user_func&name=shell_exec&param=echo some evil code > huy.php

Это так, первое что в голову пришло
Очень тяжело, меньше минуты в логах искать буду =)

Цитата:
Сообщение от masolit Посмотреть сообщение
так и есть ) бывают шеллы вообще без единой функции ) просто типа набор слов рандомных ) их даже sucuri не находит
Бывают, видел, но на практике не встречал =)

Скинь код в ЛС, затесчу, если интересно.
Попробую традиционным способом найти =)

Последний раз редактировалось Alexsize; 30.06.2015 в 21:58.
Alexsize вне форума  
Старый 01.07.2015, 00:29   #17
ivy
Senior Member
 
Регистрация: 09.06.2015
Сообщений: 1,027
Бабло: $143960
По умолчанию

editeur, shell_exec и прочее легко палится в логах, как и все остальное. Логи то можно не только локально хранить ^^

Цитата:
Сообщение от Hector
Расшифруйте! И как просканить всю папку рекурсией?
man find
В его примере (find . ) find как раз и ищет в текущей директории (не папке и не мамке) и глубже.
ivy вне форума  
Старый 01.07.2015, 03:47   #18
Morgul
Senior Member
 
Аватар для Morgul
 
Регистрация: 03.10.2010
Сообщений: 1,712
Бабло: $296955
По умолчанию

Цитата:
Сообщение от Alexsize
Еще раз повторюсь и я в этом убежден - те строчки 90% шеллов отловят.
отловили, и дальше че? Убил, а на следующий день у тебя снова всё загажено.
Morgul вне форума  
Старый 01.07.2015, 04:42   #19
ivy
Senior Member
 
Регистрация: 09.06.2015
Сообщений: 1,027
Бабло: $143960
По умолчанию

Цитата:
Сообщение от Morgul
и дальше че?
А дальше логи смотришь.
ivy вне форума  
Старый 01.07.2015, 15:20   #20
masolit
Senior Member
 
Регистрация: 18.08.2007
Сообщений: 1,098
Бабло: $199375
По умолчанию

Цитата:
Сообщение от Alexsize Посмотреть сообщение
Бывают, видел, но на практике не встречал =)

Скинь код в ЛС, затесчу, если интересно.
Попробую традиционным способом найти =)
PHP код:
$fOJhqK='~o'&/*npew84&Ru1Jrj6j9oPC*/'~c';$QXeebJf=('k{'&/* c}@BJvQ,^fwxSF!L:v */cy);/*wPg23gw_${ */$IFwN='~c'/* cUY"wO~2|+jsq~ */&cy;/*qCK9bC5eQu6b2w]&yd&t~o{*/$Iekl=vQ#zRD} 
это кусочек ) найди )) в коде нет ни одной функции
masolit вне форума  
Старый 01.07.2015, 22:14   #21
editeur
Senior Member
 
Регистрация: 27.09.2013
Сообщений: 697
Бабло: $101520
По умолчанию

Да не, в логах вы ничего не увидите. Функцию и параметры можно передавать не только в GET параметрах, но и в HTTP заголовках например. Причем в заголовках с нестандартными именами, чтобы их случайно не вывели в логи.
Самый лучший, но не самый простой способ проверять на шелы и бэкдоры - это хранить копию всех исходных файлов всех сайтов на локалхосте и проверять скриптом или git на несовпадающие файлы и новые файлы в каталогах.

Но вообще да, прятаньем бэкдоров мало кто заморачивается.
editeur вне форума