RU2584505C2 - Система и способ предварительной фильтрации файлов для контроля приложений - Google Patents

Система и способ предварительной фильтрации файлов для контроля приложений Download PDF

Info

Publication number
RU2584505C2
RU2584505C2 RU2014115460/08A RU2014115460A RU2584505C2 RU 2584505 C2 RU2584505 C2 RU 2584505C2 RU 2014115460/08 A RU2014115460/08 A RU 2014115460/08A RU 2014115460 A RU2014115460 A RU 2014115460A RU 2584505 C2 RU2584505 C2 RU 2584505C2
Authority
RU
Russia
Prior art keywords
file
filter
tool
control
analysis tool
Prior art date
Application number
RU2014115460/08A
Other languages
English (en)
Other versions
RU2014115460A (ru
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 RU2014115460/08A priority Critical patent/RU2584505C2/ru
Priority to US14/300,878 priority patent/US9043907B1/en
Publication of RU2014115460A publication Critical patent/RU2014115460A/ru
Application granted granted Critical
Publication of RU2584505C2 publication Critical patent/RU2584505C2/ru

Links

Images

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/52Monitoring 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/53Monitoring 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
    • 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/562Static detection
    • G06F21/564Static detection by virus signature recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3096Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents wherein the means or processing minimize the use of computing system or of computing system component resources, e.g. non-intrusive monitoring which minimizes the probe effect: sniffing, intercepting, indirectly deriving the monitored data from other directly available data
    • 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/562Static detection
    • G06F21/563Static detection by source code analysis
    • 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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • H04L63/0218Distributed architectures, e.g. distributed firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Quality & Reliability (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

Изобретение относится к контролю приложений. Технический результат заключается в уменьшении времени, в течение которого производится анализ файлов клиентом в рамках контроля приложений. Способ предварительной фильтрации файлов для контроля приложений, в котором перехватывают вызовы функций записи в файл с целью определения данных, находящихся внутри части файла, которые используются для определения характеристик файла; применяют файловый фильтр к части файла; при этом файловый фильтр представляет собой битовую маску вместе с по меньшей мере одной характеристикой файла; при этом под применением файлового фильтра понимают вычисление результатов операции AND, применяемой к части файла и битовой маске; определяют множество характеристик файла, если был определен файловый фильтр, сработавший на части файла; при этом, если фильтр сработал на части файла, то файл обладает характеристикой, описанной в рамках файлового фильтра; исключают файл из проверки, которая проводится в рамках контроля приложений, если множество определенных характеристик файла удовлетворяет критерию фильтрации; при этом критерием фильтрации является эвристическое правило, применяемое к множеству характеристик файла. 2 н. и 2 з.п. ф-лы, 3 ил.

Description

Область техники
Изобретение относится к области управления приложениями, а именно к системам и способам предварительной фильтрации файлов для контроля приложений.
Уровень техники
В настоящее время количество всевозможных приложений (программного обеспечения), используемых на вычислительных устройствах, в том числе и персональных электронных вычислительных машинах (компьютерах), лавинообразно увеличивается. Среди многообразия приложений существует множество вредоносных программ, которые способны нанести какой-либо вред компьютеру или пользователю компьютера, например сетевые черви, клавиатурные шпионы, компьютерные вирусы.
Особо остро стоит задача защиты множества вычислительных устройств для администраторов компьютерных сетей, где на каждый компьютер из сети может быть установлено большое количество приложений, некоторые из которых могут быть вредоносными. Для решения такой задачи одним из распространенных подходов является использование систем контроля приложений (англ. application control), где администратор сети имеет доступ к запускаемым на компьютерах сети приложениям путем использования совокупности модуля централизованного управления и множества клиентов на стороне компьютеров корпоративной сети, которые могут выполнять команды, получаемые со стороны модуля централизованного управления. Используя такую систему, администратор сети имеет возможность создавать правила разрешения/запрета на запуск приложений на стороне компьютеров сети, а также контролировать доступ упомянутых приложений к ресурсам компьютеров.
Однако упомянутый выше подход обладает недостатком. Анализ клиентом на стороне компьютера сети каждого используемого в рамках компьютера файла создает нагрузку на вычислительные ресурсы компьютера (например, процессор или жесткий диск). Для решения указанной проблемы необходим подход для выделения из множества файлов на компьютере (среди которых могут быть различные документы, таблицы) тех, которые необходимо будет анализировать с точки зрения запрета на использование, установленного администратором сети (например, приложения).
Так, в публикации US 20050273708 описан подход к выявлению типа файла при помощи сигнатур. Применение таких фильтров дает возможность из некоторого множества файлов выделить интересующий набор, например подмножество исполняемых файлов. Однако в приведенной публикации не описана возможность применения подхода в системах контроля приложений.
В публикации US 7523500 предложено использование фильтрующих критериев, которые позволяли бы при антивирусной проверке не проверять файлы, которые не удовлетворяют заданным правилам, например, если тип файла подразумевает, что файл не может быть заражен. Но в упомянутой публикации также не раскрыты особенности использования такого подхода в системах контроля приложений.
Хотя рассмотренные подходы направлены на решение определенных задач в области оптимизации анализа файлов, они не решают задачу фильтрации файлов при использовании систем контроля приложений или решают недостаточно эффективно. Настоящее изобретение позволяет более эффективно решить задачу контроля приложений.
Раскрытие изобретения
Настоящее изобретение предназначено для предварительной фильтрации файлов для контроля приложений.
Технический результат настоящего изобретения заключается в уменьшении времени, в течение которого производится анализ файлов клиентом в рамках работы контроля приложений, которое достигается путем исключения из анализа файлов, множество характеристик которых удовлетворяет критериям фильтрации файлов.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1 иллюстрирует структурную схему системы предварительной фильтрации файлов для контроля приложений.
Фиг. 2 показывает примерную схему алгоритма работы одного из вариантов реализации системы предварительной фильтрации файлов для контроля приложений.
Фиг. 3 показывает пример компьютерной системы общего назначения.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является не чем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
На Фиг. 1 изображена структурная схема системы предварительной фильтрации файлов для контроля приложений. В частности, изображена вычислительная сеть 100 (далее сеть 100), соединяющая, по меньшей мере, один компьютер 102 и, по меньшей мере, модуль централизованного управления 101. В частном случае реализации как компьютер 102, так и модуль централизованного управления 101 представляют собой вычислительную систему общего назначения, изображенную на Фиг. 4. Модуль централизованного управления 101 используется администратором сети 100 для контроля приложений, используемых в рамках сети 100 (т.е. установленных на компьютерах 102, подключенных к сети 100). Совместно с клиентом 140, установленным на компьютере 102, модуль централизованного управления 101 обеспечивает контроль приложений (англ. application control): при помощи модуля централизованного управления 101 в частном случае реализации изобретения администратор сети 100 формирует правила разрешения/запрета на запуск приложений, установленных на компьютере 102. В частном случае реализации правило разрешения на запуск приложений может представлять собой правило, в соответствии с которым на компьютере 102 будет разрешен запуск приложений из определенного списка. В частном случае реализации правило запрета на запуск приложений может представлять собой правило, в соответствии с которым на компьютере 102 будет запрещен запуск приложений из определенного списка. За соблюдение логики правил отвечает клиент 140, установленный на компьютер 102. В частном случае реализации клиент имеет доступ к сформированным спискам для запрета и (или) разрешения на запуск приложений и при запуске приложения на компьютере 102 принимает решение о запрете и (или) разрешении на запуск упомянутого приложения, если оно присутствует в соответствующем списке. В частном случае реализации клиент 140 контролирует открытие файлов (например, пользователем во время использования компьютера 102), хранящихся на запоминающем устройстве 150 компьютера 102. В другом частном случае реализации клиент 140 контролирует другие операции доступа к файлам (например, чтение файла или запись в файл). В частном случае реализации открытие файла может означать запуск приложения, если файл является исполняемым (англ. executable), или запуск необходимого для открытия файла приложения, если файл является, например, документом типа Portable Document Format (pdf) или изображением типа JPEG. Однако логика правил, сформированных администратором сети 100, как правило регулирует открытие файлов определенных типов (например, исполняемых файлов). Таким образом, возникает необходимость отфильтровывать открытие файлов, обладающих одними характеристиками (в частности типом файла), от других файлов. Однако следует отметить, что определение характеристик файла в момент его открытия с целью принятия решения об исключении файла из дальнейшего анализа клиентом 140 повлечет за собой снижение производительности компьютера 102 и, соответственно, замедление работы пользователя с файлами на запоминающем устройстве 150.
Для решения описанной проблемы в рамках настоящего изобретения применяется предварительная фильтрация, позволяющая определять характеристики файлов уже в момент создания файла (или изменения файла, где изменения могут повлиять на характеристики файла) на запоминающем устройстве 150. Такой подход исключает необходимость определения характеристик файла каждый раз при его открытии. Для реализации такого подхода используется средство перехвата 120, изображенное на Фиг. 1. Упомянутое средство 120 используется для перехвата операций записи в файл (в том числе при создании файла и изменении уже существующего файла на запоминающем устройстве 150), которые используются, по меньшей мере, одним приложением (программным обеспечение) 110, установленным на компьютере 102. В качестве приложения 110, использующего операции записи в файл, может выступать Интернет-браузер (англ. Web browser), например Microsoft Internet Explorer, или клиент пиринговой сети, например µtorrent. В частном случае реализации при использовании операционной системы семейства Windows средство перехвата 120 осуществляет перехват вызова функций записи путем установки драйвера-фильтра файловой системы. Для реализации такого подхода используется диспетчер фильтров (англ. Filter Manager), в который загружается драйвер, реализующий логику работы средства перехвата 120. Реализованное таким образом средство 120 анализирует запросы на запись к запоминающему устройству. Для определения характеристик файла во время вызова операций записи, как правило, достаточно проанализировать некоторую часть файла, поэтому в частном случае реализации средство перехвата 120 из всего потока файловых операций записи выделяет операции записи (в том числе и модификации) в начальной области файла (т.е. область, включающая некоторые данные от начала файла). В частном случае реализации область выбирается размером 512 байт. Информация о перехваченных операциях записи в файл, а именно в интересующую часть файла (в том числе и записываемые в начальную область файла данные), передается средством перехвата 120 на вход средства анализа 125. В частном случае реализации средство перехвата 120 дополнительно передает средству 125 идентификатор файла (например, путь файла или его контрольная сумма).
Средство анализа 125 предназначено для определения множества характеристик файла путем анализа части файла, полученной со стороны средства перехвата 120. Для определения множества характеристик файла средство анализа использует набор файловых фильтров, которые хранятся в базе данных фильтров 135. Файловый фильтр в частном случае реализации представляет собой битовую маску, например последовательность бит «01001101 01111010», а также некоторую характеристику, например тип файла (файл является исполняемым или документом PDF). Средство анализа 125 применяет файловый фильтр (а именно маску) к части файла, получаемой со стороны средства 120. В частном случае реализации файловый фильтр также хранит информацию о смещении в анализируемой части файла, начиная с которого следует применять файловый фильтр. В частном случае реализации под применением файлового фильтра понимают вычисление результатов операции AND (логическое «И», «&»), применяемой к части файла (в том числе и начиная с некоторого смещения) и битовой маске. Если результат вышеописанной операции равняется значению битовой маски, считается, что фильтр, маска которого использовалась при вычислении операции AND, сработал на части файла. Таким образом, считается, если некоторый фильтр сработал на части файла, то файл обладает характеристикой, описанной в рамках файлового фильтра. В общем случае использование описанных выше файловых фильтров помогает определить тип файла. Примером определения характеристики файла может быть следующее: если на начальной части файла сработала маска «01001101 01111010» файлового фильтра, то файл обладает характеристикой «исполняемый файл». Где характеристикой «исполняемый файл» обладают исполняемые файлы в операционной системе MS-DOS и операционных системах семейства Windows. Еще одним примером может быть файловый фильтр, который срабатывает на файлах, обладающих характеристикой «PDF-файл» (файл документа типа Portable Document Format), который характеризуется маской «00100101 01010000 01000100 01000110». В качестве файлового фильтра также может использоваться маска «01000101 01111000 01101001 01100110» по смещению 0x6 в совокупности с характеристикой, которую этот файловый фильтр определяет - «JPEG-файл». В частном случае реализации логика фильтра может быть сложнее и содержать последовательность шагов для определения характеристики: если в соответствии с файловым фильтром файл был признан исполняемым (обладает характеристикой «исполняемый файл»), то на часть файла накладывается дополнительная маска «00110010 00101101» по смещению, значение которого хранится в той же части файла по смещению 0x3C. В случае если вышеописанный фильтр срабатывает, то считается, что файл обладает характеристикой «РЕ-файл» (файл является РЕ-файлом в операционных системах семейства Windows). Выявленный набор характеристик файла вместе с его идентификатором передается средством анализа 125 на вход средству контроля 130.
Средство контроля 130 предназначено для принятия решения об исключении файла из проверки, проводимой клиентом 140 в рамках работы контроля приложений, на основании характеристик файла, получаемых со стороны средства анализа 125. В частном случае реализации средство контроля 130 принимает решение исключить из анализа, проводимого клиентом 140 в рамках работы контроля приложений, файл, если множество характеристик файла удовлетворяет, по меньшей мере, одному критерию фильтрации файлов. Критерием фильтрации файлов в общем случае является эвристическое правило, применяемое к множеству характеристик файла. В частном случае реализации примеры критериев фильтрации файлов могут выглядеть следующим образом: исключить из анализа файл, если:
- множество характеристик файла пустое;
- среди множества характеристик файла есть характеристика «JPEG-файл»;
- среди множества характеристик файла есть характеристика «PDF-файл»;
- среди множества характеристик файла есть характеристика «исполняемый файл», но нет характеристики «РЕ-файл»;
- среди множества характеристик файла нет характеристики «исполняемый файл».
В соответствии с вышеописанной схемой средство 130 формирует решение исключать или не исключать файл из анализа, проводимого клиентом 140 в рамках работы контроля приложений, для каждого файла, идентификатор и множество характеристик которого средство 130 получает со стороны средства анализа 125. В частном случае реализации упомянутое решение вместе с идентификатором файла, относительно которого это решение принималось, отправляются на хранение в базу данных решений 128. В частном случае реализации средство контроля 130 обновляет уже хранящуюся в базе данных решений 128 информацию в соответствии с заново сформированным решением.
Прежде чем проводить проверку с целью определения прав доступа к файлу (например, запрет/разрешение на открытие файла) в соответствии с установленными администратором сети правилами, клиент 140 посылает в частном случае реализации запрос базе данных решений 128 с указанием идентификатора рассматриваемого файла. Если в базе данных решений 128 хранится решение об исключении файла с указанным идентификатором из анализа, проводимого клиентом 140 в рамках работы контроля приложений, то клиент 140 не анализирует упомянутый файл. Если же в базе данных решений 128 хранится решение не исключать файл из анализа, или же в базе данных 128 не хранится вообще никакого решения, соответствующего идентификатору рассматриваемого файла, то клиент 140 анализирует файл в рамках вышеупомянутой схемы работы контроля приложений. В другом частном случае реализации клиент 140 посылает вышеописанный запрос не базе данных решений 128, а средству контроля 130, и получает ответ в соответствии с вышеописанной логикой.
На Фиг. 2 изображена примерная схема алгоритма работы одного из вариантов реализации вышеописанной системы предварительной фильтрации файлов для контроля приложений. На этапе 201 средство перехвата 120 осуществляет перехват операций записи в файл, проводимых приложением 110, посредством драйвера-фильтра файловой системы. После чего упомянутое средство 120 выделяет начальную часть файла, которую оно передает вместе с идентификатором файла средству анализа 125. На этапе 203 средство анализа 125 применяет файловые фильтры, хранящиеся в базе данных фильтров 135, к начальной части файла, полученной со стороны средства перехвата 120, с целью определения множества характеристик файла. Полученное множество характеристик файла, а также его идентификатор средство анализа 125 передает средству контроля 130, которое формирует решение об исключении файла из анализа клиентом 140 на основании множества полученных характеристик файла на этапе 204. Сформированное решение относительно файла, а также его идентификатор средство контроля 130 посылает в базу данных решений 128 на хранение. Решение об исключении (или не исключении) из анализа клиентом 140 файла запрашивается клиентом 140 из базы данных решений 128 перед проведением упомянутым клиентом 140 анализа файла в рамках работы контроля приложений на этапе 205. Если в базе данных решений 128 хранится решение об исключении рассматриваемого файла из анализа, проводимого клиентом 140 в рамках работы контроля приложений, то клиент 140 не анализирует упомянутый файл на этапе 207. Если же в базе данных решений 128 хранится решение не исключать файл из анализа, или же в базе данных 128 не хранится вообще никакого решения, соответствующего рассматриваемому файлу, то клиент 140 анализирует файл в рамках вышеупомянутой схемы работы контроля приложений на этапе 206.
Фиг. 3 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26 содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер или компьютеры 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 3. В вычислительной сети могут присутствовать также и другие устройства, например маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.

Claims (4)

1. Способ предварительной фильтрации файлов для контроля приложений, в котором:
a. перехватывают вызовы функций записи в файл при помощи средства перехвата с целью определения данных, находящихся внутри части файла, которые используются для определения характеристик файла;
b. применяют при помощи средства анализа по меньшей мере один файловый фильтр к части файла для определения по меньшей мере одного файлового фильтра, сработавшего на части файла;
при этом файловый фильтр представляет собой битовую маску вместе с по меньшей мере одной характеристикой файла;
при этом под применением файлового фильтра понимают вычисление результатов операции AND, применяемой к части файла и битовой маске;
c. определяют при помощи средства анализа множество характеристик файла, если на этапе ранее был определен по меньшей мере один файловый фильтр, сработавший на части файла, а также передают полученное множество характеристик файла средству контроля;
при этом, если фильтр сработал на части файла, то файл обладает характеристикой, описанной в рамках файлового фильтра;
d. принимают решение при помощи средства контроля об исключении файла из проверки, которая проводится в рамках контроля приложений, если множество характеристик упомянутого файла, определенных при помощи средства анализа, удовлетворяет по меньшей мере одному критерию фильтрации;
при этом критерием фильтрации является эвристическое правило, применяемое к множеству характеристик файла;
е. исключают при помощи средства контроля файл из проверки клиентом в рамках контроля приложений, если соответствующее решение было принято на этапе ранее.
2. Способ по п. 1, в котором частью файла являются первые 512 байт файла.
3. Система предварительной фильтрации файлов для контроля приложений, которая содержит:
a. средство перехвата, предназначенное для перехвата вызовов функций записи в файл с целью определения данных, находящихся внутри части файла, которые используются для определения характеристик файла;
b. средство анализа, связанное со средством перехвата и предназначенное для применения по меньшей мере одного файлового фильтра к части файла для определения по меньшей мере одного файлового фильтра, сработавшего на части файла, для определения множества характеристик файла при срабатывании по меньшей мере одного файлового фильтра на части файла, а также для передачи полученного множества характеристик файла средству контроля;
при этом, если фильтр сработал на части файла, то файл обладает характеристикой, описанной в рамках файлового фильтра;
при этом файловый фильтр представляет собой битовую маску вместе с по меньшей мере одной характеристикой файла;
при этом под применением файлового фильтра понимают вычисление результатов операции AND, применяемой к части файла и битовой маске;
c. базу данных фильтров, связанную со средством анализа и предназначенную для хранения файловых фильтров, которыми пользуется средство анализа;
d. средство контроля, связанное со средством анализа и предназначенное для принятия решения об исключении файла из проверки, которая проводится в рамках контроля приложений, если множество характеристик упомянутого файла, определенных при помощи средства анализа, удовлетворяет по меньшей мере одному критерию фильтрации, а также исключения файла из проверки клиентом в рамках контроля приложений, если было принято соответствующее решение;
при этом критерием фильтрации является эвристическое правило, применяемое к множеству характеристик файла;
4. Система по п. 3, в которой частью файла являются первые 512 байт файла.
RU2014115460/08A 2014-04-18 2014-04-18 Система и способ предварительной фильтрации файлов для контроля приложений RU2584505C2 (ru)

Priority Applications (2)

Application Number Priority Date Filing Date Title
RU2014115460/08A RU2584505C2 (ru) 2014-04-18 2014-04-18 Система и способ предварительной фильтрации файлов для контроля приложений
US14/300,878 US9043907B1 (en) 2014-04-18 2014-06-10 System and methods for control of applications using preliminary file filtering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2014115460/08A RU2584505C2 (ru) 2014-04-18 2014-04-18 Система и способ предварительной фильтрации файлов для контроля приложений

Publications (2)

Publication Number Publication Date
RU2014115460A RU2014115460A (ru) 2015-10-27
RU2584505C2 true RU2584505C2 (ru) 2016-05-20

Family

ID=53176527

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2014115460/08A RU2584505C2 (ru) 2014-04-18 2014-04-18 Система и способ предварительной фильтрации файлов для контроля приложений

Country Status (2)

Country Link
US (1) US9043907B1 (ru)
RU (1) RU2584505C2 (ru)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2606559C1 (ru) * 2015-10-22 2017-01-10 Акционерное общество "Лаборатория Касперского" Система и способ оптимизации антивирусной проверки файлов

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523500B1 (en) * 2004-06-08 2009-04-21 Symantec Corporation Filtered antivirus scanning
US7984500B1 (en) * 2006-10-05 2011-07-19 Amazon Technologies, Inc. Detecting fraudulent activity by analysis of information requests
RU2434267C2 (ru) * 2006-06-02 2011-11-20 Майкрософт Корпорейшн Объединение вирусной проверки и репликационной фильтрации

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754822B1 (en) * 1998-04-30 2004-06-22 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forshung E.V. Active watermarks and watermark agents
CN1174394C (zh) * 1999-12-02 2004-11-03 株式会社三协精机制作所 光学拾波装置
EP1470497A1 (en) * 2002-01-12 2004-10-27 Coretrust, Inc. Method and system for the information protection of digital content
US6993603B2 (en) * 2002-12-09 2006-01-31 Microsoft Corporation Managed file system filter model and architecture
US7188127B2 (en) * 2003-10-07 2007-03-06 International Business Machines Corporation Method, system, and program for processing a file request
US20050273708A1 (en) 2004-06-03 2005-12-08 Verity, Inc. Content-based automatic file format indetification
US7690033B2 (en) 2004-09-28 2010-03-30 Exobox Technologies Corp. Electronic computer system secured from unauthorized access to and manipulation of data
US8499350B1 (en) * 2009-07-29 2013-07-30 Symantec Corporation Detecting malware through package behavior
CA2626993A1 (en) * 2005-10-25 2007-05-03 The Trustees Of Columbia University In The City Of New York Methods, media and systems for detecting anomalous program executions
AU2007200606A1 (en) 2006-03-03 2007-09-20 Pc Tools Technology Pty Limited Scanning files using direct file system access
US7647308B2 (en) * 2006-11-08 2010-01-12 Mcafee, Inc. Method and system for the detection of file system filter driver based rootkits
US7908656B1 (en) * 2007-04-23 2011-03-15 Network Appliance, Inc. Customized data generating data storage system filter for data security
US8042185B1 (en) * 2007-09-27 2011-10-18 Netapp, Inc. Anti-virus blade
JP4342584B2 (ja) 2007-10-29 2009-10-14 株式会社東芝 ファイルアクセス制御装置及びプログラム
US8950007B1 (en) * 2008-04-07 2015-02-03 Lumension Security, Inc. Policy-based whitelisting with system change management based on trust framework
US20100122313A1 (en) * 2008-11-09 2010-05-13 Aspect9, Inc. Method and system for restricting file access in a computer system
US9317687B2 (en) * 2012-05-21 2016-04-19 Mcafee, Inc. Identifying rootkits based on access permissions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523500B1 (en) * 2004-06-08 2009-04-21 Symantec Corporation Filtered antivirus scanning
RU2434267C2 (ru) * 2006-06-02 2011-11-20 Майкрософт Корпорейшн Объединение вирусной проверки и репликационной фильтрации
US7984500B1 (en) * 2006-10-05 2011-07-19 Amazon Technologies, Inc. Detecting fraudulent activity by analysis of information requests

Also Published As

Publication number Publication date
US9043907B1 (en) 2015-05-26
RU2014115460A (ru) 2015-10-27

Similar Documents

Publication Publication Date Title
CN106557696B (zh) 用于检测恶意数据加密程序的系统和方法
RU2568295C2 (ru) Система и способ временной защиты операционной системы программно-аппаратных устройств от приложений, содержащих уязвимости
RU2580030C2 (ru) Система и способ распределения задач антивирусной проверки между виртуальными машинами в виртуальной сети
US8621610B2 (en) Network service for the detection, analysis and quarantine of malicious and unwanted files
RU2571723C2 (ru) Система и способ для снижения нагрузки на операционную систему при работе антивирусного приложения
US8863284B1 (en) System and method for determining a security status of potentially malicious files
RU2589852C2 (ru) Система и способ автоматической регулировки правил контроля приложений
RU2618946C1 (ru) Способ блокировки доступа к данным на мобильных устройствах с использованием API для пользователей с ограниченными возможностями
US8739287B1 (en) Determining a security status of potentially malicious files
US7599907B2 (en) Method and system applying policy on screened files
RU2634175C2 (ru) Способ выполнения антивирусных проверок
RU2584507C1 (ru) Способ обеспечения безопасного выполнения файла сценария
RU2618947C2 (ru) Способ предотвращения работы программ, содержащих нежелательный для пользователя функционал
US9444832B1 (en) Systems and methods for optimizing antivirus determinations
RU2701842C1 (ru) Способ формирования запроса информации о файле для осуществления антивирусной проверки и система для реализации способа (варианты)
RU2617923C2 (ru) Система и способ настройки антивирусной проверки
US8272031B2 (en) Policy-based virtualization method involving adaptive enforcement
RU2614929C1 (ru) Способ передачи антивирусных записей, используемых для обнаружения вредоносных файлов
CN107305609B (zh) 用于防止对音频数据的非授权访问的系统和方法
RU2587424C1 (ru) Способ контроля приложений
RU2584505C2 (ru) Система и способ предварительной фильтрации файлов для контроля приложений
RU2708355C1 (ru) Способ обнаружения вредоносных файлов, противодействующих анализу в изолированной среде
RU2587426C2 (ru) Система и способ обнаружения направленных атак на корпоративную инфраструктуру
RU2702053C1 (ru) Способ снижения нагрузки на сканирующую подсистему путем дедупликации сканирования файлов
EP4379586A1 (en) Information processing method, program, storage medium