Nothing Special   »   [go: up one dir, main page]

WO2013154459A1 - Способ обнаружения вредоносного программного обеспечения в ядре операционной системы - Google Patents

Способ обнаружения вредоносного программного обеспечения в ядре операционной системы Download PDF

Info

Publication number
WO2013154459A1
WO2013154459A1 PCT/RU2013/000249 RU2013000249W WO2013154459A1 WO 2013154459 A1 WO2013154459 A1 WO 2013154459A1 RU 2013000249 W RU2013000249 W RU 2013000249W WO 2013154459 A1 WO2013154459 A1 WO 2013154459A1
Authority
WO
WIPO (PCT)
Prior art keywords
kernel
addresses
loaded
address
malware
Prior art date
Application number
PCT/RU2013/000249
Other languages
English (en)
French (fr)
Inventor
Константин Дмитриевич ОЛЬШАНОВ
Евгений Петрович ТУМОЯН
Сергей Николаевич ЧЕРЕМЕНЦЕВ
Original Assignee
Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" filed Critical Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы"
Priority to DE112013002012.2T priority Critical patent/DE112013002012B4/de
Priority to US14/391,763 priority patent/US9177149B2/en
Publication of WO2013154459A1 publication Critical patent/WO2013154459A1/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements

Definitions

  • the present invention relates to computer technology and to ensuring information security of automated and information-computing systems, in particular, to means for detecting malicious software.
  • VFS Virtual File System
  • the well-known tool does not check the integrity of the entire kernel code, as well as dynamically check the execution of the kernel code, as a result of which it does not detect interceptions in the OS data structures, as well as intercepts and code modifications in the kernel (with the exception of virtual file system structures), which disadvantage.
  • the data structure is understood as the tables of executable processes (including user applications) generated by the OS, links to the system registry and files, etc.
  • the method Before implementing the method, they provide read and write access to areas of RAM with the loaded OS kernel and kernel modules and load the OS onto the computer.
  • the method can be implemented on computers with general-purpose operating systems such as Unix, Linux, Microsoft Windows, etc.
  • kernel debugger facilities configured to receive data from data structures generated by the OS by setting a breakpoint
  • the integrity checker module which is capable of determining whether the data received by the kernel debugger contains information when the breakpoint was set, inconsistencies typical of malware;
  • • detection module which coordinates the received data generated by the OS, and provides data for the integrity check module.
  • the software listed is not unique and may be created by a specialized specialist (programmer) on the basis of knowledge of the functions performed by these tools.
  • the disadvantage of this method is the low likelihood of malware detection, since it provides tracking of actions only when the OS data structure changes. Accordingly, malware directly in the OS kernel and kernel modules when using the known method will not be detected.
  • the proposed method includes dynamic verification of the execution of the OS kernel code to detect illegal interceptions and code changes in the kernel and loadable kernel modules (drivers).
  • the technical result is to increase the likelihood of detecting malware by providing the ability to detect illegal interceptions and code changes in the kernel and loadable kernel modules of the OS
  • An additional technical result is the verification of the integrity of the kernel executable code.
  • a necessary condition for the implementation of the proposed method is to provide read and write access to areas of RAM with a loaded OS kernel and kernel modules. This condition is most easily implemented on Linux.
  • the kernel code is packed using some well-known archiver program, while packing / unpacking, Gzip, Bzip, etc. algorithms can be used. After unpacking, the kernel code is a .elf file. The resulting file determines the code segments.
  • the normal range of kernel addresses is a set of ranges of RAM addresses in which the trust (reference) image of the kernel code and kernel modules of the OS is located after loading in the normal (standard) mode of the trust (reference) image of the OS in the absence of malware.
  • Obtaining a trusted image of the OS kernel is performed using standard tools for working with OS files.
  • auxiliary program can also be carried out by an OS specialist (programmer).
  • malware is detected, any known methods can be applied for its subsequent neutralization, for example, sequentially performed actions: terminating the malware-related process, deleting the malware, and deleting the file that contains the code of the program that performs the actions of the malware [2 ].
  • Maskable interrupts are turned on by the STI instruction.
  • the module that contains this address is considered malicious.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Настоящее изобретение относится к средствам обнаружения вредоносного программного обеспечения (ПО). Способ реализуется на компьютере с установленной на нем операционной системе (ОС) и содержит этап, на котором формируют точку прерывания при выполнении системного вызова пользовательского приложения на возникновение передачи управления по адресу в ядре загруженной ОС. Далее, проводят проверку структуры данных загруженной ОС. При проведении данной проверки определяют адрес команды в оперативной памяти компьютера, которой будет передано управление в ходе системного вызова, и проверяют принадлежность адресов команд, выполняемых в ходе системного вызова, к нормальному диапазону адресов ядра и модулей ядра ОС в оперативной памяти. Затем, выявляют наличие вредоносного ПО при отсутствии принадлежности адреса команды к нормальному диапазону адресов. Предлагаемый способ включает динамическую проверку исполнения кода ядра ОС для обнаружения нелегальных перехватов и изменения кода в ядре и загружаемых модулях ядра (драйверах). Предлагаемый способ обеспечивает обнаружение как известного ранее, так и ранее не зарегистрированного вредоносного ПО в ядре и загружаемых модулях ядра ОС.

Description

СПОСОБ ОБНАРУЖЕНИЯ ВРЕДОНОСНОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ЯДРЕ ОПЕРАЦИОННОЙ СИСТЕМЫ
Область техники, к которой относится изобретение Настоящее изобретение относится к вычислительной технике и к обеспечению информационной безопасности автоматизированных и информационно-вычислительных систем, в частности, к средствам обнаружения вредоносного программного обеспечения.
Уровень техники
В настоящее время разработаны и реализованы в прикладном программном обеспечении (ПО) следующие основные методы обнаружения вредоносного ПО:
1) обнаружение фактов скрытия программ, файлов, процессов, модулей ядра путем проверки наличия данных объектов на разных уровнях операционной системы (ОС);
2) обнаружение отличительных признаков ранее зарегистрированного вредоносного ПО, в частности, последовательностей байтов исполняемого кода, строк и констант, характерных для вредоносных программ;
3) контроль целостности исполняемого кода ядра в оперативной памяти. Так, известен прикладной программный пакет Rootkit Profiler LX для обнаружения вредоносного ПО [1].
Средство Rootkit Profiler LX выполняет проверку:
1) адреса таблицы системных вызовов, таблицы прерываний, обработчика системного вызова, обработчика прерывания,
2) кода системного вызова, кода обработчика прерывания,
3) указателей в структурах виртуальной файловой системы (Virtual File System, VFS).
Таким образом, известное средство не проводит проверку целостности всего кода ядра, а также динамическую проверку исполнения кода ядра, вследствие чего не обнаруживает перехватов в структурах данных ОС, а также перехватов и модификации кода в ядре (за исключением структур виртуальной файловой системы), что является недостатком.
Известен также способ обнаружения вредоносного ПО [2], реализуемый на компьютере с ОС и, согласно одному из вариантов реализации, заключающийся в том, что:
• формируют точку прерывания при возникновении системного вызова из пользовательского приложения на изменение структуры данных загруженной ОС;
· проводят проверку структуры данных загруженной ОС, выполняя следующие действия
о определяют адрес команды в оперативной памяти компьютера, которая произвела изменения в структуре данных;
о проверяют принадлежность адреса команды к нормальному диапазону адресов ОС в оперативной памяти;
• судят о наличии ВП при отсутствии принадлежности адреса команды к нормальному диапазону адресов.
Под структурой данных здесь понимается формируемые ОС таблицы исполняемых процессов (в том числе пользовательских приложений), ссылки на системный реестр и файлы и пр.
Перед реализацией способа обеспечивают доступ на чтение и запись к областям оперативной памяти с загруженным ядром ОС и модулями ядра и загружают ОС на компьютер. Способ может быть реализован на компьютерах с ОС общего назначения типа Unix, Linux, Microsoft Windows и др.
Непосредственная реализация способа обеспечивается с помощью предварительно создаваемого прикладного ПО:
• средства отладчика ядра (kernel debugger facilities), выполненного с возможностью получать данные из структур данных, сформированных ОС, путем установки точки прерывания;
· модуля проверки целостности (integrity checker), выполненного с возможностью определения, содержат ли данные, полученные средствами отладчика ядра, когда точка прерывания была установлена, несогласованности, характерные для вредоносного ПО;
• модуль обнаружения (detection module), который координирует полученные данные, сформированные ОС, и обеспечивает данные для модуля проверки целостности.
Перечисленные программные средства не являются уникальными и могут быть созданы профильным специалистом (программистом) на основе знания выполняемых этими средствами функций.
Известный способ принят за прототип для предлагаемого технического решения.
Недостатком известного способа является невысокая вероятность обнаружения вредоносного ПО, поскольку обеспечивается отслеживание действий только при изменении в структуре данных ОС. Соответственно, вредоносное ПО непосредственно в ядре ОС и модулях ядра при использовании известного способа не будет обнаружено.
Раскрытие изобретения
Предлагаемый способ включает динамическую проверку исполнения кода ядра ОС для обнаружения нелегальных перехватов и изменения кода в ядре и загружаемых модулях ядра (драйверах).
Техническим результатом является повышение вероятности обнаружения вредоносного ПО за счет обеспечения возможности обнаружения нелегальных перехватов и изменения кода в ядре и загружаемых модулях ядра ОС
Дополнительным техническим результатом является обеспечение проверки целостности исполняемого кода ядра.
Для этого предлагается способ, содержащий этапы, на которых
· формируют точку прерывания при выполнении системного вызова пользовательского приложения на возникновение передачи управления по адресу в ядре загруженной ОС;
• проводят проверку структуры данных загруженной ОС, выполняя следующие действия
о определяют адрес команды в оперативной памяти компьютера, которой будет передано управление в ходе системного вызова;
о проверяют принадлежность адресов команд, выполняемых в ходе системного вызова, к нормальному диапазону адресов ядра и модулей ядра ОС в оперативной памяти;
· выявляют наличие ВП при отсутствии принадлежности адреса команды к нормальному диапазону адресов.
Таким образом, в отличие от известного способа, в котором проверка проводится только в случае изменения в структуре данных загруженной ОС, в предлагаемом способе проводится проверка всей совокупности адресов команд, осуществляемых в ходе системного вызова.
Это позволяет контролировать все команды и переходы по адресам, в том числе генерируемые вредоносным ПО в составе ядра и модулей ОС, а не только вредоносным ПО в пользовательских приложениях.
Дополнительно также выявляется целостность исполняемого кода ядра.
Осуществление изобретения
Необходимым условием реализации предложенного способа является обеспечение доступа на чтение и запись к областям оперативной памяти с загруженным ядром ОС и модулями ядра. Это условие наиболее просто реализуется в ОС Linux.
Процесс осуществления предлагаемого способа далее описывается для компьютера, имеющего:
1 ) ОС Linux Ubuntu 9.10 ядром серии 2.6.31,
2) процессор Pentium серии Р6 и более поздних производства компании Intel (США).
Для автоматизированного выполнения предлагаемого способа необходимо, как и в прототипе, предварительно сформировать программу средства отладчика ядра, позволяющую
1) устанавливать точки прерывания на команды передачи управления;
2) определять адреса команды в оперативной памяти, на которую будет передано управление.
Создание такой программы может осуществить специалист в области ОС (программист).
Перед непосредственным осуществлением предлагаемого способа целесообразно обеспечить наличие доверительного образа ядра ОС для последующего сравнения.
Для этого сначала формируют образ ядра ОС, например, на жестком диске компьютера, а затем распаковывают образ ядра. Обычно код ядра упакован с помощью какой-либо известной программы-архиватора, при упаковке/распаковке могут использоваться алгоритмы Gzip, Bzip и др. После распаковки код ядра представляет собой файл формата .elf. В полученном файле производится определение сегментов кода.
В сегментах кода выполняется исправление изменяемых адресов кода ядра, аналогично тому, как это выполняет стандартный для данной ОС загрузчик ядра:
• изменение альтернативных инструкций - инструкций, указанных в секции .altinstructions ядра,
• изменение инструкций с префиксом LOCK,
• изменение инструкций, связанных с паравиртуализацией.
В результате получают доверительный (эталонный) образ ядра ОС и нормальный диапазон адресов размещения кода ядра в оперативной памяти. Таким образом, нормальный диапазон адресов ядра является совокупностью диапазонов адресов оперативной памяти, в которой размещается доверительный (эталонный) образ кода ядра и модулей ядра ОС после загрузки в обычном (штатном) режиме доверительного (эталонного) образа ОС при отсутствии вредоносного ПО.
Получение доверительного образа ядра ОС производится с использованием стандартных средств работы с файлами ОС.
Для получения нормального диапазона адресов ядра ОС и модулей ядра необходимо также предварительно сформировать вспомогательную программу, позволяющую:
1) сформировать доверительный образ ядра в оперативной памяти;
2) определять адрес начала и конца каждого сегмента ядра в оперативной памяти.
Целесообразность создания такой вспомогательной программы определяется тем, что стандартные средства ОС могут быть модифицированы ВП для скрытия своего наличия в компьютере.
Создание такой вспомогательной программы также может осуществить специалист в области ОС (программист).
После выполнения перечисленных выше подготовительных действий, в первую очередь осуществляют проверку целостности кода ядра загруженной ОС в оперативной памяти компьютера путем последовательного сравнения с доверительным кодом ядра. Если обнаружено изменение адреса, проводится проверка, принадлежит ли адрес доверительному модулю в составе ядра. Если нет - считают, что обнаружено вредоносное ПО.
Если обнаружено изменение команд - то также считают, что обнаружено вредоносное ПО.
При обнаружении вредоносного ПО для его последующей нейтрализации могут быть применены какие-либо известные методы, например, последовательно вьшолняемые действия: завершение процесса, связанного с вредоносным ПО, удаление вредоносного ПО и удаление файла, который содержит код программы, которая осуществляет действия вредоносного ПО [2].
После успешной проверки целостности кода ядра выполняют динамическую проверку исполнения кода ядра.
Для этого формируют список адресов, соответствующих участкам кода ядра и модулей ядра.
Затем с помощью средства отладчика ядра блокируют переключение процессов.
Процессор переводят в отладочный режим и устанавливают флаг трассировки TF = 1 для всех потоков ядра.
Отключают маскируемые прерывания инструкцией CLI.
Устанавливают перехватчики точек входа в ядро (SYSENTER, int80h).
Включают маскируемые прерывания инструкцией STI.
После этого разблокируют переключение процессов.
При выполнении отладочного прерывания по факту совершения перехода выполняют проверку адреса перехода.
Если адрес не принадлежит коду ядра или коду модуля ядра, то считают модуль, который содержит данный адрес, вредоносным.
Затем устанавливают в процессоре флаг BTF = 1 и выходят из обработчика отладочного прерывания.
Возможные действия при обнаружении вредоносного модуля ядра для его последующей нейтрализации могут быть аналогичны описанным выше. Цитируемые источники информации
[1] Klein Т. Rootkit Profiler LX. Overview and Documentation [Электронный pecypc] (CM.
http://ww.trapkit.de/researcr^rkprofiler/rkplx/RKProfilerLX_v0.12
22.04.2007)
[2] Патент США Jfe 7571482, Automated rootkit detector, 04.08.2009 r.

Claims

ФОРМУЛА ИЗОБРЕТЕНИЯ
1. Способ обнаружения вредоносного программного обеспечения в ядре операционной системы, установленной на компьютере, содержащий этапы, на которых:
формируют точку прерывания при выполнении системного вызова пользовательского приложения на возникновение передачи управления по адресу в ядре загруженной ОС;
проводят проверку структуры данных загруженной операционной системы, выполняя следующие действия:
определяют адрес команды в оперативной памяти компьютера, которой будет передано управление в ходе системного вызова,
проверяют принадлежность адресов команд, выполняемых в ходе системного вызова, к нормальному диапазону адресов ядра и модулей ядра операционной системы в оперативной памяти; и
выявляют наличие вредоносного программного обеспечения при отсутствии принадлежности адреса команды к нормальному диапазону адресов.
PCT/RU2013/000249 2012-04-11 2013-03-27 Способ обнаружения вредоносного программного обеспечения в ядре операционной системы WO2013154459A1 (ru)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE112013002012.2T DE112013002012B4 (de) 2012-04-11 2013-03-27 Verfahren eines Erkennens von Schadsoftware in einem Betriebssystemkern
US14/391,763 US9177149B2 (en) 2012-04-11 2013-03-27 Method of detecting malware in an operating system kernel

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2012113963/08A RU2510075C2 (ru) 2012-04-11 2012-04-11 Способ обнаружения вредоносного программного обеспечения в ядре операционной системы
RU2012113963 2012-04-11

Publications (1)

Publication Number Publication Date
WO2013154459A1 true WO2013154459A1 (ru) 2013-10-17

Family

ID=49327923

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2013/000249 WO2013154459A1 (ru) 2012-04-11 2013-03-27 Способ обнаружения вредоносного программного обеспечения в ядре операционной системы

Country Status (4)

Country Link
US (1) US9177149B2 (ru)
DE (1) DE112013002012B4 (ru)
RU (1) RU2510075C2 (ru)
WO (1) WO2013154459A1 (ru)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2596577C2 (ru) * 2014-09-30 2016-09-10 Закрытое акционерное общество "Лаборатория Касперского" Способ создания обработчика системных вызовов
CN106055977A (zh) * 2016-05-23 2016-10-26 北京金山安全软件有限公司 一种窗口保护方法及装置、终端
CN106096402A (zh) * 2016-06-22 2016-11-09 北京金山安全软件有限公司 一种信息拦截方法及装置
CN106127046A (zh) * 2016-06-22 2016-11-16 北京金山安全软件有限公司 一种信息拦截方法及装置
CN106203121B (zh) * 2016-07-19 2019-09-06 珠海豹趣科技有限公司 内核地址防止恶意修改方法、装置以及终端
FR3096490A1 (fr) * 2019-06-28 2020-11-27 Orange Procédé itératif et dispositif de détection d’une zone approximative occupée par le code informatique d’un noyau d’un système d’exploitation dans une mémoire
CN111027072B (zh) * 2019-12-20 2024-02-27 北京安天网络安全技术有限公司 Linux下基于elf二进制标准解析的内核Rootkit检测方法及装置
CN111639340B (zh) * 2020-05-28 2023-11-03 北京金山云网络技术有限公司 恶意应用程序检测方法、装置、电子设备及可读存储介质
CN112817986B (zh) * 2021-02-26 2022-03-22 北京易捷思达科技发展有限公司 适用于Linux生产环境的数据结构修复方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7571482B2 (en) * 2005-06-28 2009-08-04 Microsoft Corporation Automated rootkit detector
US7647636B2 (en) * 2005-08-24 2010-01-12 Microsoft Corporation Generic RootKit detector
RU107620U1 (ru) * 2011-04-12 2011-08-20 Общество с ограниченной ответственностью "ЛАН-ПРОЕКТ" Система для контроля хода выполнения программ
RU107619U1 (ru) * 2011-04-11 2011-08-20 Общество с ограниченной ответственностью "ЛАН-ПРОЕКТ" Система для контроля хода выполнения программ

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003058451A1 (en) * 2002-01-04 2003-07-17 Internet Security Systems, Inc. System and method for the managed security control of processes on a computer system
US8171551B2 (en) 2003-04-01 2012-05-01 Mcafee, Inc. Malware detection using external call characteristics
US8572729B1 (en) * 2006-01-30 2013-10-29 Mcafee, Inc. System, method and computer program product for interception of user mode code execution and redirection to kernel mode
US8065736B2 (en) * 2006-06-06 2011-11-22 Microsoft Corporation Using asynchronous changes to memory to detect malware
US20080127114A1 (en) 2006-11-28 2008-05-29 Amit Vasudevan Framework for stealth dynamic coarse and fine-grained malware analysis
US7802300B1 (en) 2007-02-06 2010-09-21 Trend Micro Incorporated Method and apparatus for detecting and removing kernel rootkits
US8099785B1 (en) * 2007-05-03 2012-01-17 Kaspersky Lab, Zao Method and system for treatment of cure-resistant computer malware
US8104089B1 (en) * 2007-12-31 2012-01-24 Symantec Corporation Tracking memory mapping to prevent packers from evading the scanning of dynamically created code
US8918865B2 (en) * 2008-01-22 2014-12-23 Wontok, Inc. System and method for protecting data accessed through a network connection
WO2009151888A2 (en) * 2008-05-19 2009-12-17 Authentium, Inc. Secure virtualization system software
US8391834B2 (en) * 2009-01-28 2013-03-05 Headwater Partners I Llc Security techniques for device assisted services
US8904536B2 (en) 2008-08-28 2014-12-02 AVG Netherlands B.V. Heuristic method of code analysis
US9098698B2 (en) * 2008-09-12 2015-08-04 George Mason Research Foundation, Inc. Methods and apparatus for application isolation
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
EP2388726B1 (en) * 2010-05-18 2014-03-26 Kaspersky Lab, ZAO Detection of hidden objects in a computer system
US9552478B2 (en) * 2010-05-18 2017-01-24 AO Kaspersky Lab Team security for portable information devices
WO2012027669A1 (en) * 2010-08-26 2012-03-01 Verisign, Inc. Method and system for automatic detection and analysis of malware
US8806640B2 (en) * 2010-10-22 2014-08-12 George Mason Intellectual Properties, Inc. Program execution integrity verification for a computer system
US8863283B2 (en) 2011-03-31 2014-10-14 Mcafee, Inc. System and method for securing access to system calls
US8479295B2 (en) * 2011-03-30 2013-07-02 Intel Corporation Method and apparatus for transparently instrumenting an application program
US8694738B2 (en) * 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US8973144B2 (en) * 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US9529614B2 (en) * 2012-03-05 2016-12-27 Board Of Regents The University Of Texas Systems Automatically bridging the semantic gap in machine introspection
US10474811B2 (en) * 2012-03-30 2019-11-12 Verisign, Inc. Systems and methods for detecting malicious code
CN104335220B (zh) * 2012-03-30 2018-04-20 爱迪德技术有限公司 用于防止和检测安全威胁的方法和系统
US9411955B2 (en) * 2012-08-09 2016-08-09 Qualcomm Incorporated Server-side malware detection and classification
US9009823B1 (en) * 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
WO2015030748A1 (en) * 2013-08-28 2015-03-05 Intel Corporation Hardware and software execution profiling

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7571482B2 (en) * 2005-06-28 2009-08-04 Microsoft Corporation Automated rootkit detector
US7647636B2 (en) * 2005-08-24 2010-01-12 Microsoft Corporation Generic RootKit detector
RU107619U1 (ru) * 2011-04-11 2011-08-20 Общество с ограниченной ответственностью "ЛАН-ПРОЕКТ" Система для контроля хода выполнения программ
RU107620U1 (ru) * 2011-04-12 2011-08-20 Общество с ограниченной ответственностью "ЛАН-ПРОЕКТ" Система для контроля хода выполнения программ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LEVINE JOHN G.: "A Methodology for Detecting and Classifying Rootkit Exploits", vol. 53, February 2004 (2004-02-01), GEORGIA INSTITUTE OF TECHNOLOGY, pages 64 - 67, Retrieved from the Internet <URL:https://smartech.gatech.edU/bitstream/handle/1853/5139/john_g_levine_200405_phd.pdf?sequence=> *

Also Published As

Publication number Publication date
DE112013002012T5 (de) 2015-01-29
RU2510075C2 (ru) 2014-03-20
DE112013002012B4 (de) 2022-04-28
US20150096028A1 (en) 2015-04-02
US9177149B2 (en) 2015-11-03
RU2012113963A (ru) 2013-10-20

Similar Documents

Publication Publication Date Title
RU2510075C2 (ru) Способ обнаружения вредоносного программного обеспечения в ядре операционной системы
Jeong et al. Razzer: Finding kernel race bugs through fuzzing
EP3039608B1 (en) Hardware and software execution profiling
CA2856268C (en) Methods of detection of software exploitation
Kawakoya et al. Memory behavior-based automatic malware unpacking in stealth debugging environment
US8566944B2 (en) Malware investigation by analyzing computer memory
US9703957B2 (en) Atomic detection and repair of kernel memory
EP2237186B1 (en) Method for accelerating hardware emulator used for malware detection and analysis
KR101759008B1 (ko) 코드 실행의 프로파일링
JP4518564B2 (ja) 不正コード実行の防止方法、不正コード実行の防止用プログラム、及び不正コード実行の防止用プログラムの記録媒体
EP2881881B1 (en) Machine-readable medium, method and system for detecting java sandbox escaping attacks based on java bytecode instrumentation and java method hooking
US20050108562A1 (en) Technique for detecting executable malicious code using a combination of static and dynamic analyses
US20150007266A1 (en) Program execution integrity verification for a computer system
JP2018041438A (ja) ファイル中の悪意のあるコードの検出システム及び方法
Saito et al. A survey of prevention/mitigation against memory corruption attacks
CN113760770B (zh) 基于自动静态资源检测的反调试方法和系统
Shields Anti-debugging–a developers view
Fu et al. A windows rootkit detection method based on cross-view
Dong et al. Kims: kernel integrity measuring system based on trustzone
CN111194447B (zh) 监视控制流完整性
KR20210057239A (ko) 안티 디버깅 무력화 장치 및 그 방법
Kirmani et al. Analyzing detection avoidance of malware by process hiding
Ahmed et al. Rule-based integrity checking of interrupt descriptor tables in cloud environments
Mishra et al. Evading malware analysis using reverse execution
Zou et al. Identify stack overflow exploits with dynamic binary instrumentation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13775909

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14391763

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112013002012

Country of ref document: DE

Ref document number: 1120130020122

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13775909

Country of ref document: EP

Kind code of ref document: A1