RU2743619C1 - Способ и система генерации списка индикаторов компрометации - Google Patents
Способ и система генерации списка индикаторов компрометации Download PDFInfo
- Publication number
- RU2743619C1 RU2743619C1 RU2020126232A RU2020126232A RU2743619C1 RU 2743619 C1 RU2743619 C1 RU 2743619C1 RU 2020126232 A RU2020126232 A RU 2020126232A RU 2020126232 A RU2020126232 A RU 2020126232A RU 2743619 C1 RU2743619 C1 RU 2743619C1
- Authority
- RU
- Russia
- Prior art keywords
- malware
- indicators
- compromise
- carrier
- main
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 100
- 239000000969 carrier Substances 0.000 claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 15
- 238000004458 analytical method Methods 0.000 claims description 10
- 230000014509 gene expression Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 5
- 238000004891 communication Methods 0.000 claims description 2
- 238000002360 preparation method Methods 0.000 claims description 2
- 238000010845 search algorithm Methods 0.000 claims description 2
- 230000007787 long-term memory Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 2
- 239000000126 substance Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 10
- 238000011161 development Methods 0.000 description 9
- 230000009471 action Effects 0.000 description 7
- 238000011835 investigation Methods 0.000 description 7
- 238000000605 extraction Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 244000035744 Hura crepitans Species 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000001010 compromised effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000035515 penetration Effects 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 241000238102 Scylla Species 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000012636 effector Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/564—Static detection by virus signature recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Fuzzy Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Automation & Control Theory (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
Abstract
Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении противодействия сложным атакам на сетевую инфраструктуру. Компьютерно-реализуемый способ генерации списка индикаторов компрометации, в котором получают носитель ВПО, предназначенный для подготовки к запуску и/или запуска по меньшей мере одного основного модуля ВПО, строят дорожную карту атаки путем обнаружения дополнительных носителей ВПО и/или основного модуля ВПО и определения последовательности их исполнения, предусмотренной алгоритмом исполнения полученного носителя ВПО, находят в базе данных по меньшей мере одну дорожную карту атаки, с заданным уровнем точности совпадающую с построенной дорожной картой, извлекают из базы данных списки индикаторов компрометации для каждого носителя ВПО и/или основного модуля ВПО из по меньшей мере одной найденной дорожной карты атаки, генерируют общий список индикаторов компрометации на основе составленных списков индикаторов компрометации и извлеченных из базы данных списков объединенных списков индикаторов компрометации, сохраняют составленные списки индикаторов компрометации для каждого обнаруженного носителя ВПО или основного модуля ВПО, а также общий список индикаторов компрометации в базе данных. 2 н. и 12 з.п. ф-лы, 7 ил.
Description
ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее техническое решение относится к области вычислительной техники, а именно к области информационной безопасности, в частности, к способу и системе генерации списка индикаторов компрометации.
УРОВЕНЬ ТЕХНИКИ
[0002] Вредоносное программное обеспечение (ВПО) - собирательный термин, обозначающий вредоносную программу или код, который может причинить ущерб системе. ВПО разрабатывается таким образом, чтобы обеспечить проникновение в компьютерную систему, нанесение урона, частичный перехват контроля над некоторыми процессами или выведение из строя вычислительных устройств, например, компьютеров, серверов, сетевого оборудования, планшетных и мобильных устройств, а также разнообразных устройств, подключенных к "интернету вещей" (IOT). Собственно проникновение ВПО в какую-либо систему в рамках данного описания называется атакой.
[0003] Полнее, атака это комплекс действий, выполняемых заблаговременно подготовленным злоумышленником программным обеспечением, и нацеленный на компрометацию одного или нескольких конечных устройств сетевой инфраструктуры (компьютеров, серверов, маршрутизаторов и т.д.)
[0004] Сложной атакой в рамках данного описания называется разновидность атаки, при которой программа, достигающая конечной цели (основной модуль ВПО), замаскирована и\или зашифрована, а ее запуск является результатом выполнения сложного алгоритма, реализуемого вспомогательными программами, носителями ВПО.
[0005] Носителем ВПО в рамках данного описания называется программа, используемая злоумышленником в ходе сложной атаки на сетевую инфраструктуру в целях компрометации одного или нескольких конечных устройств, объединенных этой сетевой инфраструктурой. Как правило, носитель ВПО имеет многослойную структуру и может содержать или запускать, скачав с указанного веб-сервера, другие носители ВПО. Сложная атака подразумевает поочередное срабатывание нескольких разных программ-носителей ВПО, после чего запускается основной модуль ВПО. Например, сначала срабатывает эксплойт, затем шифратор, затем загрузчик, затем другой шифратор, и наконец, датастилер, который в этом примере является основным модулем ВПО.
[0006] Основным модулем ВПО в рамках данного описания называется финальный эффектор компрометации, та вредоносная программа, ради запуска которой задумана вся атака. Это может быть, например, вышеупомянутый датастилер, похищающий данные пользователей, шифровальщик, лишающий пользователя доступа к его документам или иная вредоносная программа. Основной модуль ВПО, прежде всего, характерен тем, что его функциональность не позволяет использовать его в роли носителя ВПО; напротив, для запуска основного модуля необходимы один или несколько носителей ВПО.
[0007] С целью упорядочения и удобства использования сведений о многочисленных разновидностях ВПО принято объединять разновидности ВПО в семейства. Семейство ВПО - это множество программ, предназначенных для использования в ходе атак, и объединенных одним функциональным назначением (загрузчики, датастилеры и т.д.) и\или общим коллективом разработчиков, а также базовым алгоритмом исполнения. Программы, составляющие одно семейство, отличаются друг от друга разного рода модификациями, в результате чего их общедоступные характеристики, такие как контрольная сумма, объем файла, имя файла, и т.д., различаются. Однако, все программы, входящие в одно семейство, предназначены для одной цели и все они для достижения этой цели совершают одни и те же основные шаги алгоритма.
[0008] Существенно, что может существовать много разных семейств программ одного функционального назначения. Разница между семействами заключается в том, что их представители реализуют одну и ту же функцию разными шагами алгоритма.
[0009] Приведем неисчерпывающий список семейств носителей и основных модулей ВПО, которые в дальнейшем будут использованы в описании в качестве примера:
[0010] Датастиллер (data stealer) - это программа, задача которой заключается в краже персональных данных пользователя. Одно из известных семейств датастилеров называется Pony.
[0011] Загрузчик (downloader) - программа, способная скачать с заданного вебсервера какой-либо файл, как правило, другую программу. Известно, что злоумышленники используют загрузчики семейства Nemucod.
[0012] Шифратор (crypter) - программа, задача которой замаскировать, посредством шифрования, принадлежность другой программы к вредоносным. Известно, например, семейство шифраторов AtilaCrypter.
[0013] Эксплойт (exploit) - это программа, задача которой состоит в эксплуатации известной уязвимости другой, как правило, легитимной программы, например, такой как Microsoft Word. Использование эксплойтов позволяет злоумышленникам применить легитимную программу для атаки. Например, известен эксплойт, эксплуатирующий уязвимость CVE-201711882 и позволяющий за счет этого внедрить в документ Microsoft Word стороннее ВПО.
[0014] Данный список не является исчерпывающим и использован только для иллюстрации описываемого способа; приводимые здесь названия носителей ВПО и основных модулей ВПО могут отличаться от общепринятых. На целях, задачах и принципах реализации описываемого способа это не отражается.
[0015] Стоит отметить, что встречается также многофункциональное ВПО, способное исполнять функции, например, загрузчика, шифратора и датастиллера. При классификации такое ВПО обычно относят к тому семейству, к которому принадлежит наиболее опасная выполняемая им функция.
[0016] Индикаторами компрометации или IOC (Indicator of Compromise) в рамках настоящего описания называются объекты или данные, позволяющие специалисту или специализированной программе обнаружить факт запуска или просто присутствия ВПО в исследуемой среде. Появление любого из индикаторов гарантирует факт компрометации системы. Индикаторами компрометации могут быть, например, папки файловой системы (folders) или ветви системного реестра (registry), расположенные по специфическим адресам, файлы или присутствующие в памяти процессы со специфическими именами, как например, EQNEDT32.exe, нетипичные сетевые сервисы, запущенные на определенных портах, некоторые доменные имена, обнаруженные в трафике, и другие подобные артефакты компьютерного окружения. Очевидно, что информация о том, как именно проявляется конкретный индикатор компрометации, а также списки IOC могут для удобства поиска храниться в виде простого текста (plain text).
[0017] В уровне техники известно большое количество систем информационной безопасности, которые позволяют получать, обрабатывать, хранить и интерпретировать индикаторы компрометации, а также автоматизированно осуществлять на основании результатов обработки этих индикаторов те или иные действия по обезвреживанию угроз и защите сетевой инфраструктуры. В качестве примера может быть названа, например, система Threat Intelligence™.
[0018] Как правило, такие системы также обладают функциями автоматизированного сбора индикаторов компрометации из различных, доступных через интернет и постоянно пополняющихся баз данных. В частности, один из известных вариантов реализации подобной функции раскрыт в российском патенте RU 2702269 C1, "СИСТЕМА ИНТЕЛЛЕКТУАЛЬНОГО УПРАВЛЕНИЯ КИБЕРУГРОЗАМИ".
[0019] Однако, первичный сбор индикаторов компрометации, необходимость в котором возникает немедленно, как только становится известно о сложной атаке на сетевую инфраструктуру, как правило, в настоящее время выполняется вручную, специалистами-аналитиками. Притом, поскольку сетевая инфраструктура может быть весьма разветвленной и содержать тысячи хостов, а сложная атака - многоступенчатой, оставляющей в различных местах инфраструктуры большое количество разнородных индикаторов компрометации, задача составления общего списка индикаторов компрометации для конкретной сложной атаки является весьма трудоемкой.
[0020] В уровне техники известен австралийский патентный документ AU 2017203008 B2, "Unstructured security threat information analysis", раскрывающий способ автоматической генерации списка индикаторов компрометации. Однако, в роли исходных данных раскрытый в данном документе способ подразумевает использование массивов неструктурированной текстовой информации, проще говоря, текстов профильной литературы, публицистики и\или новостей. Извлечение сведений об индикаторах компрометации непосредственно из программ (носителей ВПО) указанным способом не раскрывается.
[0021] Известен также американский патент US 10148685 B2, "Event correlation across heterogeneous operations", который раскрывает способ выявления атаки на основании анализа изменений, происходящих в сетевой инфраструктуре. Но в то же время, задача построения списка индикаторов компрометации, оставленных в ходе уже состоявшейся и выявленной атаки на сетевую инфраструктуру, данным документом не раскрывается, как и построение карты сложной атаки, от носителя до основного модуля ВПО.
[0022] Другой известный американский патент, US 10467411 В1, "System and method for generating a malware identifier", раскрывает способ извлечения индикаторов компрометации, основанный на запуске основного модуля ВПО в виртуальной среде ("песочнице") и последующем изучении изменения параметров этой среды. Однако, указанный документ не раскрывает построение карты сложной атаки, от носителя до основного модуля ВПО, а также извлечение информации о похожих сложных атаках, имевших место ранее. Что, в свою очередь, означает, что система, реализующая описанный способ, в случае сложной атаки, осуществляемой при помощи носителей ВПО различных модификаций, не сможет получить полные списки индикаторов компрометации. Соответственно, в сетевой инфраструктуре могут остаться скомпрометированные элементы, факт компрометации которых не обнаружен.
[0023] Предлагаемое решение нацелено на устранение перечисленных недостатков уровня техники, оно отличается от решений, известных из уровня техники, тем, что реализовано за счет раскрытия компьютерно-реализуемого способа генерации списка индикаторов компрометации, автоматически порождаемого при проведении конкретной сложной атаки на сколь угодно разветвленную сетевую инфраструктуру на основании сведений, извлекаемых из конкретного носителя ВПО, посредством которого была реализована данная атака, с учетом сведений о сложных атаках, осуществленных ранее при помощи носителей ВПО различных модификаций, в том числе отличающихся от модификации носителя ВПО, использованного в ходе данной атаки.
СУЩНОСТЬ (РАСКРЫТИЕ) ИЗОБРЕТЕНИЯ
[0024] Задача предлагаемого изобретения заключается в разработке системы и способа автоматической генерации списка индикаторов компрометации.
[0025] Технический результат заявленного изобретения заключается в обеспечении противодействия сложным атакам на сетевую инфраструктуру, реализуемым посредством носителя вредоносного программного обеспечения (ВПО), путем автоматической генерации списка индикаторов компрометации, характерных для данного конкретного носителя ВПО. Это, в свою очередь, позволит оперативно осуществить реагирование на данный инцидент и предотвратить нанесение ущерба как сетевой инфраструктуре, так и бизнес-процессам, выполняющимся с ее помощью.
[0026] Данный технический результат достигается за счет предложенного компьютерно-реализуемого способа генерации списка индикаторов компрометации, причем способ содержит этапы, на которых:
[0027] получают носитель ВПО, предназначенный для подготовки к запуску и/или запуска по меньшей мере одного основного модуля ВПО,
[0028] строят дорожную карту атаки путем обнаружения дополнительных носителей ВПО и/или основного модуля ВПО и определения последовательности их исполнения, предусмотренной алгоритмом исполнения полученного носителя ВПО,
[0029] определяют принадлежность каждого обнаруженного носителя ВПО или основного модуля ВПО к определенному семейству ВПО,
[0030] составляют для каждого обнаруженного носителя ВПО или основного модуля ВПО список индикаторов компрометации,
[0031] находят в базе данных по меньшей мере одну дорожную карту атаки, характеризующейся тем, что последовательность запуска носителей ВПО и/или основных модулей ВПО в этой дорожной карте с заданным уровнем точности совпадает с последовательностью запуска носителей ВПО и/или основных модулей ВПО в полученном носителе ВПО, а сами эти носители ВПО и/или основные модули ВПО относятся к тем же семействам,
[0032] извлекают из базы данных списки индикаторов компрометации для каждого носителя ВПО и/или основного модуля ВПО из по меньшей мере одной найденной дорожной карты атаки,
[0033] генерируют общий список индикаторов компрометации на основе составленных списков индикаторов компрометации и извлеченных из базы данных списков объединенных списков индикаторов компрометации.
[0034] сохраняют составленные списки индикаторов компрометации для каждого обнаруженного носителя ВПО или основного модуля ВПО, а также общий список индикаторов компрометации, в базе данных.
[0035] В одном частном варианте заявленного решения получают носитель ВПО, содержащий по меньшей мере один основной модуль ВПО, либо предназначенный для подготовки к запуску по меньшей мере одного основного модуля ВПО, от внешней системы анализа инцидентов компьютерной безопасности.
[0036] В другом частном варианте заявленного решения подготовка к запуску и запуск по меньшей мере одного основного модуля ВПО подразумевает запуск по меньшей мере одного дополнительного носителя ВПО, приводимого в действие полученным носителем ВПО.
[0037] Еще в одном частном варианте заявленного решения строят дорожную карту атаки, запуская полученный носитель ВПО в изолированной среде и фиксируя последовательность и характер воздействия носителя ВПО на среду.
[0038] Возможен также частный вариант заявленного решения, в котором строят дорожную карту атаки в виде графа, вершинами которого являются носители ВПО и/или основные модули ВПО, запуск которых предусмотрен алгоритмом исполнения полученного носителя ВПО, а ребра указывают на последовательность запуска этих носителей ВПО и/или основных модулей ВПО.
[0039] Еще в одном частном варианте заявленного решения определяют принадлежность каждого обнаруженного носителя ВПО или основного модуля ВПО, запуск которых предусмотрен алгоритмом исполнения полученного носителя ВПО, к какому-либо семейству ВПО, применяя заранее обученный по меньшей мере один классификатор.
[0040] Еще в одном частном варианте заявленного решения составляют список индикаторов компрометации для каждого обнаруженного носителя ВПО или основного модуля ВПО, запуская заранее подготовленную среду, обеспечивающую извлечение индикаторов компрометации из внутренней структуры носителя ВПО и/или основного модуля ВПО, относящегося к определенному семейству ВПО, и сохранение извлеченных индикаторов в виде списка.
[0041] Возможен также вариант заявленного решения, в котором составляют список индикаторов компрометации для каждого обнаруженного носителя ВПО и/или основного модуля ВПО, запуская полученный носитель ВПО в изолированной среде, выполненной с возможностью сохранения списка изменений состояния среды в качестве списка индикаторов компрометации после исполнения каждого носителя ВПО и/или основного модуля ВПО, запущенного полученным носителем ВПО.
[0042] Также возможен вариант заявленного решения, в котором составляют список индикаторов компрометации для каждого обнаруженного носителя ВПО и/или модуля ВПО, дополнительно запуская заранее подготовленную среду, обеспечивающую извлечение индикаторов компрометации из внутренней структуры носителя ВПО и/или основного модуля ВПО, относящегося к определенному семейству ВПО, и добавление извлеченных индикаторов в список, составленный после запуска носителя ВПО и/или основного модуля ВПО в изолированной среде.
[0043] В другом частном варианте заявленного решения для извлечения из базы данных списков индикаторов компрометации для каждого носителя ВПО и/или основного модуля ВПО из по меньшей мере одной найденной дорожной карты атаки используют алгоритмы нечеткого поиска в базе данных.
[0044] Еще в одном частном варианте заявленного решения дополнительно сохраняют в базе данных объединенную дорожную карту атаки, содержащую как построенную дорожную карту атаки, так и по меньшей мере одну найденную дорожную карту атаки.
[0045] Возможен и вариант заявленного решения, в котором используют регулярные выражения для генерации общего списка индикаторов компрометации из составленного списка индикаторов компрометации и извлеченных из базы данных списков индикаторов компрометации.
[0046] Также может быть реализован частный вариант заявленного решения, в котором дополнительно передают общий список индикаторов компрометации во внешнюю систему анализа инцидентов компьютерной безопасности.
[0047] Вышеназванный технический результат также достигается за счет предложенной системы генерации списка индикаторов компрометации, содержащей долговременную память, выполненную с возможностью хранения файлов и данных; устройство связи, выполненное с возможностью получения носителей ВПО и передачи данных, а также вычислительное устройство, выполненное с возможностью выполнения описанного способа генерации списка индикаторов компрометации.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0048] Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:
[0049] Фиг. 1А-1Б иллюстрируют возможную структуру носителя ВПО и возможный алгоритм сложной атаки.
[0050] Фиг. 2 иллюстрирует общий алгоритм описываемого способа автоматической генерации списка индикаторов компрометации.
[0051] Фиг. 3 иллюстрирует пример одного из возможных алгоритмов построения дорожной карты атаки.
[0052] Фиг. 4А-4Б иллюстрирует пример дорожных карт атаки, с заданным уровнем точности совпадающих с построенной картой атаки.
[0053] Фиг. 5 иллюстрирует пример общей схемы вычислительного устройства, необходимого для выполнения способа генерации списка индикаторов компрометации.
ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
[0054] Следующее далее подробное описание представлено, чтобы дать возможность любому специалисту в данной области для осуществления и использования настоящего изобретения. Для целей описания, конкретные детали приводятся, чтобы дать глубокое понимание настоящего изобретения. Однако специалисту в данной области будет ясно, что эти конкретные детали не являются необходимыми для осуществления настоящего изобретения. Описания конкретных применений приводятся только как репрезентативные примеры. Различные модификации предпочтительных вариантов осуществления будут очевидны специалистам в данной области, и общие принципы, определенные в настоящем документе, могут применяться к другим вариантам осуществления и применениям без отклонения от рамок настоящего изобретения.
[0055] Описанное в данном документе решение, как предполагается, не является ограниченным указанными вариантами осуществления, но должно соответствовать самым широким возможным рамкам, совместимым с принципами и признаками, описанными в настоящем документе.
[0056] Настоящее изобретение направлено на обеспечение системы и компьютерно-реализуемого способа генерации списка индикаторов компрометации.
[0057] Способ начинается, когда получают носитель ВПО. Это файл, предназначенный для сложной атаки на сетевую инфраструктуру. Такой файл, как правило, содержит в зашифрованном виде либо собственно основной модуль ВПО, который реализует конечную цель атаки, либо одну или несколько вспомогательных программ-носителей, которые должны загрузить основной модуль ВПО с указанного веб-сервера или иным путем подготовить его к работе (например, расшифровать).
[0058] В качестве неограничивающего иллюстративного примера на Фиг. 1А условно показан один из возможных вариантов структуры носителя ВПО 100. В данном примере носитель ВПО 100 содержит эксплойт 110, внедренный в документ Microsoft Word и эксплуатирующий уязвимость в этой программе, например, это может быть эксплойт, эксплуатирующий уязвимость CVE-201711882.
[0059] После срабатывания, происходящего при открытии зараженного документа, эксплойт, например, сохраняет на диск зашифрованный файл и запускает программу-шифратор 120, например, шифратор семейства AtilaCrypter. Последний расшифровывает зашифрованный файл, в котором содержится загрузчик (downloader) 130, принадлежащий, например, семейству загрузчиков Nemucod. Обращаясь по хранящемуся в его коде адресу, загрузчик 130 загружает с командного сервера злоумышленников еще один зашифрованный файл и запускает для его расшифровки еще один шифратор 140, например, HabibCrypter. После расшифровки загруженного файла запускается основной модуль ВПО 150, например, датастиллер (DataStealer) семейства Pony.
[0060] Таким образом может быть реализована сложная атака, дорожная карта (граф) которой 170 показана на Фиг. 1Б. Из карты следует, что после срабатывания 171 эксплойта ПО происходит запуск 172 шифратора 120, затем запуск 174 загрузчика 130, после чего запускается 176 второй шифратор 140, и наконец, происходит запуск 180 основного модуля ВПО 150.
[0061] Альтернативно, например, в зависимости от состояния отслеживаемых носителями ВПО параметров среды, в которой происходит атака, после запуска 172 шифратора 120 может быть выполнен запуск 173 еще одного шифратора, после чего атака продолжает развиваться в соответствии с описанной ранее дорожной картой. Также возможна, например, загрузка 175 загрузчиком 130 альтернативной версии зашифрованной основного модуля ВПО 150 и ее дополнительная распаковка 177 вторым шифратором 140. В этом случае, как и в предыдущем, развитие атаки завершается запуском 180 основного модуля ВПО 150, однако сам этот основной модуль может быть уже другим, то есть, применительно к приведенному выше примеру, не являться датастилером семейства Pony.
[0062] Следует отметить, что альтернативные пути дорожной карты (графа) атаки 173 и 175-177 могут быть задействованы в ходе одной атаки наряду с основным путем, показанным шагами 172-174-176. При осуществлении подобной атаки на разветвленную сетевую инфраструктуру, содержащую множество элементов (роутеров, компьютеров, серверов, устройств ЮТ и так далее) не исключен вариант, что на каких-то устройствах атака будет развиваться с использованием пути 173, на каких-то других - с использованием пути 175-177, а еще на каких-то - по основному пути графа 172-174-176. Вследствие этого различные элементы сетевой инфраструктуры будут скомпрометированы различными средствами и будут по этой причине содержать различные, не совпадающие полностью наборы индикаторов компрометации.
[0063] Также необходимо указать, что носитель ВПО 100 и дорожная карта развиваемой им атаки 170 для простоты восприятия показаны в сильно упрощенном варианте. В реальных атаках количество шагов, таких как шаги 171, 172, 173 и т.д., может быть значительно больше. Существенно больше может быть и альтернативных путей дорожной карты атаки, таких как альтернативные пути 173 и 175-177.
[0064] Общий алгоритм описываемого способа представлен на Фиг. 2. В соответствии с Фиг. 2, способ 200 начинается на этапе 210 с получения файла носителя ВПО, например, такого как носитель ВПО 100, показанный на Фиг. 1А. Носитель ВПО может быть, например, электронным письмом, которое содержит вредоносное вложение, например, документ Microsoft Word, зараженный эксплойтом, который эксплуатирует уязвимость CVE-2017-11882. Такое письмо может быть отправлено, например, на адрес электронной почты, используемый описываемой системой в качестве "входного".
[0065] Альтернативно, носитель ВПО может представлять собой и какой-то иной файл, например, скрипт или иной исполнимый файл, заблаговременно подготовленный злоумышленниками для сложной атаки на сетевую инфраструктуру. Такой файл может быть помещен в специально выделенную и открытую (share) на запись папку локальной сети, расположенной на сервере, на котором функционирует система, реализующая данный способ. Система, в свою очередь, при этом может с заданной периодичностью, например, раз в минуту, проверять, не появились ли в папке новые файлы, и при их появлении автоматически приступать к их обработке.
[0066] Еще в одном варианте реализации подобный файл может быть загружен посредством веб-формы, расположенной на интернет-сайте, который служит пользовательским интерфейсом системы, реализующей данный способ.
[0067] Носитель ВПО на этапе 210 может быть получен системой, реализующей способ, из какого-либо внешнего источника, например, от одной из многочисленных известных систем анализа инцидентов компьютерной безопасности, например, такой как TDS Polygon™. В другом варианте реализации способа носитель ВПО может быть перечисленными способами прислан или передан системе сотрудником отдела кибербезопасности, занятым расследованием инцидента компрометации компьютерной инфраструктуры.
[0068] На этапе 220 строят дорожную карту атаки, определяя последовательность запуска носителей ВПО и, наконец, основного модуля ВПО, реализуемую полученным носителем ВПО, то есть получают по меньшей мере один путь, соединяющий запуск полученного носителя ВПО (такой, как запуск носителя 171 на Фиг. 1Б) и запуск основного модуля ВПО (такой, как запуск основного модуля 180 на Фиг. 1Б). В то же время, построение дорожной карты атаки подразумевает также такие подэтапы, как
[0069] - определение принадлежности каждого обнаруженного носителя ВПО или основного модуля ВПО к определенному семейству и\или коллективу разработчиков ВПО.
[0070] - извлечение списков индикаторов компрометации для каждого обнаруженного носителя ВПО или основного модуля ВПО.
[0071] Более подробно действия, выполняемые на этапе 220, будут описаны ниже, со ссылкой на Фиг. 3.
[0072] После выполнения этапа 220 способ переходит к этапу 230, на котором, используя построенную дорожную карту атаки, находят в базе данных по меньшей мере одну дорожную карту атаки, с заданным уровнем точности совпадающей с построенной на шаге 220. "Совпадение с заданным уровнем точности" в данном случае означает, что имеет место частичное соответствие. Например, наличие в найденной дорожной карте атаки не менее 3 шагов, таких, например, как шаги 171, 174, 180 на Фиг. 1Б, идентичных шагам дорожной карты атаки, построенной на этапе 220, и выполняемых в такой же последовательности.
[0073] Подробнее один из возможных способов выполнения этапа 230 будет описан ниже, со ссылкой на Фиг. 4А-4Б.
[0074] Затем способ переходит к этапу 240, на котором из базы данных извлекают списки индикаторов компрометации, соответствующие найденной по меньшей мере одной дорожной карте атаки, то есть по меньшей мере одной записи базы данных, содержащей информацию о ранее состоявшейся сложной атаке. Эти списки, каждый из которых соответствует исполнению одного носителя ВПО или основного модуля ВПО, могли быть предварительно сохранены в базе данных в ходе выполнения исследований, аналогичных описанным выше применительно к этапам 210-220.
[0075] Иными словами, для получения базы данных, используемой в данном способе, предварительно проводят подготовительную работу, выполняя исследования различных носителей ВПО, реализующих сложные атаки, и сохраняя полученные дорожные карты атак и списки индикаторов компрометации. Альтернативно или дополнительно, база данных, используемая в данном способе может пополняться данными, автоматически получаемыми из открытых источников, таких как веб-сайты, агрегирующие списки индикаторов компрометации, соответствующие различным семействам ВПО.
[0076] После выполнения этапа 240 способ переходит к этапу 250, на котором на основании списков индикаторов компрометации, полученных на этапе 220, а также списков индикаторов компрометации, извлеченных из базы данных на этапе 240, генерируют общий список индикаторов компрометации. В ходе нижеперечисленных операций над списками каждый индикатор компрометации рассматривается как текстовая строка.
[0077] В одной из возможных реализаций описываемого метода генерация общего списка индикаторов компрометации может выполняться путем слияния списка индикаторов компрометации, построенного на этапе 220, со списками индикаторов компрометации, извлеченных из базы данных на этапе 240. Слияние списков выполняется в соответствии с логической процедурой ИЛИ и подразумевает проверку совпадения каждой новой строки из списков индикаторов компрометации, извлеченных из базы данных на этапе 240, со всеми строками списка индикаторов компрометации, построенного на этапе 220. При обнаружении точно повторяющихся строк такие строки игнорируют (не включают в общий список). В тех случаях, когда очередная проверяемая строка не имеет строгого соответствия в списке, построенном на этапе 220, такую строку добавляют в общий список индикаторов компрометации.
[0078] В другой возможной реализации описываемого метода генерация общего списка индикаторов компрометации может выполняться с использованием регулярных выражений. Повторно встречающиеся точно совпадающие строки при этом игнорируют, аналогично предыдущей реализации. Строки, совпадающие более, чем HaN, где N - заранее заданная, экспериментально подобранная величина, например, 78%), объединяют с использованием регулярных выражений.
[0079] Например, если в списках найдены четыре строки, имеющие следующий вид:
[0080] C:\Users\John\123.txt
[0081] C:\Users\Mary\123.txt
[0082] С:\Users\Rosencrantz\123.txt.
[0083] С:\Users\Guildenstern\123.txt
[0084] то в соответствии с описываемым способом в общий список индикаторов компрометации, полученный в результате данного этапа, будет включена одна строка следующего вида:
[0085] C:\\Users\\.*?\\123\.txt.
[0086] На заключительном этапе 260 сохраняют построенную дорожную карту атаки, полученные в ходе этапа 220 списки индикаторов компрометации, а также общий список индикаторов компрометации, сгенерированный на этапе 250, в базе данных. На этом же этапе упомянутый общий список индикаторов компрометации может быть передан во внешнюю систему, например, в систему анализа инцидентов компьютерной безопасности.
[0087] В одном из возможных альтернативных вариантов реализации описываемого способа на этапе 260 также сохраняют объединенный граф сложной атаки 490, описанный ниже применительно к Фиг. 4Б.
[0088] После окончания этапа 260 способ завершается.
[0089] Фиг. 3 иллюстрирует в деталях выполнение этапа 220, на котором, как было упомянуто выше, строят дорожную карту атаки. В соответствии с Фиг. 3, построение дорожной карты атаки 220 начинается на этапе 221, на котором определяют платформу носителя ВПО и запускают носитель ВПО в изолированной среде, соответствующей данной платформе.
[0090] Платформа в данном случае это среда, в которой должно исполняться исследуемое программное обеспечение. Платформа включает в себя как аппаратное обеспечение (например, оперативную память, жесткий диск), так и программное обеспечение (BIOS, операционную систему и т.д). Определение платформы может производиться, например, методом перебора: исследуемый носитель ВПО поочередно запускают в изолированных средах, каждая из которых настроена таким образом, чтобы соответствовать определенной платформе, и сохраняют информацию о том, на какой платформе исследуемый носитель ВПО успешно запустился. Например, таким образом может быть установлено, что исследуемый носитель ВПО предназначен для исполнения на платформе Win32.
[0091] Таким образом, исследуемый носитель ВПО оказывается запущен в изолированной среде, которая соответствует его платформе и имитирует, например, функционирование персонального компьютера.
[0092] Указанную изолированную среду заблаговременно настраивают таким образом, чтобы исполнение останавливалось в момент окончания работы запущенного носителя ВПО и попытки запуска им другого носителя ВПО или основного модуля ВПО, что может быть реализовано любым известным образом.
[0093] Кроме того, поскольку вектор, то есть цель атаки исследуемого носителя ВПО может быть заранее неизвестен, изолированная среда может быть дополнительно настроена таким образом, чтобы имитировать доступные по локальной сети элементы сетевой инфраструктуры, например, маршрутизатор, WiFi-роутер и так далее. Это может быть реализовано любым общеизвестным образом, например, организацией так называемых ханипотов (honey-pot), свойства которых соответствуют имитируемым элементам сетевой инфраструктуры.
[0094] Затем способ переходит к этапу 223, на котором фиксируют изменения параметров изолированной среды, происходящие в ответ на запуск носителя ВПО. Собственно фиксация изменений может производиться любым общеизвестным образом.
[0095] Полученный в результате фиксации изменений параметров изолированной среды список индикаторов компрометации на этапе 225 сохраняется в базе данных.
[0096] Альтернативно или дополнительно к этапу 223 может выполняться этап 224 (не показан на Фиг. 3), на котором из каждого обнаруженного носителя ВПО и/или модуля ВПО извлекают индикаторы компрометации, запуская его в заранее подготовленной среде, обеспечивающей извлечение индикаторов компрометации из внутренней структуры носителя ВПО и/или основного модуля ВПО. Этот способ извлечения основан на том факте, что во внутренней структуре многих носителей ВПО или основных модулей ВПО исходно присутствуют некоторые индикаторы компрометации, например, адреса веб-серверов для загрузки очередного носителя или адреса папок файловой системы, где следует создать файлы. Их извлечение может выполняться заранее подготовленным скриптом, обеспечивающим обращение по заранее известным адресам внутренней структуры носителя ВПО или основного модуля ВПО и извлечение указанных индикаторов компрометации. Извлеченные в ходе этапа 224 индикаторы компрометации добавляют в список, составленный после этапа 223.
[0097] В то же время, параллельно с этапами 221-225 выполняются этапы 222-226. На этапе 222 любым известным методом создают копию исследуемого носителя ВПО (или основного модуля ВПО).
[0098] На этапе 224 устанавливают принадлежность данного носителя или основного модуля ВПО к определенному семейству ВПО или коллективу разработчиков ВПО. Это может выполняться, например, известным способом определения принадлежности программного обеспечения по его машинному коду. В соответствии с этим способом, на подготовительном этапе получают файл, содержащий машинный код ВПО; определяют формат полученного файла; извлекают и сохраняют код функций, присутствующих в полученном файле; удаляют из сохраненного кода функции, которые являются библиотечными; выделяют в каждой функции команды; выделяют в каждой команде пару «действие, аргумент»; преобразуют каждую пару «действие, аргумент» в целое число; сохраняют, отдельно для каждой выделенной функции, полученную последовательность чисел; накапливают заранее заданное количество результатов анализа машинного кода; выявляют в результатах анализа машинного кода повторяющиеся последовательности чисел (паттерны); для каждого выявленного паттерна вычисляют параметр, характеризующий его частотность; сохраняют заданное количество паттернов и на основе вычисленных для каждого паттерна набора параметров обучают по меньшей мере один классификатор определять принадлежность программного обеспечения по последовательности пар «действие, аргумент». Непосредственно в ходе этапа 224 применяют обученный по меньшей мере один классификатор для последующего определения принадлежности программного обеспечения к определенному семейству программ.
[0099] Альтернативно, принадлежность данного носителя или основного модуля ВПО к определенному семейству ВПО или коллективу разработчиков ВПО может быть установлена путем поиска характерных фрагментов кода в коде носителя ВПО или основного модуля ВПО, выполняемого посредством заблаговременно созданным для этого скриптом. Данный скрипт может устанавливать наличие в заранее известных местах кода фрагментов кода, характерных для того или иного семейства ВПО. Такие фрагменты, способные стать "визитной карточкой" определенного семейства ВПО, хорошо известны специалистам в предметной области. Они могут быть заранее, до запуска системы реализующей описываемый метод, собраны, например, в базе данных и использованы для поиска по коду носителя ВПО или основного модуля ВПО.
[0100] Альтернативно, принадлежность данного носителя или основного модуля ВПО к определенному семейству ВПО или коллективу разработчиков ВПО может быть установлена любым другим известным способом.
[0101] Следует отметить, что в ходе этапа 224 возможна ситуация, когда принадлежность носителя ВПО или основного модуля ВПО определить не удается. Такое может быть, например, если злоумышленники использовали при подготовке изучаемой сложной атаки принципиально новое ВПО, не использовавшееся ранее и не имеющее характерных черт какого бы то ни было семейства. В рамках описываемого способа предполагается, что все ВПО, принадлежность которого установить не удалось, относят к "общему семейству" ВПО. Это семейство ВПО объединяет все образцы ВПО, принадлежность которых другим семействам не установлена.
[0102] Наконец, на этапе 226 сведения о принадлежности исследованного носителя или основного модуля ВПО сохраняют базе данных, применительно к дорожной карте атаки. В результате этапов 222-226 к дорожной карте атаки добавляется, применительно к Фиг. 1Б, очередной шаг, такой как шаг 171, шаг 172 или шаг 180.
[0103] В различных альтернативных вариантах реализации описываемого способа (на Фиг. 3 эти варианты не показаны) этапы 222-226 могут выполняться перед началом этапов 221-225, либо после их окончания.
[0104] Также в одном из возможных вариантов реализации способа полученный на этапах 221-225 список индикаторов компрометации д ля исследованного носителя ВПО или основного модуля ВПО сохраняется в базе данных, применительно к дорожной карте атаки в ассоциации с конкретным семейством ВПО или коллективом разработчиков ВПО, принадлежность к которому исследованного носителя или модуля ВПО была определена в ходе выполнения этапов 222-226. Иными словами, полученный список индикаторов компрометации может быть объединен с, или добавлен к имеющимся в базе данных спискам индикаторов компрометации для ВПО данного семейства.
[0105] Благодаря тому, что изолированная среда, в которой выполняются этапы 221-225, заблаговременно настроена так, чтобы исполнение останавливалось в момент окончания работы запущенного носителя ВПО, по окончании работы запущенного носителя ВПО способ автоматически переходит к этапу 227, на котором проверяют, была ли осуществлена попытка запуска запущенным модулем ВПО другого носителя ВПО или основного модуля ВПО.
[0106] Специалистам в предметной области известно, что о попытке запуска некоего нового модуля обычно свидетельствуют определенные, заранее известные изменения в состоянии изолированной среды. Например, применительно к платформе Win32 это определенные последовательности и параметры вызываемых системных API.
[0107] Списки таких последовательностей и параметров могут быть подготовлены заблаговременно, а факт обнаружения одной или нескольких заранее известных последовательностей может быть интерпретирован как факт обнаружения попытки запуска другого носителя ВПО или основного модуля ВПО.
[0108] Поскольку для большинства изолированных сред известны и существуют типовые способы фиксации активности, происходящей в системе, например, логирование (фиксация изменений среды в текстовом виде), хуки (hooks) и так далее, вышеуказанное обнаружение попытки запуска другого носителя ВПО или основного модуля ВПО может быть реализовано этими типовыми средствами любым общеизвестным образом.
[0109] В качестве неограничивающего примера критерия обнаружения для платформы Win32 можно привести CreateRemoteThread, для платформы.net - метод Invoke, и так далее. Соответственно, основанием для останова исполнения в первом случае будет появление последовательности вызовов:
[0010] OpenProcess - GetProcAddress - VirtualAllocEx - WriteProcessMemory -CreateRemote Thread.
[0111] В том случае, если на этапе 227 подобная попытка не обнаружена, что соответствует завершению развития сложной атаки (окончание шага 180 на Фиг. 1Б), то способ переходит к этапу 228, на котором сохраняют построенную дорожную карту атаки, а также списки индикаторов компрометации для каждого обнаруженного носителя ВПО и основного модуля ВПО.
[0112] Очевидно, что применительно к Фиг. 1Б, к данному моменту путем выполнения описанных выше этапов получают (определяют) всю последовательность исполнения носителей ВПО 171, 172, 174, 176 и основного модуля ВПО 180, а также сведения о том, к какому именно семейству ВПО принадлежит каждый из этих носителей и основной модуль. Кроме того, для каждого из названных объектов к данному моменту получен список индикаторов компрометации.
[0113] Таким образом, к моменту завершения этапа 228 получают по меньшей мере одну дорожную карту атаки, то есть граф, вершинами которого являются используемые злоумышленниками носители ВПО и основной модуль ВПО, а ребра отображают последовательность запуска этих носителей и модуля. Притом каждому используемому носителю ВПО и\или основному модулю ВПО поставлен в соответствие список индикаторов компрометации, характерных для его исполнения. Вся перечисленная информация может быть сохранена в базе данных, например, во внутренней базе данных системы, реализующей данный способ.
[0114] Завершение этапа 228 означает завершение построения дорожной карты атаки, и способ, применительно к Фиг. 2, переходит, как было сказано ранее, к этапу 230.
[0115] В том случае, если на этапе 227 обнаружена попытка запуска исследованным на этапах 221-225 носителем ВПО другого носителя ВПО или основного модуля ВПО (что означает, что развитие сложной атаки еще не завершено, и дорожная карта не построена до конца), то способ переходит к этапу 229, на котором восстанавливают очередной носитель ВПО или основной модуль ВПО, который пытался запустить исследованный носитель ВПО.
[0116] Восстановление в данном случае означает компоновку из расположенного в памяти кода и данных программы - программного модуля, например, исполнимого файла, который может быть запущен на соответствующей платформе. Из расположенного в памяти кода и данных очередного носителя ВПО или основного модуля ВПО на этапе 229 восстанавливают этот очередной носитель ВПО или основной модуль ВПО, приводя его к виду, позволяющему запустить его на соответствующей ему платформе.
[0117] Восстановление может выполняться любым известным образом, например, посредством программы Scylla. Подробное описание собственно восстановления не приводится, поскольку подходы и способы его выполнения являются очевидными для любого специалиста в данной предметной области.
[0118] Затем восстановленный очередной носитель ВПО или основной модуль ВПО передают на вход вышеописанному способу 220. Иными словами, начинают исполнение этапов 222 и 221 для нового (восстановленного) носителя ВПО или основного модуля ВПО.
[0119] Притом, если и когда в ходе исполнения исследованного ранее носителя ВПО будет выяснено, например, посредством созданных в изолированной среде ханипотов, что вектор атаки (место предполагаемого исполнения восстановленного носителя ВПО) направлен не на, например, персональный компьютер, имитируемый в данной изолированной среде, а например, на маршрутизатор, то восстановленный носитель ВПО помещают в изолированную среду с такими настройками, которые имитируют маршрутизатор или, более общо, новую выявленную цель атаки.
[0120] Несложно видеть, что вышеописанный этап 220 построения дорожной карты сложной атаки исполняется циклически до тех пор, пока на этапе 227 не будет установлено, что попытки запустить еще один носитель или основной модуль ВПО не было. Это соответствует окончанию развития сложной атаки, то есть, применительно к Фиг. 1Б, завершению всей последовательности исполнения носителей ВПО 171, 172, 174, 176, а также завершению исполнения основного модуля ВПО 180.
[0121] Применительно к ситуации реальной атаки на сетевую инфраструктуру, на вышеописанном этапе 220 система, реализующая описываемый способ, имитирует успешное развитие сложной атаки, то есть последовательное исполнение носителей ВПО, а затем основного модуля ВПО в таком порядке и на тех элементах сетевой инфраструктуры, как это планировали злоумышленники.
[0122] Притом на протяжении всей атаки система, реализующая описываемый способ, обеспечивает сбор индикаторов компрометации для каждого из шагов сложной атаки, а также идентификацию принадлежности вредоносного ПО, исполняющегося на каждом шаге атаки.
[0123] Фиг. 4А-4Б иллюстрируют в деталях выполнение этапа 230, на котором, используя построенную дорожную карту атаки, находят в базе данных по меньшей мере одну дорожную карту атаки, с заданным уровнем точности совпадающей с построенной на шаге 220. В соответствии с Фиг. 4А, выполнение этапа 230 начинается с получения на этапе 231 дорожной карты атаки, построенной на этапе 220.
[0124] Нужно отметить, что построенная дорожная карта атаки, которую получают на данном этапе может, в частности, как это показано на Фиг. 4Б, представлять собой граф 400. Вершинами графа в данном примере являются эксплойт 410, шифратор 420, загрузчик 430, шифратор 440 и датастилер 450, выявленные в ходе этапа 220, описанного выше применительно к Фиг. 2. Ребра данного графа соответствуют очередности запуска и исполнения перечисленных носителей ВПО и основного модуля ВПО.
[0125] Условное обозначение на чертеже эксплойта 410 как С7 в данном примере отражает тот факт, что данный носитель ВПО является седьмым по счету представителем семейства эксплойтов, эксплуатирующий уязвимость CVE-201711882. Аналогично, шифратор 420 обозначен как А5, что означает, что это пятый представитель семейства шифраторов AtilaCrypter, загрузчик 430 - второй представитель семейства Nemucod, шифратор 440 - восьмой представитель семейства HabibCrypter, а основной модуль ВПО, датастилер 450 - третий представитель семейства Pony. Все перечисленные факты принадлежности были выявлены в ходе построения дорожной карты атаки, а именно этапа 224, описанного выше применительно к Фиг. 3.
[0126] В альтернативном способе представления дорожная карта атаки, полученная на этапе 231, может представлять собой список, в котором очередность перечисления семейств ВПО соответствует выявленной очередности запуска носителей ВПО и основного модуля ВПО, а число в скобках соответствует порядковому номеру выявленного носителя или модуля в списке соответствующего семейства ВПО. Пример такого списка, аналогичного по смыслу графу 400, может выглядеть следующим образом:
[0127] CVE-201711882 (7), AtilaCrypter (5), Nemucod (2), HabibCrypter (8), Pony (3)
[0128] Возможны также, без ограничения, любые иные альтернативные способы представления дорожной карты атаки, позволяющие указать очередность запуска носителей и основного модуля, семейство ВПО, к которому принадлежит каждый из них, а также порядковый номер или любой другой идентификатор образца ВПО внутри семейства ВПО, к которому этот образец относится.
[0129] Соответственно, под "поиском дорожной карты" в настоящем описании подразумевается поиск в базе данных графов, строк, векторов, таблиц, матриц, множеств или любых иных, в зависимости от используемого способа представления, записей базы данных, удовлетворяющих заданным условиям поиска.
[0130] Для простоты описания последующих этапов, каждый идентифицированный носитель ВПО или основной модуль ВПО, принадлежащий к определенному семейству и фигурирующий в дорожной карте атаки, продолжая принятый в графе 400 на Фиг. 4Б принцип обозначения, далее называется "вершиной графа А1" или "вершиной А1", где буква А указывает на определенное семейство ВПО, а числовой индекс 1 указывает на некий идентификатор данного образца ВПО внутри этого семейства, например, на его порядковый номер. Так, в соответствии с этим принципом, А1 и А2 - это разные представители одного семейства А, тогда как А2 и В2 - представители различных семейств А и В.
[0131] Обозначение вида Ах используется в значении "любой представитель семейства А".
[0132] Возвращаясь к Фиг. 4Б, затем способ переходит к этапу 232, на котором задают параметры поиска в базе данных, а именно минимальное общее количество различающихся записей базы данных, которое необходимо найти в ходе поиска, Fa, и минимальное количество совпадающих с вершинами полученной дорожной картой атаки вершин Km, которые должны присутствовать в записи, удовлетворяющей условиям поиска. Например, могут быть заданы такие параметры: найти не менее Fa=100 различающихся записей, при этом каждая найденная запись должна содержать не менее Кт=4 совпадающих вершин.
[0133] Под совпадением вершин в рамках описываемого метода подразумевается принадлежность вершин к одному семейству. Например, вершины A1, А4 и А9 совпадают, а вершины А1 и В1 нет.
[0134] В одной из возможных реализаций описываемого метода для поиска задают также следующее условие: вершины в записи, удовлетворяющей условиям поиска, должны следовать в том же порядке, в котором они следуют в полученной дорожной карте атаки. Иными словами, если в полученной на этапе 231 дорожной карте последовательно встречаются вершины Ах, Вх, Сх, то записи, содержащие последовательности Ах, Сх, Вх или Вх, Ах, Сх при поиске не будут отобраны.
[0135] В другой возможной реализации описываемого метода вышеназванное условие для поиска не задают, и отбирают все записи, содержащие вершины Ах, Вх и Сх, вне зависимости от того порядка, в котором эти вершины встречаются в записи.
[0136] Также возможна реализация описываемого метода, при которой дополнительно задают параметр Р, имеющий смысл максимального количества вершин, которые могут находиться между совпадающими вершинами, например, может быть задан Р=2, при котором в ходе поиска, например, вершин Ах и Вх будут отобраны все записи, в которых присутствуют Ах и Вх и в которых между Ах и Вх могут находиться одна или две вершины, относящиеся к любым семействам.
[0137] Альтернативно, параметр Р может быть задан равным бесконечности, и тогда будут отобраны все записи, содержащие Ах и Вх, вне зависимости от того, сколько и каких вершин между ними находится.
[0138] Применительно к описанию этапа 224 ранее упоминалось, что все образцы ВПО, которые не удалось отнести к определенному семейству, относят к некоторому "общему семейству ВПО". В рамках описываемого метода в ходе поиска 230 дорожной карты атаки, с заданным уровнем точности совпадающей с построенной дорожной картой атаки, "общее семейство ВПО" не используют. Иными словами, если в построенной дорожной карте атаки присутствует вершина графа, относящаяся к "общему семейству", в ходе поиска считают, что этой вершины в графе нет, и предшествующая ей вершина напрямую соединена со следующей за ней.
[0139] В альтернативном варианте реализации описываемого метода "общее семейство ВПО" учитывают аналогично остальным известным семействам.
[0140] По окончании этапа 232 способ переходит к этапу 233, на котором, пользуясь заданными параметрами поиска Fa, Km, Р и полученной дорожной картой атаки, генерируют список поисковых запросов.
[0141] Цель генерации в данном случае заключается в получении такого списка запросов, который охватывал бы полный ансамбль всех возможных сочетаний вершин, присутствующих в полученной дорожной карте атаки с учетом заданных на этапе 232 параметров.
[0142] Пусть, например, применительно к Фиг. 4Б для полученной дорожной карты 400 были заданы параметры:
[0143] - минимальное количество записей, которые нужно найти, F=2,
[0144] - количество совпадающих вершин Km=3,
[0145] - количество других вершин, которые могут находиться между совпадающими вершинами, Р равно бесконечности,
[0146] - следование совпадающих вершин в произвольном порядке не допускается.
[0147] Понятно, что для дорожной карты 400, состоящей из последовательности вершин C7-A5-N2-H8-P3 с учетом заданных условий необходимо будет найти все записи, содержащие следующие сочетания и последовательности вершин:
[0148] CxAxNx, СхАхНх, СхАхРх, CxNxHx, CxNxPx, СхНхРх, AxNxHx, AxNxPx, АхНхРх, NxHxPx.
[0149] В одном из возможных вариантов реализации описываемого метода запросы к базе данных могут быть построены в форме регулярных выражений. Тогда для поиска вышеназванных последовательностей и сочетаний вершин используют следующие регулярные выражения:
[0150] .?Cx.?Ax.?Nx.
[0151]. ?Сх.?Ах.?Нх.
[0152]. ?Сх.?Ах.?Рх.
[0153]. ?Сх.?Ых.?Нх.
[0154]. ?Cx.?Nx.?Px.
[0155]. ?Сх.?Нх.?Рх.
[0156]. ?Ax.?Nx.?Hx.
[0157]. ?Ax.?Nx.?Px.
[0158]. ?Ах.?Нх.?Рх.
[0159]. ?Nx.?Hx.?Px.
[0160] Понятно, что в приводимом примере, в силу относительно малой длины дорожной карты атаки, а также величины параметра Km=3, количество возможных комбинаций поисковых запросов оказывается невелико. При других значениях этих величин количество требуемых комбинаций поисковых запросов может оказаться значительно больше, поэтому генерацию списка запросов выполняют автоматически, посредством заранее подготовленного скрипта, получающего на вход последовательность вершин построенной дорожной карты атаки и величины заданных параметров, таких как Km, а на выходе выдающего полный список всех поисковых запросов, возможных при заданной последовательности вершин и заданных параметрах.
[0161] Алгоритм действия такого скрипта может быть любым общеизвестным, здесь он не приводится в силу очевидности возможных способов решения описанной комбинаторной задачи.
[0162] В других возможных вариантах реализации описываемого метода, в зависимости от архитектуры используемой базы данных и способа организации данных в ней, способа описания полученных карт атаки и т.д. могут быть использованы любые другие способы и синтаксис записи поисковых запросов, которые могут быть построены и сформулированы любым общеизвестным способом.
[0163] По окончании этапа 233 способ переходит к циклическому выполнению этапов 234 и 235. На этапе 234 направляют в базу данных очередной запрос из списка запросов, сгенерированного на этапе 233, в ответ на это получают из базы данных некоторое количество записей, соответствующих данному запросу, и сохраняют полученные записи. Понятно, что в одном частном случае в ответ на очередной запрос может быть получено большее единицы количество записей, в другом частном случае одна запись, в третьем частном случае не будет получено ни одной записи. В любом случае, по завершении этапа 234 на этапе 235 проверяют, достигнут ли конец списка запросов, и если нет, то возвращаются к началу выполнения этапа 234.
[0164] Если на этапе 235 выяснено, что конец списка запросов достигнут, то способ переходит к этапу 236, на котором подсчитывают общее количество записей, полученных и сохраненных на предыдущих этапах 234-235.
[0165] Если это количество оказывается меньше заранее заданного параметра Fa, то есть в ходе поиска не было получено заданное количество записей, то способ переходит к этапу 238, на котором уменьшают значение параметра Km, задающего количество совпадающих вершин. Уменьшают Km, например, на единицу, и возвращаются к этапу генерации списка поисковых запросов 233.
[0166] Если количество полученных записей оказывается больше или равно заранее заданного параметра Fa, то есть получено достаточное количество записей, способ переходит к этапу 237. В альтернативной реализации описываемого способа, как это будет подробно описано ниже, этап 237 не выполняется и способ 230 при получении достаточного количества записей завершается, переходя к этапу 240 (применительно к Фиг. 2).
[0167] На этапе 237 объединяют все найденные записи, с заданным уровнем точности совпадающие с дорожной картой атаки, построенной на этапе 220. Например, применительно к Фиг. 4Б, в ходе поиска записей базы данных, с заданным уровнем точности совпадающих с графом 400, в результате выполнения этапов 233-236 были найдены графы 460 и 470. Как видно из Фиг. 4Б, графы 460 и 470 также описывают разновидности сложной атаки, начинающиеся с запуска эксплойта, эксплуатирующего уязвимость CVE-201711882. Также видно, что как эксплойт 462, так и эксплойт 472 отличаются от входящего в граф 400 эксплойта 410, хотя и принадлежат к тому же семейству.
[0168] Также видно, что после запуска эксплойта 462 атака, описанная графом 460 на протяжение трех шагов развивается иначе, нежели атака, описанная графом 400: последовательно запускаются носители ВПО 464, 465 и 466, принадлежащие к другим, не использованным в исходной атаке семействам ВПО. И лишь на предпоследнем шаге атаки по графу 460 так же, как и в исходной атаке, запускается шифровальщик 468 семейства HabibCrypter (хотя и отличающийся от представителя этого же семейства 440, использованного в исходной атаке), который расшифровывает и запускает основной модуль ВПО 469, так же, как в исходной атаке представляющий собой датастилер семейства Pony (хотя, опять же, не в точности такой, как датастилер 450, использованный в исходной атаке).
[0169] В то же время, сложная атака, описанная графом 470, после запуска эксплойта 472 на протяжение двух шагов развивается похоже на исходную атаку. Последовательно запускаются шифровальщик 473, как и шифровальщик 420, принадлежащий к семейству AtilaCrypter, затем загрузчик 474, как и загрузчик 430, принадлежащий к семейству Nemucod. Однако, затем последовательность атаки по графу 470 изменяется, загружаемые и запускаемые загрузчиком 474 носители ВПО 475, 477 и основной модуль ВПО 479 принадлежат к иным семействам, нежели ВПО использованное в оригинальной сложной атаке по графу 400.
[0170] В результате объединения найденных в базе данных записей 460, 470, получают дорожную карту сложной атаки 490.
[0171] Несложно видеть, что некоторые шаги полученной дорожной карты сложной атаки 490, такие как шаги 494 или 499 в приведенном примере, могут оказаться неоднозначными, так как в разных записях 460, 470 этим шагам соответствуют представители различных семейств ВПО. Применительно к отображению дорожной карты атаки в форме графа, для вершин графа, соответствующих таким неоднозначным шагам, сохраняют несколько значений, где каждое значение соответствует одному семейству ВПО.
[0172] На этом этап 237 завершается, и способ, применительно к Фиг. 3, переходит к описанному выше этапу 240, на котором из базы данных извлекают списки индикаторов компрометации, соответствующие дорожной карте сложной атаки 490.
[0173] В одном из возможных альтернативных вариантов реализации описываемого метода этап 237 не выполняется и дорожную карту сложной атаки, которой соответствует граф 490, не строят. В этом случае после завершения этапа 236, когда найдено достаточное (превышающее величину Fa) количество записей, способ, применительно к Фиг. 2, переходит к описанному выше этапу 240, на котором из базы данных извлекают списки индикаторов компрометации, соответствующие семействам ВПО, перечисленным в найденных записях.
[0174] На Фиг. 5 далее будет представлена общая схема вычислительного устройства 500, обеспечивающего обработку данных, необходимую для реализации заявленного решения.
[0175] В общем случае устройство 500 содержит такие компоненты, как: один или более процессоров 501, по меньшей мере одну память 502, средство хранения данных 503, интерфейсы ввода/вывода 504, средство В/В 505, средства сетевого взаимодействия 506.
[0176] Процессор 501 устройства выполняет основные вычислительные операции, необходимые для функционирования устройства 500 или функциональности одного или более его компонентов. Процессор 501 исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти 502.
[0177] Память 502, как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемую функциональность.
[0178] Средство хранения данных 503 может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средство 503 позволяет выполнять долгосрочное хранение различного вида информации, например, вышеупомянутых документов с наборами данных пользователей, базы данных, содержащих записи измеренных для каждого пользователя временных интервалов, идентификаторов пользователей и т.п.
[0179] Интерфейсы 504 представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, Fire Wire и т.п.
[0180] Выбор интерфейсов 504 зависит от конкретного исполнения устройства 500, которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.
[0181] В качестве средств В/В данных 505 могут использоваться: клавиатура, джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
[0182] Средства сетевого взаимодействия 506 выбираются из устройства, обеспечивающий сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п.С помощью средств 506 обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
[0183] Компоненты устройства 500 сопряжены посредством общей шины передачи данных 510.
[0184] В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.
Claims (25)
1. Компьютерно-реализуемый способ генерации списка индикаторов компрометации, содержащий шаги, на которых:
• получают носитель ВПО, предназначенный для подготовки к запуску и/или запуска по меньшей мере одного основного модуля ВПО,
• строят дорожную карту атаки путем обнаружения дополнительных носителей ВПО и/или основного модуля ВПО и определения последовательности их исполнения, предусмотренной алгоритмом исполнения полученного носителя ВПО,
• определяют принадлежность каждого обнаруженного носителя ВПО или основного модуля ВПО к определенному семейству ВПО,
• составляют для каждого обнаруженного носителя ВПО или основного модуля ВПО список индикаторов компрометации,
• находят в базе данных по меньшей мере одну дорожную карту атаки, характеризующуюся тем, что последовательность запуска носителей ВПО и/или основных модулей ВПО в этой дорожной карте с заданным уровнем точности совпадает с последовательностью запуска носителей ВПО и/или основных модулей ВПО в полученном носителе ВПО, а сами эти носители ВПО и/или основные модули ВПО относятся к тем же семействам,
• извлекают из базы данных списки индикаторов компрометации для каждого носителя ВПО и/или основного модуля ВПО из по меньшей мере одной найденной дорожной карты атаки,
• генерируют общий список индикаторов компрометации на основе составленных списков индикаторов компрометации и извлеченных из базы данных списков объединенных списков индикаторов компрометации,
• сохраняют составленные списки индикаторов компрометации для каждого обнаруженного носителя ВПО или основного модуля ВПО, а также общий список индикаторов компрометации в базе данных.
2. Способ по п. 1, в котором получают носитель ВПО, содержащий по меньшей мере один основной модуль ВПО либо предназначенный для подготовки к запуску по меньшей мере одного основного модуля ВПО, от внешней системы анализа инцидентов компьютерной безопасности.
3. Способ по п. 1, в котором подготовка к запуску и запуск по меньшей мере одного основного модуля ВПО подразумевает запуск по меньшей мере одного дополнительного носителя ВПО, приводимого в действие полученным носителем ВПО.
4. Способ по п. 1, в котором строят дорожную карту атаки, запуская полученный носитель ВПО в изолированной среде и фиксируя последовательность и характер воздействия носителя ВПО на среду.
5. Способ по п. 4, в котором строят дорожную карту атаки в виде графа, вершинами которого являются носители ВПО и/или основные модули ВПО, запуск которых предусмотрен алгоритмом исполнения полученного носителя ВПО, а ребра указывают на последовательность запуска этих носителей ВПО и/или основных модулей ВПО.
6. Способ по п. 1, в котором определяют принадлежность каждого обнаруженного носителя ВПО или основного модуля ВПО, запуск которых предусмотрен алгоритмом исполнения полученного носителя ВПО, к какому-либо семейству ВПО, применяя заранее обученный по меньшей мере один классификатор.
7. Способ по п. 1, в котором составляют список индикаторов компрометации для каждого обнаруженного носителя ВПО или основного модуля ВПО, запуская заранее подготовленную среду, обеспечивающую извлечение индикаторов компрометации из внутренней структуры или кода носителя ВПО и/или основного модуля ВПО, относящегося к определенному семейству ВПО, и сохранение извлеченных индикаторов в виде списка.
8. Способ по п. 1, в котором составляют список индикаторов компрометации для каждого обнаруженного носителя ВПО и/или основного модуля ВПО, запуская полученный носитель ВПО в изолированной среде, выполненной с возможностью сохранения списка изменений состояния среды в качестве списка индикаторов компрометации после исполнения каждого носителя ВПО и/или основного модуля ВПО, запущенного полученным носителем ВПО.
9. Способ по п. 8, в котором составляют список индикаторов компрометации для каждого обнаруженного носителя ВПО и/или модуля ВПО, дополнительно запуская заранее подготовленную среду, обеспечивающую извлечение индикаторов компрометации из внутренней структуры носителя ВПО и/или основного модуля ВПО, относящегося к определенному семейству ВПО, и добавление извлеченных индикаторов в список, составленный после запуска носителя ВПО и/или основного модуля ВПО в изолированной среде.
10. Способ по п. 1, в котором для извлечения из базы данных списков индикаторов компрометации для каждого носителя ВПО и/или основного модуля ВПО из по меньшей мере одной найденной дорожной карты атаки используют алгоритмы нечеткого поиска в базе данных.
11. Способ по п. 1, в котором дополнительно сохраняют в базе данных объединенную дорожную карту атаки, содержащую как построенную дорожную карту атаки, так и по меньшей мере одну найденную дорожную карту атаки.
12. Способ по п. 1, в котором используют регулярные выражения для генерации общего списка индикаторов компрометации из составленного списка индикаторов компрометации и извлеченных из базы данных списков индикаторов компрометации.
13. Способ по п. 1, в котором дополнительно передают общий список индикаторов компрометации во внешнюю систему анализа инцидентов компьютерной безопасности.
14. Система генерации списка индикаторов компрометации, содержащая:
- долговременную память, выполненную с возможностью хранения файлов и данных;
- устройство связи, выполненное с возможностью получения носителей ВПО и передачи данных,
- вычислительное устройство, выполненное с возможностью выполнения способа генерации списка индикаторов компрометации по любому из пп. 1-13.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020126232A RU2743619C1 (ru) | 2020-08-06 | 2020-08-06 | Способ и система генерации списка индикаторов компрометации |
NL2027556A NL2027556B1 (en) | 2020-08-06 | 2021-02-15 | Method and system for generating a list of indicators of compromise |
US17/178,320 US11847223B2 (en) | 2020-08-06 | 2021-02-18 | Method and system for generating a list of indicators of compromise |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020126232A RU2743619C1 (ru) | 2020-08-06 | 2020-08-06 | Способ и система генерации списка индикаторов компрометации |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2743619C1 true RU2743619C1 (ru) | 2021-02-20 |
Family
ID=74665954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2020126232A RU2743619C1 (ru) | 2020-08-06 | 2020-08-06 | Способ и система генерации списка индикаторов компрометации |
Country Status (3)
Country | Link |
---|---|
US (1) | US11847223B2 (ru) |
NL (1) | NL2027556B1 (ru) |
RU (1) | RU2743619C1 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2761542C1 (ru) * | 2021-03-15 | 2021-12-09 | Акционерное общество "Лаборатория Касперского" | Система и способ формирования системы ресурсов-ловушек |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11765195B2 (en) * | 2021-02-16 | 2023-09-19 | Icf International | Distributed network-level probabilistic attack graph generation |
US12135789B2 (en) * | 2021-08-04 | 2024-11-05 | Secureworks Corp. | Systems and methods of attack type and likelihood prediction |
US12034751B2 (en) | 2021-10-01 | 2024-07-09 | Secureworks Corp. | Systems and methods for detecting malicious hands-on-keyboard activity via machine learning |
US12015623B2 (en) | 2022-06-24 | 2024-06-18 | Secureworks Corp. | Systems and methods for consensus driven threat intelligence |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190230098A1 (en) * | 2018-01-22 | 2019-07-25 | T-Mobile Usa, Inc. | Indicator of compromise calculation system |
RU2702269C1 (ru) * | 2019-06-04 | 2019-10-07 | Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) | Система интеллектуального управления киберугрозами |
US10467411B1 (en) * | 2013-12-26 | 2019-11-05 | Fireeye, Inc. | System and method for generating a malware identifier |
US20200092306A1 (en) * | 2018-09-14 | 2020-03-19 | Cisco Technology, Inc. | Automated creation of lightweight behavioral indicators of compromise (iocs) |
Family Cites Families (224)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7389351B2 (en) | 2001-03-15 | 2008-06-17 | Microsoft Corporation | System and method for identifying and establishing preferred modalities or channels for communications based on participants' preferences and contexts |
US7565692B1 (en) | 2000-05-30 | 2009-07-21 | At&T Wireless Services, Inc. | Floating intrusion detection platforms |
ATE344573T1 (de) | 2000-11-30 | 2006-11-15 | Lancope Inc | Flussbasierte erfassung eines eindringens in ein netzwerk |
US6928434B1 (en) | 2001-01-31 | 2005-08-09 | Rosetta Marketing Strategies Group | Method and system for clustering optimization and applications |
US7325252B2 (en) | 2001-05-18 | 2008-01-29 | Achilles Guard Inc. | Network security testing |
US20090138342A1 (en) | 2001-11-14 | 2009-05-28 | Retaildna, Llc | Method and system for providing an employee award using artificial intelligence |
US7114185B2 (en) | 2001-12-26 | 2006-09-26 | Mcafee, Inc. | Identifying malware containing computer files using embedded text |
US7225343B1 (en) | 2002-01-25 | 2007-05-29 | The Trustees Of Columbia University In The City Of New York | System and methods for adaptive model generation for detecting intrusions in computer systems |
US8132250B2 (en) | 2002-03-08 | 2012-03-06 | Mcafee, Inc. | Message profiling systems and methods |
EP1349081A1 (en) | 2002-03-28 | 2003-10-01 | LION Bioscience AG | Method and apparatus for querying relational databases |
US7496628B2 (en) | 2003-02-25 | 2009-02-24 | Susquehanna International Group, Llp | Electronic message filter |
US20040221171A1 (en) | 2003-05-02 | 2004-11-04 | Ahmed Ahmed Awad E. | Intrusion detector based on mouse dynamics analysis |
US8990928B1 (en) | 2003-12-11 | 2015-03-24 | Radix Holdings, Llc | URL salience |
US7392278B2 (en) | 2004-01-23 | 2008-06-24 | Microsoft Corporation | Building and using subwebs for focused search |
US8561177B1 (en) | 2004-04-01 | 2013-10-15 | Fireeye, Inc. | Systems and methods for detecting communication channels of bots |
US8528086B1 (en) | 2004-04-01 | 2013-09-03 | Fireeye, Inc. | System and method of detecting computer worms |
US8881282B1 (en) | 2004-04-01 | 2014-11-04 | Fireeye, Inc. | Systems and methods for malware attack detection and identification |
US8539582B1 (en) | 2004-04-01 | 2013-09-17 | Fireeye, Inc. | Malware containment and security analysis on connection |
US7953814B1 (en) | 2005-02-28 | 2011-05-31 | Mcafee, Inc. | Stopping and remediating outbound messaging abuse |
US7908653B2 (en) | 2004-06-29 | 2011-03-15 | Intel Corporation | Method of improving computer security through sandboxing |
US8037535B2 (en) | 2004-08-13 | 2011-10-11 | Georgetown University | System and method for detecting malicious executable code |
WO2006032028A2 (en) | 2004-09-13 | 2006-03-23 | Reactivity, Inc. | Metric-based monitoring and control of a limited resource |
US7540025B2 (en) | 2004-11-18 | 2009-05-26 | Cisco Technology, Inc. | Mitigating network attacks using automatic signature generation |
GB2425622A (en) | 2005-04-27 | 2006-11-01 | Ncapsa Ltd | Programming real-time systems using data flow diagrams |
US20060253582A1 (en) | 2005-05-03 | 2006-11-09 | Dixon Christopher J | Indicating website reputations within search results |
CA2607005C (en) | 2005-05-05 | 2012-02-07 | Ironport Systems, Inc. | Identifying threats in electronic messages |
US7609625B2 (en) | 2005-07-06 | 2009-10-27 | Fortinet, Inc. | Systems and methods for detecting and preventing flooding attacks in a network environment |
US7730040B2 (en) | 2005-07-27 | 2010-06-01 | Microsoft Corporation | Feedback-driven malware detector |
US7707284B2 (en) | 2005-08-03 | 2010-04-27 | Novell, Inc. | System and method of searching for classifying user activity performed on a computer system |
KR20070049514A (ko) | 2005-11-08 | 2007-05-11 | 한국정보보호진흥원 | 악성 코드 감시 시스템 및 이를 이용한 감시 방법 |
US8650080B2 (en) | 2006-04-10 | 2014-02-11 | International Business Machines Corporation | User-browser interaction-based fraud detection system |
CA2648997A1 (en) | 2006-04-13 | 2007-10-25 | Art Of Defence Gmbh | Method for providing web application security |
US7984500B1 (en) | 2006-10-05 | 2011-07-19 | Amazon Technologies, Inc. | Detecting fraudulent activity by analysis of information requests |
US20080172651A1 (en) | 2007-01-15 | 2008-07-17 | Microsoft Corporation | Applying Function Level Ownership to Test Metrics |
US7865953B1 (en) | 2007-05-31 | 2011-01-04 | Trend Micro Inc. | Methods and arrangement for active malicious web pages discovery |
US8238669B2 (en) | 2007-08-22 | 2012-08-07 | Google Inc. | Detection and classification of matches between time-based media |
US7958555B1 (en) | 2007-09-28 | 2011-06-07 | Trend Micro Incorporated | Protecting computer users from online frauds |
US9779403B2 (en) | 2007-12-07 | 2017-10-03 | Jpmorgan Chase Bank, N.A. | Mobile fraud prevention system and method |
WO2009106998A1 (en) | 2008-02-28 | 2009-09-03 | Ipharro Media Gmbh | Frame sequence comparison in multimedia streams |
US8082187B2 (en) | 2008-05-07 | 2011-12-20 | AcademixDirect, Inc. | Method of generating a referral website URL using website listings in a cookie |
US8856937B1 (en) | 2008-06-27 | 2014-10-07 | Symantec Corporation | Methods and systems for identifying fraudulent websites |
US10027688B2 (en) | 2008-08-11 | 2018-07-17 | Damballa, Inc. | Method and system for detecting malicious and/or botnet-related domain names |
US8086480B2 (en) | 2008-09-25 | 2011-12-27 | Ebay Inc. | Methods and systems for activity-based recommendations |
US9177144B2 (en) | 2008-10-30 | 2015-11-03 | Mcafee, Inc. | Structural recognition of malicious code patterns |
US8850571B2 (en) | 2008-11-03 | 2014-09-30 | Fireeye, Inc. | Systems and methods for detecting malicious network content |
US8285830B1 (en) | 2009-01-06 | 2012-10-09 | Citizenhawk, Inc. | System and method for combating cybersquatting |
US8448245B2 (en) | 2009-01-17 | 2013-05-21 | Stopthehacker.com, Jaal LLC | Automated identification of phishing, phony and malicious web sites |
US8695091B2 (en) | 2009-02-11 | 2014-04-08 | Sophos Limited | Systems and methods for enforcing policies for proxy website detection using advertising account ID |
US8429751B2 (en) | 2009-03-13 | 2013-04-23 | Trustwave Holdings, Inc. | Method and apparatus for phishing and leeching vulnerability detection |
US8229219B1 (en) | 2009-08-06 | 2012-07-24 | Google Inc. | Full-length video fingerprinting |
US8600993B1 (en) | 2009-08-26 | 2013-12-03 | Google Inc. | Determining resource attributes from site address attributes |
US8396857B2 (en) | 2009-08-31 | 2013-03-12 | Accenture Global Services Limited | System to modify websites for organic search optimization |
RU91213U1 (ru) | 2009-10-01 | 2010-01-27 | ЗАО "Лаборатория Касперского" | Система автоматического составления описания и кластеризации различных, в том числе и вредоносных, объектов |
EP2323046A1 (en) | 2009-10-16 | 2011-05-18 | Telefónica, S.A. | Method for detecting audio and video copy in multimedia streams |
US8625033B1 (en) | 2010-02-01 | 2014-01-07 | Google Inc. | Large-scale matching of audio and video |
US9501644B2 (en) | 2010-03-15 | 2016-11-22 | F-Secure Oyj | Malware protection |
US8612463B2 (en) | 2010-06-03 | 2013-12-17 | Palo Alto Research Center Incorporated | Identifying activities using a hybrid user-activity model |
US8260914B1 (en) | 2010-06-22 | 2012-09-04 | Narus, Inc. | Detecting DNS fast-flux anomalies |
RU2446459C1 (ru) | 2010-07-23 | 2012-03-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ проверки веб-ресурсов на наличие вредоносных компонент |
CA2806699A1 (en) | 2010-07-26 | 2012-02-02 | Ki Yong Kim | Hacker virus security-integrated control device |
US8924488B2 (en) | 2010-07-27 | 2014-12-30 | At&T Intellectual Property I, L.P. | Employing report ratios for intelligent mobile messaging classification and anti-spam defense |
EP2609538B1 (en) | 2010-08-25 | 2016-10-19 | Lookout Inc. | System and method for server-coupled malware prevention |
AU2011293160B2 (en) | 2010-08-26 | 2015-04-09 | Verisign, Inc. | Method and system for automatic detection and analysis of malware |
US8837769B2 (en) | 2010-10-06 | 2014-09-16 | Futurewei Technologies, Inc. | Video signature based on image hashing and shot detection |
US9626677B2 (en) | 2010-11-29 | 2017-04-18 | Biocatch Ltd. | Identification of computerized bots, and identification of automated cyber-attack modules |
US8521667B2 (en) | 2010-12-15 | 2013-08-27 | Microsoft Corporation | Detection and categorization of malicious URLs |
CN102082792A (zh) | 2010-12-31 | 2011-06-01 | 成都市华为赛门铁克科技有限公司 | 钓鱼网页检测方法及设备 |
KR101556714B1 (ko) * | 2011-01-03 | 2015-10-02 | 네이버 주식회사 | 검색결과 제공 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 |
US8972412B1 (en) | 2011-01-31 | 2015-03-03 | Go Daddy Operating Company, LLC | Predicting improvement in website search engine rankings based upon website linking relationships |
US8726376B2 (en) | 2011-03-11 | 2014-05-13 | Openet Telecom Ltd. | Methods, systems and devices for the detection and prevention of malware within a network |
US8402543B1 (en) | 2011-03-25 | 2013-03-19 | Narus, Inc. | Machine learning based botnet detection with dynamic adaptation |
RU107616U1 (ru) | 2011-03-28 | 2011-08-20 | Закрытое акционерное общество "Лаборатория Касперского" | Система быстрого анализа потока данных на наличие вредоносных объектов |
US9363278B2 (en) | 2011-05-11 | 2016-06-07 | At&T Mobility Ii Llc | Dynamic and selective response to cyber attack for telecommunications carrier networks |
US8151341B1 (en) | 2011-05-23 | 2012-04-03 | Kaspersky Lab Zao | System and method for reducing false positives during detection of network attacks |
US8555388B1 (en) | 2011-05-24 | 2013-10-08 | Palo Alto Networks, Inc. | Heuristic botnet detection |
WO2013009713A2 (en) | 2011-07-08 | 2013-01-17 | Uab Research Foundation | Syntactical fingerprinting |
WO2013008778A1 (ja) | 2011-07-11 | 2013-01-17 | Mizunuma Takeshi | 識別名管理方法およびシステム |
GB2493514B (en) | 2011-08-02 | 2015-04-08 | Qatar Foundation | Copy detection |
CN102930206B (zh) | 2011-08-09 | 2015-02-25 | 腾讯科技(深圳)有限公司 | 病毒文件的聚类划分处理方法和装置 |
US8677472B1 (en) | 2011-09-27 | 2014-03-18 | Emc Corporation | Multi-point collection of behavioral data relating to a virtualized browsing session with a secure server |
US8645355B2 (en) | 2011-10-21 | 2014-02-04 | Google Inc. | Mapping Uniform Resource Locators of different indexes |
US8584235B2 (en) | 2011-11-02 | 2013-11-12 | Bitdefender IPR Management Ltd. | Fuzzy whitelisting anti-malware systems and methods |
US9519781B2 (en) | 2011-11-03 | 2016-12-13 | Cyphort Inc. | Systems and methods for virtualization and emulation assisted malware detection |
RU2487406C1 (ru) | 2011-11-24 | 2013-07-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ обнаружения вредоносных объектов, распространяемых через пиринговые сети |
US8660296B1 (en) | 2012-01-10 | 2014-02-25 | Google Inc. | Systems and methods for facilitating video fingerprinting using local descriptors |
US9519782B2 (en) | 2012-02-24 | 2016-12-13 | Fireeye, Inc. | Detecting malicious network content |
US9111090B2 (en) | 2012-04-02 | 2015-08-18 | Trusteer, Ltd. | Detection of phishing attempts |
RU2523114C2 (ru) | 2012-04-06 | 2014-07-20 | Закрытое акционерное общество "Лаборатория Касперского" | Способ анализа вредоносной активности в сети интернет, выявления вредоносных узлов сети и ближайших узлов-посредников |
US10304036B2 (en) | 2012-05-07 | 2019-05-28 | Nasdaq, Inc. | Social media profiling for one or more authors using one or more social media platforms |
RU2488880C1 (ru) | 2012-05-11 | 2013-07-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ адаптивной оптимизации проверки потока данных, передающихся по сети, на наличие угроз |
US8683595B1 (en) | 2012-06-13 | 2014-03-25 | Symantec Corporation | Systems and methods for detecting potentially malicious content within near field communication messages |
US9154517B2 (en) | 2012-06-19 | 2015-10-06 | AO Kaspersky Lab | System and method for preventing spread of malware in peer-to-peer network |
EP2877956B1 (en) | 2012-07-24 | 2019-07-17 | Webroot Inc. | System and method to provide automatic classification of phishing sites |
RU2495486C1 (ru) | 2012-08-10 | 2013-10-10 | Закрытое акционерное общество "Лаборатория Касперского" | Способ анализа и выявления вредоносных промежуточных узлов в сети |
CN103679012A (zh) | 2012-09-03 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 一种可移植可执行文件的聚类方法和装置 |
CN103685174B (zh) | 2012-09-07 | 2016-12-21 | 中国科学院计算机网络信息中心 | 一种不依赖样本的钓鱼网站检测方法 |
US9386030B2 (en) | 2012-09-18 | 2016-07-05 | Vencore Labs, Inc. | System and method for correlating historical attacks with diverse indicators to generate indicator profiles for detecting and predicting future network attacks |
US11126720B2 (en) | 2012-09-26 | 2021-09-21 | Bluvector, Inc. | System and method for automated machine-learning, zero-day malware detection |
US9215239B1 (en) | 2012-09-28 | 2015-12-15 | Palo Alto Networks, Inc. | Malware detection based on traffic analysis |
US10965775B2 (en) | 2012-11-20 | 2021-03-30 | Airbnb, Inc. | Discovering signature of electronic social networks |
CN103020494B (zh) | 2012-12-03 | 2015-06-24 | 哈尔滨工业大学 | 一种利用程序代码编程模式著作权归属检测模型检测著作权归属的方法 |
RU2536664C2 (ru) | 2012-12-25 | 2014-12-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ автоматической модификации антивирусной базы данных |
RU2530210C2 (ru) | 2012-12-25 | 2014-10-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ выявления вредоносных программ, препятствующих штатному взаимодействию пользователя с интерфейсом операционной системы |
RU2522019C1 (ru) | 2012-12-25 | 2014-07-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ обнаружения угроз в коде, исполняемом виртуальной машиной |
RU129279U1 (ru) | 2013-01-09 | 2013-06-20 | ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "МФИ Софт" | Устройство обнаружения и защиты от аномальной активности на сети передачи данных |
US20140201208A1 (en) | 2013-01-15 | 2014-07-17 | Corporation Symantec | Classifying Samples Using Clustering |
US9165142B1 (en) | 2013-01-30 | 2015-10-20 | Palo Alto Networks, Inc. | Malware family identification using profile signatures |
US20160127402A1 (en) | 2014-11-04 | 2016-05-05 | Patternex, Inc. | Method and apparatus for identifying and detecting threats to an enterprise or e-commerce system |
US10425429B2 (en) | 2013-04-10 | 2019-09-24 | Gabriel Bassett | System and method for cyber security analysis and human behavior prediction |
GB201306628D0 (en) | 2013-04-11 | 2013-05-29 | F Secure Oyj | Detecting and marking client devices |
US20160055490A1 (en) | 2013-04-11 | 2016-02-25 | Brandshield Ltd. | Device, system, and method of protecting brand names and domain names |
WO2014184711A2 (en) | 2013-05-13 | 2014-11-20 | Yandex Europe Ag | Method of and system for providing a client device with an automatic update of an ip address associated with a domain name |
US9357469B2 (en) | 2013-05-29 | 2016-05-31 | Rivada Networks, Llc | Methods and system for dynamic spectrum arbitrage with mobility management |
US9443075B2 (en) | 2013-06-27 | 2016-09-13 | The Mitre Corporation | Interception and policy application for malicious communications |
RU2580036C2 (ru) | 2013-06-28 | 2016-04-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ создания гибкой свертки для обнаружения вредоносных программ |
CN103368958A (zh) | 2013-07-05 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 一种网页检测方法、装置和系统 |
RU2538292C1 (ru) | 2013-07-24 | 2015-01-10 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Способ обнаружения компьютерных атак на сетевую компьютерную систему |
KR102120823B1 (ko) | 2013-08-14 | 2020-06-09 | 삼성전자주식회사 | 비휘발성 메모리 장치의 독출 시퀀스 제어 방법 및 이를 수행하는 메모리 시스템 |
US9330258B1 (en) | 2013-09-30 | 2016-05-03 | Symantec Corporation | Systems and methods for identifying uniform resource locators that link to potentially malicious resources |
CN103491205B (zh) | 2013-09-30 | 2016-08-17 | 北京奇虎科技有限公司 | 一种基于视频搜索的关联资源地址的推送方法和装置 |
BR112016007145A8 (pt) | 2013-10-21 | 2020-03-03 | Microsoft Technology Licensing Llc | método para pesquisar áudio-vídeo em camada, método para construir um índice de áudio-vídeo em camada, sistema, meio legível por computador, dispositivo móvel e dispositivo de computação |
GB2520987B (en) | 2013-12-06 | 2016-06-01 | Cyberlytic Ltd | Using fuzzy logic to assign a risk level profile to a potential cyber threat |
IN2013CH05744A (ru) | 2013-12-12 | 2015-06-19 | Infosys Ltd | |
US20150363791A1 (en) | 2014-01-10 | 2015-12-17 | Hybrid Application Security Ltd. | Business action based fraud detection system and method |
US9060018B1 (en) | 2014-02-05 | 2015-06-16 | Pivotal Software, Inc. | Finding command and control center computers by communication link tracking |
US9262635B2 (en) | 2014-02-05 | 2016-02-16 | Fireeye, Inc. | Detection efficacy of virtual machine-based analysis with application specific events |
US9389852B2 (en) | 2014-02-13 | 2016-07-12 | Infosys Limited | Technique for plagiarism detection in program source code files based on design pattern |
US9769189B2 (en) | 2014-02-21 | 2017-09-19 | Verisign, Inc. | Systems and methods for behavior-based automated malware analysis and classification |
KR101514984B1 (ko) | 2014-03-03 | 2015-04-24 | (주)엠씨알시스템 | 홈페이지 악성코드 유포 탐지 시스템 및 방법 |
US9338181B1 (en) | 2014-03-05 | 2016-05-10 | Netflix, Inc. | Network security system with remediation based on value of attacked assets |
RU2543564C1 (ru) | 2014-03-20 | 2015-03-10 | Закрытое акционерное общество "Научно-производственное предприятие "Информационные технологии в бизнесе" | Система обнаружения и предотвращения вторжений на основе контроля доступа к ресурсам |
US9223972B1 (en) | 2014-03-31 | 2015-12-29 | Fireeye, Inc. | Dynamically remote tuning of a malware content detection system |
US9853997B2 (en) | 2014-04-14 | 2017-12-26 | Drexel University | Multi-channel change-point malware detection |
US9015814B1 (en) | 2014-06-10 | 2015-04-21 | Kaspersky Lab Zao | System and methods for detecting harmful files of different formats |
US9332022B1 (en) | 2014-07-07 | 2016-05-03 | Symantec Corporation | Systems and methods for detecting suspicious internet addresses |
US9800592B2 (en) | 2014-08-04 | 2017-10-24 | Microsoft Technology Licensing, Llc | Data center architecture that supports attack detection and mitigation |
US20160036837A1 (en) | 2014-08-04 | 2016-02-04 | Microsoft Corporation | Detecting attacks on data centers |
US9942250B2 (en) | 2014-08-06 | 2018-04-10 | Norse Networks, Inc. | Network appliance for dynamic protection from risky network activities |
US20160057159A1 (en) * | 2014-08-22 | 2016-02-25 | Syracuse University | Semantics-aware android malware classification |
US9716721B2 (en) | 2014-08-29 | 2017-07-25 | Accenture Global Services Limited | Unstructured security threat information analysis |
KR101587161B1 (ko) | 2014-09-03 | 2016-01-20 | 한국전자통신연구원 | 실시간 네트워크 안티바이러스 수행 장치 및 방법 |
US9026841B1 (en) | 2014-09-09 | 2015-05-05 | Belkin International, Inc. | Coordinated and device-distributed detection of abnormal network device operation |
RU2589310C2 (ru) | 2014-09-30 | 2016-07-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ расчета интервала повторного определения категорий сетевого ресурса |
WO2016064919A1 (en) | 2014-10-21 | 2016-04-28 | Abramowitz Marc Lauren | Dynamic security rating for cyber insurance products |
US10338191B2 (en) | 2014-10-30 | 2019-07-02 | Bastille Networks, Inc. | Sensor mesh and signal transmission architectures for electromagnetic signature analysis |
US9197665B1 (en) | 2014-10-31 | 2015-11-24 | Cyberpoint International Llc | Similarity search and malware prioritization |
US9792289B2 (en) | 2014-11-07 | 2017-10-17 | Semandex Networks Inc. | Systems and methods for file clustering, multi-drive forensic analysis and data protection |
JP6916112B2 (ja) | 2014-11-21 | 2021-08-11 | ブルヴェクター, インコーポレーテッドBluvector, Inc. | ネットワークデータ特性評価のシステムと方法 |
US10574675B2 (en) | 2014-12-05 | 2020-02-25 | T-Mobile Usa, Inc. | Similarity search for discovering multiple vector attacks |
US9367872B1 (en) | 2014-12-22 | 2016-06-14 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US9934376B1 (en) | 2014-12-29 | 2018-04-03 | Fireeye, Inc. | Malware detection appliance architecture |
US10230526B2 (en) | 2014-12-31 | 2019-03-12 | William Manning | Out-of-band validation of domain name system records |
CN104504307B (zh) | 2015-01-08 | 2017-09-29 | 北京大学 | 基于拷贝单元的音视频拷贝检测方法和装置 |
US9712549B2 (en) | 2015-01-08 | 2017-07-18 | Imam Abdulrahman Bin Faisal University | System, apparatus, and method for detecting home anomalies |
KR20160095856A (ko) | 2015-02-04 | 2016-08-12 | 한국전자통신연구원 | 새로운 공격 유형의 자동 탐지 및 공격 유형 모델 갱신을 통한 지능형 침입 탐지 시스템 및 방법 |
US11328307B2 (en) | 2015-02-24 | 2022-05-10 | OpSec Online, Ltd. | Brand abuse monitoring system with infringement detection engine and graphical user interface |
EP3065076A1 (en) | 2015-03-04 | 2016-09-07 | Secure-Nok AS | System and method for responding to a cyber-attack-related incident against an industrial control system |
US9253208B1 (en) | 2015-03-05 | 2016-02-02 | AO Kaspersky Lab | System and method for automated phishing detection rule evolution |
US9769201B2 (en) | 2015-03-06 | 2017-09-19 | Radware, Ltd. | System and method thereof for multi-tiered mitigation of cyber-attacks |
US9712553B2 (en) | 2015-03-27 | 2017-07-18 | The Boeing Company | System and method for developing a cyber-attack scenario |
US9712554B2 (en) | 2015-04-09 | 2017-07-18 | Accenture Global Services Limited | Event correlation across heterogeneous operations |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US10382484B2 (en) | 2015-06-08 | 2019-08-13 | Illusive Networks Ltd. | Detecting attackers who target containerized clusters |
US9917852B1 (en) | 2015-06-29 | 2018-03-13 | Palo Alto Networks, Inc. | DGA behavior detection |
RU164629U1 (ru) | 2015-06-30 | 2016-09-10 | Акционерное общество "Институт точной механики и вычислительной техники имени С.А. Лебедева Российской академии наук" | Электронный модуль защиты от сетевых атак на базе сетевого процессора np-5 |
RU2614557C2 (ru) | 2015-06-30 | 2017-03-28 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ обнаружения вредоносных файлов на мобильных устройствах |
EP3125147B1 (en) | 2015-07-27 | 2020-06-03 | Swisscom AG | System and method for identifying a phishing website |
US9456000B1 (en) | 2015-08-06 | 2016-09-27 | Palantir Technologies Inc. | Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications |
CN106506435B (zh) | 2015-09-08 | 2019-08-06 | 中国电信股份有限公司 | 用于检测网络攻击的方法和防火墙系统 |
WO2017049045A1 (en) | 2015-09-16 | 2017-03-23 | RiskIQ, Inc. | Using hash signatures of dom objects to identify website similarity |
KR101703446B1 (ko) | 2015-10-15 | 2017-02-06 | 숭실대학교산학협력단 | DoS 공격의 탐지가 가능한 네트워크 및 이의 제어 방법과, 상기 네트워크에 포함되는 게이트웨이 및 관리 서버 |
CN105429956B (zh) | 2015-11-02 | 2018-09-25 | 重庆大学 | 基于p2p动态云的恶意软件检测系统及方法 |
US10200382B2 (en) | 2015-11-05 | 2019-02-05 | Radware, Ltd. | System and method for detecting abnormal traffic behavior using infinite decaying clusters |
US9894036B2 (en) | 2015-11-17 | 2018-02-13 | Cyber Adapt, Inc. | Cyber threat attenuation using multi-source threat data analysis |
RU2622870C2 (ru) | 2015-11-17 | 2017-06-20 | Общество с ограниченной ответственностью "САЙТСЕКЬЮР" | Система и способ оценки опасности веб-сайтов |
CN106709777A (zh) | 2015-11-18 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种订单聚类方法及装置,以及反恶意信息的方法及装置 |
US10594710B2 (en) | 2015-11-20 | 2020-03-17 | Webroot Inc. | Statistical analysis of network behavior using event vectors to identify behavioral anomalies using a composite score |
RU2613535C1 (ru) | 2015-11-20 | 2017-03-16 | Илья Самуилович Рабинович | Способ обнаружения вредоносных программ и элементов |
US10193906B2 (en) * | 2015-12-09 | 2019-01-29 | Checkpoint Software Technologies Ltd. | Method and system for detecting and remediating polymorphic attacks across an enterprise |
JP6239215B2 (ja) | 2015-12-14 | 2017-11-29 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
WO2017111835A1 (en) | 2015-12-26 | 2017-06-29 | Intel Corporation | Binary linear classification |
US9723344B1 (en) | 2015-12-29 | 2017-08-01 | Google Inc. | Early detection of policy violating media |
US11069370B2 (en) | 2016-01-11 | 2021-07-20 | University Of Tennessee Research Foundation | Tampering detection and location identification of digital audio recordings |
KR102582580B1 (ko) | 2016-01-19 | 2023-09-26 | 삼성전자주식회사 | 악성 코드 분석을 위한 전자 장치 및 이의 방법 |
RU2628192C2 (ru) | 2016-01-27 | 2017-08-15 | Акционерное общество "Творческо-производственное объединение "Центральная киностудия детских и юношеских фильмов им. М. Горького" | Устройство для семантической классификации и поиска в архивах оцифрованных киноматериалов |
US9900338B2 (en) | 2016-02-09 | 2018-02-20 | International Business Machines Corporation | Forecasting and classifying cyber-attacks using neural embeddings based on pattern of life data |
US10200390B2 (en) | 2016-02-29 | 2019-02-05 | Palo Alto Networks, Inc. | Automatically determining whether malware samples are similar |
CA3015697C (en) | 2016-02-29 | 2022-11-22 | Securekey Technologies Inc. | Systems and methods for distributed identity verification |
US10230749B1 (en) | 2016-02-29 | 2019-03-12 | Palo Alto Networks, Inc. | Automatically grouping malware based on artifacts |
US10063572B2 (en) | 2016-03-28 | 2018-08-28 | Accenture Global Solutions Limited | Antivirus signature distribution with distributed ledger |
US10313382B2 (en) | 2016-03-29 | 2019-06-04 | The Mitre Corporation | System and method for visualizing and analyzing cyber-attacks using a graph model |
US10212145B2 (en) | 2016-04-06 | 2019-02-19 | Avaya Inc. | Methods and systems for creating and exchanging a device specific blockchain for device authentication |
US10178107B2 (en) | 2016-04-06 | 2019-01-08 | Cisco Technology, Inc. | Detection of malicious domains using recurring patterns in domain names |
CN105897714B (zh) | 2016-04-11 | 2018-11-09 | 天津大学 | 基于dns流量特征的僵尸网络检测方法 |
RU2625050C1 (ru) | 2016-04-25 | 2017-07-11 | Акционерное общество "Лаборатория Касперского" | Система и способ признания транзакций доверенными |
US11223598B2 (en) | 2016-05-03 | 2022-01-11 | Nokia Of America Corporation | Internet security |
RU2634211C1 (ru) | 2016-07-06 | 2017-10-24 | Общество с ограниченной ответственностью "Траст" | Способ и система анализа протоколов взаимодействия вредоносных программ с центрами управления и выявления компьютерных атак |
RU2636702C1 (ru) | 2016-07-07 | 2017-11-27 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и устройство для выбора сетевого ресурса в качестве источника содержимого для системы рекомендаций |
US20180012144A1 (en) | 2016-07-11 | 2018-01-11 | Qualcomm Innovation Center, Inc. | Incremental and speculative analysis of javascripts based on a multi-instance model for web security |
CN106131016B (zh) | 2016-07-13 | 2019-05-03 | 北京知道创宇信息技术有限公司 | 恶意url检测干预方法、系统及装置 |
US10212133B2 (en) | 2016-07-29 | 2019-02-19 | ShieldX Networks, Inc. | Accelerated pattern matching using pattern functions |
WO2018025157A1 (en) | 2016-07-31 | 2018-02-08 | Cymmetria, Inc. | Deploying deception campaigns using communication breadcrumbs |
US10498761B2 (en) | 2016-08-23 | 2019-12-03 | Duo Security, Inc. | Method for identifying phishing websites and hindering associated activity |
US10313352B2 (en) | 2016-10-26 | 2019-06-04 | International Business Machines Corporation | Phishing detection with machine learning |
WO2018095192A1 (zh) | 2016-11-23 | 2018-05-31 | 腾讯科技(深圳)有限公司 | 网站攻击的检测和防护方法及系统 |
TWI622894B (zh) | 2016-12-13 | 2018-05-01 | 宏碁股份有限公司 | 電子裝置及偵測惡意檔案的方法 |
CN106713312A (zh) | 2016-12-21 | 2017-05-24 | 深圳市深信服电子科技有限公司 | 检测非法域名的方法及装置 |
US10783247B1 (en) | 2017-02-21 | 2020-09-22 | Triad National Security, Llc | Software classification using phylogenetic techniques |
RU2654146C1 (ru) | 2017-06-16 | 2018-05-16 | Акционерное общество "Лаборатория Касперского" | Система и способ обнаружения вредоносных файлов с использованием элементов статического анализа |
CN107392019A (zh) | 2017-07-05 | 2017-11-24 | 北京金睛云华科技有限公司 | 一种恶意代码家族的训练和检测方法及装置 |
WO2019010182A1 (en) | 2017-07-06 | 2019-01-10 | Pixm | METHOD AND SYSTEM FOR DETECTING HOOKING |
CN107392456A (zh) | 2017-07-14 | 2017-11-24 | 武汉理工大学 | 一种融合互联网信息的多角度企业信用评估建模方法 |
US10546143B1 (en) | 2017-08-10 | 2020-01-28 | Support Intelligence, Inc. | System and method for clustering files and assigning a maliciousness property based on clustering |
RU2679785C1 (ru) | 2017-10-18 | 2019-02-12 | Акционерное общество "Лаборатория Касперского" | Система и способ классификации объектов |
RU2670906C9 (ru) | 2017-12-28 | 2018-12-12 | Общество С Ограниченной Ответственностью "Центр Разработки И Внедрения Инновационных Технологий" | Самонастраивающаяся интерактивная система, способ обмена сообщениями и/или звонками между пользователями различных веб-сайтов с использованием технологии клиент-сервер и считываемый компьютером носитель |
RU2681699C1 (ru) | 2018-02-13 | 2019-03-12 | Общество с ограниченной ответственностью "Траст" | Способ и сервер для поиска связанных сетевых ресурсов |
RU2706896C1 (ru) | 2018-06-29 | 2019-11-21 | Акционерное общество "Лаборатория Касперского" | Система и способ выявления вредоносных файлов с использованием модели обучения, обученной на одном вредоносном файле |
RU2706883C1 (ru) | 2018-06-29 | 2019-11-21 | Акционерное общество "Лаборатория Касперского" | Система и способ снижения количества ложных срабатываний классифицирующих алгоритмов |
RU2708356C1 (ru) | 2018-06-29 | 2019-12-05 | Акционерное общество "Лаборатория Касперского" | Система и способ двухэтапной классификации файлов |
US10990674B2 (en) * | 2018-08-28 | 2021-04-27 | AlienVault, Inc. | Malware clustering based on function call graph similarity |
GB2588745B (en) | 2018-11-19 | 2021-11-03 | Sophos Ltd | Deferred malware scanning |
RU2728497C1 (ru) | 2019-12-05 | 2020-07-29 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Способ и система определения принадлежности программного обеспечения по его машинному коду |
RU2728498C1 (ru) | 2019-12-05 | 2020-07-29 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Способ и система определения принадлежности программного обеспечения по его исходному коду |
RU2738344C1 (ru) | 2020-03-10 | 2020-12-11 | Общество с ограниченной ответственностью «Группа АйБи ТДС» | Способ и система поиска схожих вредоносных программ по результатам их динамического анализа |
-
2020
- 2020-08-06 RU RU2020126232A patent/RU2743619C1/ru active
-
2021
- 2021-02-15 NL NL2027556A patent/NL2027556B1/en active
- 2021-02-18 US US17/178,320 patent/US11847223B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10467411B1 (en) * | 2013-12-26 | 2019-11-05 | Fireeye, Inc. | System and method for generating a malware identifier |
US20190230098A1 (en) * | 2018-01-22 | 2019-07-25 | T-Mobile Usa, Inc. | Indicator of compromise calculation system |
US20200092306A1 (en) * | 2018-09-14 | 2020-03-19 | Cisco Technology, Inc. | Automated creation of lightweight behavioral indicators of compromise (iocs) |
RU2702269C1 (ru) * | 2019-06-04 | 2019-10-07 | Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) | Система интеллектуального управления киберугрозами |
Non-Patent Citations (1)
Title |
---|
Lauren Rudman et al. "Dridex: Analysis of the traffic and automatic generation of IOCs", опубл. 19.02.2019 на 8 страницах [найдено 28.01.2021], размещено в Интернет по адресу URL:https://digifors.cs.up.ac.za/issa/2016/Proceedings/Full/paper%2041.pdf. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2761542C1 (ru) * | 2021-03-15 | 2021-12-09 | Акционерное общество "Лаборатория Касперского" | Система и способ формирования системы ресурсов-ловушек |
Also Published As
Publication number | Publication date |
---|---|
US20220043911A1 (en) | 2022-02-10 |
NL2027556B1 (en) | 2022-06-14 |
US11847223B2 (en) | 2023-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2743619C1 (ru) | Способ и система генерации списка индикаторов компрометации | |
Moussaileb et al. | A survey on windows-based ransomware taxonomy and detection mechanisms | |
Oz et al. | A survey on ransomware: Evolution, taxonomy, and defense solutions | |
Shaukat et al. | RansomWall: A layered defense system against cryptographic ransomware attacks using machine learning | |
Cohen et al. | Trusted detection of ransomware in a private cloud using machine learning methods leveraging meta-features from volatile memory | |
CN109684832B (zh) | 检测恶意文件的系统和方法 | |
US10291634B2 (en) | System and method for determining summary events of an attack | |
US9824217B2 (en) | Runtime detection of self-replicating malware | |
Alazab et al. | Cybercrime: the case of obfuscated malware | |
US8387139B2 (en) | Thread scanning and patching to disable injected malware threats | |
Bai et al. | A malware detection scheme based on mining format information | |
KR102160659B1 (ko) | 하드웨어-기반 마이크로-아키텍처 데이터를 이용한 이상 프로그램 실행의 검출 | |
EP3420489B1 (en) | Cybersecurity systems and techniques | |
CN107066883B (zh) | 用于阻断脚本执行的系统和方法 | |
US8191147B1 (en) | Method for malware removal based on network signatures and file system artifacts | |
CN107463841B (zh) | 检测恶意计算机系统的系统和方法 | |
Melvin et al. | Dynamic malware attack dataset leveraging virtual machine monitor audit data for the detection of intrusions in cloud | |
Bakour et al. | The android malware static analysis: techniques, limitations, and open challenges | |
Le Jamtel | Swimming in the Monero pools | |
US10601867B2 (en) | Attack content analysis program, attack content analysis method, and attack content analysis apparatus | |
Shalaginov et al. | Automated intelligent multinomial classification of malware species using dynamic behavioural analysis | |
Saini et al. | Classification of PE files using static analysis | |
Lemmou et al. | Infection, self-reproduction and overinfection in ransomware: the case of teslacrypt | |
Rosli et al. | Ransomware behavior attack construction via graph theory approach | |
Kamal et al. | A User-friendly Model for Ransomware Analysis Using Sandboxing. |