Давайте поговорим о классификации вредоносных программ.
Когда антивирусная программа или средство защиты от вредоносного ПО обнаруживает что-то потенциально вредоносное, она использует определенный формат, чтобы помочь вам или другим специалистам понять, с какой именно угрозой вы имеете дело.
Формат может выглядеть примерно так:
Type:Platform/Family.Variant!Suffixes
Это не всегда будет выглядеть именно так, поскольку, как вы помните, не все компании или инструменты используют одни и те же стандарты, но в целом все они выглядят довольно похоже.
Этот формат называется схемой именования вредоносных программ Computer Antivirus Research Organization (CARO), и он получил широкое распространение, хотя и с небольшими вариациями.
Вот, к слову, несколько реальных примеров:
HEUR:Backdoor.MSIL.Broide.gen
Trojan.MSIL.Broide.m!c
В обоих случаях речь идет об одном и том же вредоносном ПО, которое было обнаружено в ходе сканирования, но распознано разными инструментами.
Как видно, речь идет об одной и той же вредоносной программе, просто она обозначена по-разному.
В первом случае речь идет о троянском бэкдоре, а во втором – о трояне.
Тип
Тип вредоносного ПО – это первая классификация, которую вы увидите в результатах, – помогает составить первоначальное представление о том, с какой угрозой вы имеете дело.
Это тип трояна? Является ли он вирусом? Это червь, бэкдор или программа-вымогатель?
Эта метка помогает определить это.
Платформа
Далее следует классификация по платформе.
Она используется для описания операционной системы, для которой предназначена данная угроза, например, для Windows, Linux, Android или MacOS.
Она также может использоваться для описания языков программирования, макросов или типов файлов.
В нашем предыдущем примере MSIL означает Microsoft Intermediate Language.
Семейство
Классификация по семействам, как правило, не имеет аналогов, но она используется для того, чтобы попытаться провести различие между вредоносными программами, имеющими общую кодовую базу.
Например, если вы когда-нибудь слышали термины “WannaCry“, “Stuxnet” или даже “CryptoLocker”, то эти названия не обозначают типы вредоносных программ – это названия семейств.
Stuxnet считается червем из-за того, для чего он был создан. Это не первый червь, который когда-либо существовал, но он был разработан таким образом, что сделал его уникальным. Когда он был обнаружен и изучен после использования в дикой природе, исследователи решили дать ему фамилию Stuxnet.
Вариант
У нас также есть варианты. В продолжение нашего примера с Stuxnet, если кто-то возьмет оригинальную реализацию Stuxnet и внесет в нее несколько изменений, то есть по сути ту же самую кодовую базу, но с некоторыми отличиями, то это станет вариантом Stuxnet.
Если не углубляться еще дальше, то информация о семействе и варианте может быть различной, когда речь идет об обнаружении и идентификации вредоносного ПО…
Например, программы обнаружения обычно используют инкрементные буквы и цифры или даже хэши для определения варианта, в то время как идентификаторы вредоносных программ могут использовать реальные имена.
Вредоносные программы с названиями Stars, Flame и Nitro Zeus являются примерами вариантов Stuxnet.
Но если бы программное обеспечение обнаружило эти варианты, оно, вероятно, использовало бы дополнительные буквы, цифры или хэши для их более точного описания.
Суффиксы
Наконец, у нас есть суффиксы.
Суффиксы используются для предоставления дополнительных сведений о конкретной угрозе.
Например, суффиксы могут использоваться для обозначения того, как упакована конкретная вредоносная программа.
Сжата ли она?
Если да, то она может иметь суффикс !lnk, если она использует этот формат файла, который является расширением Windows и может использоваться для выполнения скриптов Powershell, которые могут использоваться для загрузки самой вредоносной программы, ускользая от обнаружения.
Или, в качестве другого примера, суффикс может быть .DLL, который обозначает вредоносные программы, использующие библиотеки DLL.
DLL означает Dynamic Link Library (библиотека динамических связей) – это простое расширение файла, которое может использоваться приложениями в Windows для расширения функциональности.
Если просмотреть приложения, которые вы используете ежедневно, то, скорее всего, вы увидите большое количество DLL-файлов, хранящихся на вашем компьютере.
Вредоносные программы могут использовать формат DLL для транспортировки и последующего выполнения, и в таких случаях программы обнаружения могут добавлять суффикс .DLL для обозначения этого.
Заключение
Следует иметь в виду, что различные поставщики иногда меняют способы использования и отображения подобной информации.
К сожалению, не существует какой-либо обновленной конвенции, которую все использовали бы и которой все придерживались бы, и это часто создает впечатление большой неразберихи.
Это, конечно, не помогает средствам массовой информации, которые усугубляют проблему, часто неправильно используя термины или классификации, что приводит к путанице всех остальных.
Все это говорит о том, что вполне возможно, что со временем вы столкнетесь с различными форматами.
С учетом сказанного, мы надеемся, что это дало вам общее представление о том, как читать и понимать информацию такого рода, особенно если мы перейдем к более подробному обсуждению вредоносных программ.
см. также:
- 🔎 Пробуем свои силы, используя Volatility, для прохождения CTF
- 💣 Лучшие способы сломать Microsoft Windows
- ⚙️Как получить админский пароль на рабочем ПК в домене Active Directory?
- 🤖 Поиск потенциальных вредоносных программ в приложениях для Android
- 🔬 Как писать правила YARA для повышения безопасности и обнаружения вредоносных программ