Лаборатория Касперского патентует передовую технологию сравнения файлов

Лаборатория Касперского патентует передовую технологию сравнения файлов

«Лабораторией Касперского» получен патент на эффективный метод точного сравнения элементов программного обеспечения. Патент №8499167, выданный Бюро по регистрации патентов и торговых марок США, описывает технику сравнения файлов для выявления вредоносных объектов, модифицированных злоумышленниками с целью затруднить обнаружение защитными программами.

На фоне стремительного роста числа вредоносных программ критически важным фактором становится способность антивирусных компаний быстро и качественно выявлять новые угрозы. Классический метод сравнения неизвестных файлов с коллекцией вредоносных объектов позволяет блокировать огромное количество зловредов, появляющихся каждый день. Однако сам механизм сравнения не идеален. Злоумышленники без особого труда нивелируют эффективность подхода, «засоряя» тело файла различными данными, что меняет его структуру и делает непохожим ни на один из коллекции вредоносных объектов.

Специалисты «Лаборатории Касперского» учли эти особенности, разрабатывая новую технологию сравнения файлов. В основе запатентованной технологии лежит идея о том, что функционал файла можно определить по его содержимому, не запуская сам файл. Строки байт-кода файла содержат информацию о выполнении файла в рамках операционной системы (имена файлов, ключи реестра, интернет-ссылки), что представляет своеобразный «конспект» файла.  Ранее практическая реализация этой идеи сталкивалась с трудностями: какие именно строки файла сравнивать, какие из них сигнализируют о вредоносном функционале объекта и как осуществить поиск за разумное время с минимальными затратами ресурсов.

Запатентованная технология «Лаборатории Касперского» описывает алгоритм автоматического сравнения файлов по строкам для определения схожести их функционала. Содержимое каждого нового файла автоматически анализируется – благодаря набору правил отсеиваются нерелевантные строки, а оставшиеся, дающие понимание о функциональных возможностях, сравниваются с коллекцией вредоносных объектов, проанализированных по такому же принципу. Важным свойством технологии является высокая скорость сравнения «конспекта» файлов с огромной базой вредоносного ПО.

«Практика показывает, что эффективность защитных решений определяется не только способностью распознавать вредоносные объекты, но еще и скоростью работы, минимальным количеством затраченных для этого ресурсов. Совместить оба качества – это вызов для разработчиков, и мы смогли достичь высокого результата. Полученный патент – лучшее тому доказательство», – прокомментировал Алексей Маланов, антивирусный эксперт «Лаборатории Касперского», разработчик запатентованной технологии.

Несмотря на то, что патент получен лишь недавно, эксперты «Лаборатории Касперского» уже продолжительное время применяют технологию для составления образцов новых вредоносных программ.

Баг macOS ломает TCP через 49 дней без перезагрузки

В macOS нашли редкий, но очень неприятный баг: если компьютер работает без перезагрузки примерно 49,7 дня, у него может постепенно умирать TCP. По версии исследователей, проблема связана с переполнением 32-битного счётчика времени в ядре XNU, который используется TCP-подсистемой.

После этого внутренние TCP-таймеры якобы перестают нормально обновляться, соединения в состоянии TIME_WAIT не очищаются, временные порты постепенно заканчиваются, и система в какой-то момент просто перестаёт устанавливать новые TCP-соединения.

При этом ping может продолжать работать, что делает сбой особенно странным. В Photon пишут, что заметили аномалию на своих macOS-машинах, которые круглосуточно используются для мониторинга iMessage-сервисов.

По их описанию, часть узлов после примерно 49 дней 17 часов 2 минут 47 секунд аптайма перестала открывать новые TCP-сессии. После перезагрузки всё возвращалось в норму, но таймер, по сути, запускался заново.

Авторы утверждают, что смогли воспроизвести поведение на двух машинах и связали его с переменной tcp_now в XNU. В открытом репозитории Apple действительно есть TCP-код ядра Darwin/XNU, где используются 32-битные значения времени и логика сравнения временных меток TCP, на которую ссылаются исследователи.

Поведения бага выглядит так: сначала ничего не ломается в лоб, но закрытые TCP-соединения перестают вовремя исчезать из TIME_WAIT. Затем их становится всё больше, временные порты забиваются, новые подключения начинают зависать в SYN_SENT, а сервисы, которым нужны новые TCP-сокеты, начинают сыпаться.

Если эта находка подтвердится, то для обычного пользователя баг вряд ли станет массовой проблемой: большинство устройств на macOS перезагружаются чаще (хотя бы из-за обновлений). А вот для долго работающих Mac mini, билд-серверов, CI/CD-ферм, удалённых рабочих станций и серверных компьютеров, которые могут жить без ребута неделями, история выглядит уже куда серьёзнее.

Если у вас есть компьютер на macOS, который работает неделями без перезагрузки и критичен для сервисов, мы бы посоветовали следить за его аптаймом.

RSS: Новости на портале Anti-Malware.ru