scannerMODX - алгоритмы для вычисления вирусов
Привет друзья, пару месяцев назад, публиковал приложение для поиска и сравнения файлов ядра modx и текущего сайта. scannerMODX.
Хотел его дорабатывать. Добавлять разные алгоритмы для поиска вирусных файлов (как обычно времени не хватает). Но только так чтобы точно можно было определить что в файле вирус. Пусть ищет не все подряд, но хотя бы что то да находит.
То есть открываем файл, проверяем его каким то алгоритмом. Если в нем вирус то автоматически помещаем его в карантин и сигнализируем админу
Ну типа если в какой нибудь файле содержится вирус переместить его в карантин, чтобы не портил работу, с заменой на оригинал из ядра сайта.
Так как огромного опыта лечения от вирусов на сайте нету, возможно кто то подскажите готовые алгоритмы для проверки файла и определение в нем вирусов?
Если есть готовые решения на проверку вирусов к компоненту, прошу откликнуться других разработчиков.
Думаю что всем будет полезно...
Поблагодарить автора
Отправить деньги
Комментарии: 9
Есть бесплатная версия антивируса для поиска вредностей на хостинге или локально — https://revisium.com/ai/. Можно ее интегрировать или взять за основу ее алгоритмы. Работает скрипт довольно продуктивно и уверенно.
У него вроде как зашифрованы алгоритмы.
По кране мере авторство есть какое то
По кране мере авторство есть какое то
Возможно. Не копал так глубоко. Просто пользовался не один раз. Может есть аналоги еще какие-либо.
Алгоритм такой: берем файл и удаляем из него все комментарии/пробелы при помощи php_strip_whitespace. После чего контент прогоняется через ряд регулярок. Чем больше размер файла и регулярок, тем медленней проверка всего сайта. Поэтому, как я понимаю, от версии к версии набор этих регулярок меняется, а не только дополняется. Именно этим и можно объяснить почему одна версия айболита находит какие-то шеллы. А другая — их уже не видит.
P.S. Еще одна причина, почему я не доверяю айболиту — наличие закладки в виде определенного текста. Если вдруг файл с вирусом содержит этот текст, то айболит такой файл никогда не пометит как вредоносный.
P.S. Еще одна причина, почему я не доверяю айболиту — наличие закладки в виде определенного текста. Если вдруг файл с вирусом содержит этот текст, то айболит такой файл никогда не пометит как вредоносный.
Aibolit не?
Если его в приложение встроить, потом же спросят с меня)) Там у них авторство
Поскольку ваше решение бесплатное, то никто не мешает подтягивать их инструмент как самостоятельный скрипт и результаты проверок брать из json файла. Можно еще посмотреть в сторону github.com/phpMussel/phpMussel
Скорее всего, нужно внедрять комплекс. Айболит, например, не видел несколько вирей и много кричал впустую. Пару вирей видели другие. А ещё один шел видел вообще только третий и никто другой. Вот тут антивирей целая орава. Можно выбрать часть из них из бесплатной части, внедрить как есть (чтобы не было вопросов правовых), прикрутить основной набор команд каждого из них на исполнение по событию некому и каждым пробегаться. Думаю, будет хорошей идеей обсудить это с Евгением Борисовым. Заодно отлично было бы ещё и проверять на соблюдение некого хотя бы минимума отсюда.
Айболит, например, не видел несколько вирей и много кричал впустую.Увы, это так. Многие закладки он не видит.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.