| vadik |
|
|
Темы:
55
Сообщения:
5395
Участник с: 17 августа 2009
|
siroccoВозможно, сам не пробовал, но по отзывам в инете этот антивирь имеет смысл держать для проверки виндовых программ и файлов. Поэтому внимания на него не обращал. siroccoВот за это отдельное спасибо, обязательно возьму на заметку (малоли что), хотя как показал быстрый гуглеж эти программы (за исключением chkrootkit) больше для борьбы с последствиями чем для предотвращения “заражений”. Кстати я пока не дошел до стадии острой необходимости использавиния таких программ. :) |
| bobart |
|
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
vadik, в связи с chkrootkit, меня гуглёж некогда завёл сюда, проникнись, если не читал. У меня не хватило терпения постигать все тонкости, но тем не менее - может тебе пригодится? А это уж и не помню откуда: 1. Как chkrootkit обнаруживает известные трояны на серверах?
chkrootkit ищет известные ему "подписи" на зараженной/взломанной машине в основных бинарных файлах. Например, некоторые версии троянов, подмененняя ps имеют внутри вот такую строку: "/dev/ptyp".
Как правило, атакующий легко может заменить данную строку(и) в исходниках рут-кита, тем самым затруднив его обнаружение. В общем смотрите следующий вопрос :).
2. Как chkrootkit может обнаруживать модифицированные или новые рут-киты?
если chkrootkit не может обнаружить стандартные (известные) подписи (строки) от известных ему троянов червей и т.п. , он не может автоматически обнаружить, что система заражена/вскрыта. Запускайте chkrootkit в эксперт-режиме (expert-mode) (-x В этом режиме ползьзователь может проверить подозрительные строки, которые могут принадлежать трояну или червю, в бинарных файлах.
Например, большинство текстовой информации, находящейся в бинарном файле, можно посмотреть так:
# ./strings file_name| more
используйте комманду strings именно из комплекта chkrootkit, т.к. троян мог подменить вашу базовую комманду на свою, запретив ей показывать определенные строки, или используйте следующую команду из пакета chkrootkit:
# ./chkrootkit -x |more
данная команда покажет содержимое ВСЕХ файлов, которые будет проверять! Будте внимательны, т.к. будет выведено большое кол-во информации на экран.
пример поиска путей внутри файла:
# ./strings file_name| egrep '^/'
# ./chkrootkit -x | egrep '^/'
т.к. путь как правило содержит энное кол-ва слешей(/) то искать удобнее всего именно их,
хотя вам, думается, будет виднее, что именно вы хотите найти внутри файла(ов).
Так же рекомендуем почитать о регулярных выражениях (например тут, т.к. с их помощью поиск осуществить гораздо легче.
3. Почему вы написали chkrootkit не на perl/pyton?
К сожалению, не на всех системах perl или pyton может присутствовать, поэтому Мы пошли по пути наиболее удобному для конечного пользователя chkrootkit - написали обычный shell-скрипт, т.к. он как правило работает всегда и везде.
4. Какие системные комманды использует chkrootkit?
Chkrootkit использует следующие системные комманды:
awk, cut, echo, egrep, find, head, id, ls, netstat, ps, strings, sed -потоковый текстовый редактор, uname
5. Могу ли я верить данным полученным от chkrootkit в ходе проверки, если есть подозрение на то, что машина вскрыта/заражена?!
Мы бы не поверили :). Рекомендуем в подобном случае воспользоваться альтернативными путями обнаружения этой гадости:
1. Исползуйте ключ `-p путь_к_заведомо_чистым_ситемным_файлам'(netstat,ifconfig,ps и т.п.), только не забудте сделать копию на всякий пожарный, после установки системы:
# ./chkrootkit -p /cdrom/bin
2. Или воспользуйтесь ключом `-r rootdir' для mountа каталога с заведомо "чистой" машины:
# ./chkrootkit -r /mnt
6. Насколько можно верить chkproc?
если вы запустили chkproc на сервере, на который запущенно большое кол-во кратковременных процессов, то в результате вы можете получить какое-то количество сообщений о возможном наличии трояна/червя на сервере. chkproc сравнивает результаты вывода команды ps с содержимым каталога /proc. если процесc был создан/убит в течении работы chkproc, то chkproc может ругнуться на это, т.к. считает это весьма подозрительной фичей :).
7. У меня запущен PortSentry/klaxon. Может быть что-то не так при тестировании bindshell?
если у вас запущен PortSentry/klaxon или любая другая программа, которая "слушает" неиспользуемые порты, chkrootkit может выдавать неправильные отчеты при тестировании bindshell (порты: 114/tcp, 465/tcp, 511/tcp, 1008/tcp, 1524/tcp, 1999/tcp, 3879/tcp, 4369/tcp, 5665/tcp, 10008/tcp, 12321/tcp, 23132/tcp, 27374/tcp, 29364/tcp, 31336/tcp, 31337/tcp, 45454/tcp, 47017/tcp, 47889/tcp, 60001/tcp). Так что рекомендуем "убить" на время тестирования все программы мониторинга портов (для наиболее точного отчета).
8. chkrootkit ругается на файлы и папки, например: `.packlist', `.cvsignore', и т.п. Да, есть такая проблема, т.к. многие программы хранят свои настройки в файлах, которые начинаются с . (точки) - просто проигнорируйте ее! :)
Но мы рекомендуем Вам внимательно изучить все, что выведенно в этой строке, т.к. атакующий как правило пытается спрятать свои файлы/каталоги в каталоги, которые начинаются c точки, например: .sk, ... ,/dev/.security и т.п. - !!! БУДТЕ ВНИМАТЕЛЬНЫ !!!, т.к. chkrootkit просто показывает подобные каталоги/файлы, не анализируя их содержимое.
9. А могу ли я запускать chkrootkit из cron (крона)?
Да. Например, для запуска chkrootkit в 3 часа утра и отсылки результатов проверки к вам на email, используйте:
0 3 * * * (cd /path/to/chkrootkit; ./chkrootkit 2>&1 | mail -s "chkrootkit output" root)
Но учтите, что в случае атаки на вашу машину, атакующий одним из первых дел проверит содержимое крона, и либо подменит его на свое, либо придумает что то в этом роде. |
| vadik |
|
|
Темы:
55
Сообщения:
5395
Участник с: 17 августа 2009
|
Спасибо за инфу, у всех программ названных выше, есть один недостаток - они ищут вредоносный код когда он уже присутствует в системе (кроме strings?). Как я понял исходники и пакеты эти сканеры проверять не умеют (или я просто не правильно понял). Для проверки файлов до установки пакета должен (по идее) использоваться антивирус. НО, насколько я понимаю, на сегодняшний день для обычного домашнего компа все эти меры избыточны (хочется чего-то простого, маленького, быстрого, прозрачного). Хотя знать о таких инструментах конечно же не помешает. |
| bobart |
|
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
Я понял (навскидку, поверхностно), что chkrootkit может проверять бинарники, а для этого, вроде, не обязательно проге быть установленной. Бинарник может и должен быть в архиве с сырцами. Как оно там всё “чекает” и вкуривать man chkrootkit - не заморачивался, глаза поберёг)) ps/ Насчёт паранойи: вчера кто-то написал эрэм эрэф на перле “так”, а сейчас, в это самое время, какой-нибудь экспериментатор сидит и пишет на том-же перле уже “эдак”, оттачивает мастерство.., и что с ним делать прикажешь? Я в этом нихрена не смыслю, но как смыслю я: эти чекруткиты и пр. отслеживают бяки в соответствии с неким “каноничным” течением событий, и если что-то не соответствует принятому ходу вещей (им известному на сегодняшний день) - они бьют тревогу. А если что-то ранее неизвестное и незарегистрированное? Тогда хз… |
| vadik |
|
|
Темы:
55
Сообщения:
5395
Участник с: 17 августа 2009
|
Кстати chkrootkit всем известное эрэм эрэф возможно даже искать не будет. Утилита предназначена для поиска зловредов так или иначе связанных с сетевыми атаками, а эрэм эрэф к таким не относится. Хотя в действии не проверял. Интересно, а как ментейнеры пакетов решают подобные вопросы? |
| bobart |
|
|
Темы:
38
Сообщения:
2537
Участник с: 28 ноября 2009
|
Может, монетку подкидывают?) |
| vadik |
|
|
Темы:
55
Сообщения:
5395
Участник с: 17 августа 2009
|
Хорошая шутка, будем надеятся, что это действительно шутка. |
| ssss |
|
|
Темы:
0
Сообщения:
1
Участник с: 27 июня 2010
|
Написать что-то универсальное не получится, потому что вот: http://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B5%D0%BC%D0%B0_%D0%A0%D0%B0%D0%B9%D1%81%D0%B0. Можно, конечно, искать какие-то шаблоны, но смысла мало будет, т.к. это будет работать только на конкретных вещах. |