Просмотр полной версии : как найти шелл на сайте
Вообщем суть такова: например у меня залит шелл, как с помощью его найти все другие шеллы на этом сайте если они там есть?
Krist_ALL
24.05.2009, 11:45
если ты зальешь шелл, то у тебя будет доступ к списку файлов(если safe mode=off) и ты сможешь читать файлы. шелы вида r57 c99,... узнать легко, открыв исходник файла, а если шел вида <? system($_GET['komanda']); ?> то эта строчка запмсывается в начале какого-нибудь файла, или в середине запрятана) ,читай файлы и смотри,ищи подозительные строчки.)
ога или может быть base64_decode
mailbrush
24.05.2009, 12:02
Если хост норм - там присутствует access.log. Смотри где есть много POST/GET запросов на один подозрительный файл.
Смотри на дату правки файла,если touch не прошлись.
есть замечательная команда find, вот с помощью нее и ищи в файлах что тебе нужно.
mailbrush
24.05.2009, 13:29
есть замечательная команда find, вот с помощью нее и ищи в файлах что тебе нужно.
А если там base64?
и что? какие проблемы? к примеру пакованые шеллы:
eval(gzinflate(base64_decode(
Естественно, что всё не расскажут))
root_sashok
24.05.2009, 13:35
гугл рулит!
site:адрес сайта intitle:shell (или r57shell) filetype:php
mailbrush
24.05.2009, 13:43
гугл рулит!
site:адрес сайта intitle:shell (или r57shell) filetype:php
Это жжесть... Имхо, access.log - самый актуальный.
AlexSatter
24.05.2009, 13:51
grep -R "Шаблон" путь
тоже самое и с base64
P.s. работает только в юниховоподобных системах.
Посмотрел бы я на тебя, когда ты будешь искать в многосотмегобайтном access_log БОЛЬШОЕ количество post\get запросов к .php файлу =))
ps: не говоря уже о том,что расширение может быть совсем не .php
да да да
..
if(strpos($_SERVER['HTTP_USER_AGENT'],'Google') !== false )
header('HTTP/1.0 404 Not Found');
..
и найди мне через гугл шелл тогда
всё это бред, обычные не пакованые шеллы ищутся find`ом, а другие только ручками
mailbrush
24.05.2009, 13:55
$n@ke, сначалa отсеять ненужное... ЗЫ: я так у себя нашел шелл =)
мое дело предложить, подсказать, а не навязывать свои способы...
удачного поиска.
Надеюсь вы не мои шеллы ищите))))))
Как-то неэтично все-таки искать шеллы коллег) А нашел - не трогай, имхо.
Даёшь проверку в непалящихся дирах пхп/пл/асп скриптов)),если *нету* шелла ).А так пропарсить скрипты на passthru,всякие там exec и system)Всё равно редко попадаются
хз, у меня на кроне каждые 12 часов запускаеца скрипт который собирает даты последнего изменения, вес,имя и колво файлов,сверяеться с прошлой версией,если чтото нетак - бот стучит в асику.+ все данные пишуться в мускул.хостер мне запретил запускать скрипт каждый час,сволоч, поэтому только через половину суток у меня идет чек.
Советую поставить чтоо похожее, видел викидывали давно еще в разделе чтото вроде такого.
Pashkela
01.06.2009, 00:49
нормальный шелл вы никогда не найдете. И дело тут даже не в привате, а просто в варианте оставления бекдора:)
хз, у меня на кроне каждые 12 часов запускаеца скрипт который собирает даты последнего изменения, вес,имя и колво файлов,сверяеться с прошлой версией,если чтото нетак - бот стучит в асику.+ все данные пишуться в мускул.хостер мне запретил запускать скрипт каждый час,сволоч, поэтому только через половину суток у меня идет чек.
Советую поставить чтоо похожее, видел викидывали давно еще в разделе чтото вроде такого. А смысл писать в БД, если у того кто залил шелл к этой самой БД есть полный доступ и он там поправит всё что захочет?
ReisendeR
01.06.2009, 06:38
А смысл писать в БД, если у того кто залил шелл к этой самой БД есть полный доступ и он там поправит всё что захочет?
смысл в защите твоего сайта. ты же не будешь постоянно сидеть и перекапывать свой сайт, что бы найти изменения. тут написано не то что сделать на чужом, а метод защиты своего
смысл в защите твоего сайта. ты же не будешь постоянно сидеть и перекапывать свой сайт, что бы найти изменения. тут написано не то что сделать на чужом, а метод защиты своего Я разве об этом говорил? Лучше crc хранить там, где хакер не сможет инфу править.
Krist_ALL
01.06.2009, 12:15
мона написать скрипт котрый будет хранить мд5 важных файлов -напирмер мд5 от индекс.пхп и проверяет раз в сутки напирмер изменилось ли значение. если да то тревога!! можно весь сайт так запомнить (мд5) и проверять.
мона написать скрипт котрый будет хранить мд5 важных файлов -напирмер мд5 от индекс.пхп и проверяет раз в сутки напирмер изменилось ли значение. если да то тревога!! можно весь сайт так запомнить (мд5) и проверять.
Все уже написано до нас. Боже упаси от таких скриптов, это комплексная задача целой системы, в ином случаи грозит подмена истенной хеш суммы.
Проверку целостности файлов и директорий (приминяется не зависимо от прав доступа) можно добиться при помощи регулярного контроля чек-суммы, что включает в себя модификацию как внутренней структуры, так и изменение определенных полей.
Снимать её нужно заранее с чистой системы, а не как, к сожалению, это бывает обычно.
Использовать поиск по фиксированному и заранее известному размеру вредоносного ПО.
Обращать внимание на наличие и интерпретацию (.htaccess) файлов с именами (используйте для поиска наиболее часто встречающиеся имена файлов) и расширениями, отличающихся от стандартного набора/правил ПО.
Анализ файлов журналирования, как через панель управления, так и в ручном режиме на наличие "обращений".
Применять методику "по шаблону", поиск известных функций, либо строк, приемлемых при использовании вредоносного ПО.
egrep -lr 'eval|system|exec|base64_decode|move_uploaded_file '.
А можно ли изменить как-то мд5 хеш файла на прежний,предварительно изменив содержимое файла ?) Не хочу врать,но где-то писали про бреш в линуксе или фряхе)
нормальный шелл вы никогда не найдете.
Честно говоря,оставлять я их не умею))),но мои шеллы не находят.Пару раз чуть по тупости не оставил шелл в индексируемой директории.Сомневаюсь,что очень многие оставляют бекдоры).Если шелл создадут такой же,как пароль,т.е. простой,то можно перебирать названия скрипта в каждой веб дире.Это при условии,что нет проверок и ограничений,прописанных в .htaccess.Ведь не все же создают шеллы с ахренительными названиями.Кстати,насчёт логов:их можно разбить на части,считывая построчно.Если я в бокноте открою 300 мегабайтный фаил,то,разумеется,у меня уйдут горы лицезрения его содержимого(проц 1.4 гига).При использовании цикла с fgets() или fgetc() на это тратится гораздо меньше времени,да и система не виснет.Затем,получив количество и имена создаваемых файлов,открывать их исчитывать.То,что вы писали про мегабайтные логи,ещё ерунда.Я видел лог 16 гигабайт...хорошо,что не открыл)
ЗЫ: Мде...хреного млин(
А можно ли изменить как-то мд5 хеш файла на прежний,предварительно изменив содержимое файла ?) Не хочу врать,но где-то писали про бреш в линуксе или фряхе)
Вероятней всего речь шла о недочете в самом алгоритме хеширования, либо в конкретном программном обеспечение, но не в целевой программно-аппаратной платформе.
По поводу анализа журналов, никто уже давно не занимается парсингом в ручную, за исключением частных случаев, существуют связки ПО которые с этим прекрасно справляются, kiwi syslog, facilities у syslog, syslog-ng, а так же стандартные системы журналирования у демонов. Все это прекрасно справляется с фильтрацией под определенные критерии, не стоит выжимать проблему из пальца.
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot