Review of the program for proactive protection of the computer Defense Wall Hips. Purpose of the Installer Privileges through AUTO-CONTAINMENT alerts. Automatic creation of HIPS rules in "Training Mode" and in "Safe Mode"

General

When component Hips Enabled, the activity of programs is limited in accordance with the rules. Situations for which the rule is not specified is permitted depending on the HIPS mode, program rating and other conditions.

Usually, a safe mode allows trusted programs any activity that is not prohibited by the rules, except for the launch of unidentified files. Running unidentified programs, as well as any action of these programs, stopped by alerts.

Paranoid mode stops any activity of any programs not provided for by the rules.

In the mode of study, with any activity as not provided for by the rules of activity, new allowing rules will be automatically created.

Rules are presented on the tab HIPS → Hips Rules in the form of a list apps and appointed by him sets of rules.

As applications can act accurate paths to files, path patterns with symbols * and? , as well as groups of files. In the paths and their templates can be used. File groups are sets of paths or templates, they are configured on the tab. File rating → File groups. I emphasize that applications in HIPS rules are identified only by their ways, and not on hash, etc.

The set of rules assigned to the application consists of two tabs: "Access rights" and "Protection Setting". The first is the right of the application itself, on the second - on the contrary, its protection from other programs. The application may have either own set of rulesor some of the prefigured sets: they are configured on the tab HIPS → Rule Sets.

The pre-installed set of the "Windows System Application" rules allows any activity, the "allowed application" set - any, but does not regulate the launch of subsidiaries; The "Insulated Appendix" set is hard forbid any activity; The "limited application" kit prohibits almost everything except window messages and access to the monitor, and does not regulate the launch of subsidiaries. You can not only create your own sets, but also to change the pre-installed.

Starting from the CIS version 10.0.1.6223, the HIPS set "Isolated application" rules is renamed to the "application running in a container". In my opinion, this is an erroneous translation of the "Contained Application" name, as in reality the HIPS rule has no relation to the container (virtual environment). To avoid confusion, I recommend rename this set back to the "insulated application", and in the article it will be called this.

A special case is a set of "installation or update" rules, it gives apps. Programs with such privileges freely perform any actions (except for clearly prohibited rules), incl. Launch any programs, and their subsidiaries also receive the privileges of the installer. Executable files created by such programs automatically become trusted.

Different source configurations Comodo Internet Security differ in the initial set of rules and the controlled spectrum of programs. For the most complete HIPS protection, you must initially select the configuration Proactive Security And already to maintain further configuration.

When restricting programs access to various HIPS resources relies on the section data HIPS → Protected Objects. For example, a file or directory can be protected from a modification only if its full name is suitable for any of the templates on the Protected Files tab. So, if you want to prohibit any program to change files on a D: (regardless of their type), you must first apply this disc to the protected list.

Then, when creating specific rules, it will be possible to vary the restrictions on access to one or another protected objects by clicking "Change" in the "Exceptions" column.

Most appropriate to use HIPS in Safe modeBy turning off the option Create rules for secure applications, or in Paranoid. Then the procedure for determining the access of the program to the resource will be the following:

As you can see, in HIPS, the action "ask" expresses the absence of the rule (in contrast to the firewall, where it prescribes to show alert).

So, the highest priority has the Allowed Top Rule, suitable for this program; Then - the "blocked" tab; Then - the action specified in this rule if it is definitely; Then - the "Allowed" tab of the following rule, etc. In the absence of an unambiguous rule, access is allowed if (i) the privileges of the installer, or (ii) the program is "trusted", and the HIPS mode is "secure", or (iii) the option "Do not show alerts: Allow requests". When none of these conditions are running - access is locked if the option "Do not show alerts: block requests" is noted, or an alert is issued if this option is disabled.

A special case: if the program is executed in a virtual environment and / or with the restrictions of AUTO-CONTAINMENT, then in the absence of the rule it will be given a permission (like the option "Do not show alerts: Allow requests"). In addition, in the virtual environment there is no protection of files and registry, even with clearly specified forbids.

Management of Program Rights through Alerts

When answering HIPS alerts, the applications are assigned rules: temporarily or constantly, depending on the option "Remember My Choice".

Important moment: Rules are assigned an application that is indicated on the left part of the alert. For example, if you ask about the launch of an unknown program by the conductor, the rules will be assigned to the conductor. Typical newbies errors: Select the option "Block and complete execution" in such alert (thus killing the process of the conductor), or the "Isolated application" version (rigidly limiting the right of the conductor), or the "Installation or Update" option (thereby having lost almost all protection ). Usually the most reasonable choice in a notification of the program startup - "Allow" or "only block".

Options "Allow" or "Block only" in various Alerts HIPS means permission or prohibition only with respect to a certain resource. For example, if you enable the application to create a file C: \\ Test \\ a.exe, then an attempt to create a file C: \\ Test \\ B.exe will again lead to alert. To allow the application to create any files in the C: \\ TEST directory, you have to edit the rule via the CIS settings window. Unfortunately, the alerts do not provide permissions for catalogs, templates, groups, etc. However, through the alert, you can apply to the application of any set of rules, which is predetermined on the tab. HIPS → Rule Sets.

If, when answering an alert, enable in it the "Remember My Selection" option, the set of rules assigned to the specified application will change; If there is no HIPS rules for this application - it will be created at the top of the list. When choosing an option Allow or Only block The rules will add permission or prohibition to accuracy for a specific resource (file, COM interface, etc.). When choosing any set rule New rules will not be added to the old, and completely replace them, i.e. The rules assigned to this application will stop acting earlier.

If you disable the "Remember My Selection" option, then the assigned permissions application, prohibitions or rule sets will terminate the operation with the completion of this application or even earlier, and no changes in the CIS configuration will occur. To understand the logic of the work of these temporary rules, it is convenient to imagine that an imaginary entry in the list of HIPS rules is created with each response to alert (without memorization). All "imaginary" recordings are located in the list of rules below the "real" records, but new "imaginary" - above the other "imaginary". This means that the same application can be seen several times through alerts various sets of rules (without memorization), and all these sets of rules will act. At the same time, the highest priority will have "real" rules, then the freshest of the "imaginary", then earlier, etc. But as soon as any "present" rule (with memorization) is created - all "imaginary" rules for all applications are destroyed.

For example, having received an alert about any program, we will appoint it a set of "Isolated application" rules, without memorization. By default, the "All Applications" group is allowed to change temporary files, so this program can still do this, despite the fact that the "Isolated application" set is prohibited. If you assign this set of rules with memorization - changing temporary files will be prohibited, since the new HIPS rule will be created at the top of the list.

Some exceptions are noticed from the described work order when the "Remember My Choice" option is disabled. First, the "imaginary" permissions are not created for launching applications (i.e., when you restart the same application, an alert will again arise). Secondly, if any program is allowed through the alert "Changing the user interface of another application", it will temporarily be able to send window messages to any applications, and not only the specified one.

Monitoring program startup

The ability to launch any program is set in HIPS Rule for running Programs, not for the started. When "paranoid mode", the start of the program is permitted only if there is an explicit permission in the rules. Under the "safe mode" in the absence of the Ruing rule, it is allowed, if the trusted program is trusted. Exceptions - executing programs with installer privileges, as well as under the action of virtualization and / or restrictions AUTO-CONTAINMENT.

So, suppose that when "safe mode" the HIPS program Parent.exe is running and tries to run the child.exe program. In the absence of additional rules, the launch will be silently, only if both programs are trusted. If the child.exe program is unidentified, and in the HIPS rules for the Parent.exe (or group containing it), there is no permission to start the child.exe program (or containing it group), regardless of the HIPS rules for the program of the CHILD.EXE program itself And regardless of the rating of the Parent.exe program before launching, an alert will arise (and relative to the Parent.exe program).

Thus, to allow the fulfillment of an unidentified program, to set a little permitting rules for it itself - permission is required to launch its parent process, as an option - the group "All applications".

If you want to stop the launch of the program, then, having received an alert regarding the parent process, usually you should disable memorization option and select Block → only block. Attention! Item "Block and complete execution" in alert on the program startup Means the completion of the work parent process.

The ability to launch any program define the rules not only HIPS, but also Auto-Containment. Run will be blocked if you require at least one of these components. If the program starts allowed in the HIPS rules, and the Auto-Containment rules prescribe isolate this program - it will start isolated.

It is important to know that, unlike AUTO-CONTAINMENT, in HIPS a child process does not inherit parental restrictions: if you allow a dubious program to run safe, then damage may be damaged on behalf of the secure program.

Automatic creation of HIPS rules in "Training Mode" and in "Safe Mode"

In certain modes, the creation of HIPS rules is automatically:

  • if the "Training Mode" is enabled and the option "Do not Show Alerts" is disabled or installed in "Block requests" mode, you will create rules that resolve each noticed action of any applications;
  • if the "Safe Mode" is enabled, the "Create rules for secure applications" option is enabled, and the option "Do not show alerts" is disabled or installed in "Block requests" mode, then rules will be created allowing each noticable effect of trusted applications.

In most cases, these modes do not benefit and apply only for testing or preparation for switching to "paranoid mode".

The rules for the program (any at the "learning mode" or trusted during "safe mode") are created as follows:

The view of the new rule will depend on the requested action:

  • When one program launches another, the first creates a rule allowing to run a particularly specific program.
  • When the program changes the file or the registry key included in the list on the tab HIPS → Protected ObjectsThe form of the rule will depend on how the template of this resource is recorded.
    • If at the end of the template stands sign | The rule will create a permitting change of the specifically of the object to which the program applied. For example, the program creates a text.txt file on the desktop. Does it correspond to the template ?: \\ users \\ * \\ desktop \\ * | . So, the rule will be created allowing the C: \\ Users \\ Name \\ Desktop \\ Text.txt file.
    • If at the end of the template there is no sign | The rule will be created allowing the change in any object according to this template. For example, the program creates a D: \\ Prog.exe file. In the list of protected objects, this file corresponds to the * .exe template. So, the rule will be created that allows this program to change any EXE files.
  • When contacting a program to any of the following resources, rules automatically create access to it simultaneously to them all:
    • Protected COM interfaces,
    • Windows hooks and hooks applications,
    • Interprocessable memory access,
    • Interrupting applications,
    • DNS requests,
    • Disk (direct access),
    • Keyboard,
    • Monitor.

Process protection

In the HIPS rules window for any application, it is possible to limit not only the own activity of this application, but also the impact on its operation of other programs. For this tab Setting protection It is indicated what actions with this application will be blocked, and in the exception window (button Change) - What programs they will be resolved. Alerts here are not provided - only permission or prohibition, regardless of the rating. The action prohibited in this way will be blocked, regardless of the rules and rating of other programs.

In particular, using this function, CIS self-defense is carried out from unloading its processes and access to memory. Therefore, even when Hips is not needed, it is desirable to enable it at least with the option "Do not show alerts: Allow requests" (in "Safe" or "Paranoid" mode).

The side effect of CIS self-defense is a huge number of entries in the "Protection Event +" log when using some programs, for example, ProcessExplorer. You can get rid of optional locks, allowing individual applications access to the memory of the Comodo Internet Security group.

I note that the protection against the interruption of applications does not cover all ways to unload the process. So, many applications can be completed by window messages or by access to memory. To protect the application from such completion methods, you will need to note in its rules on the "Protection Setting" tab, not only the option "Interrupt application operation", but also others.

Institute privileges

The meaning of the privileges of the installer

Under certain conditions, the application receives the privileges of the installer, which are as follows:

  1. HIPS Allows such an application all that is not prohibited in rules explicitly, i.e. Works like the mode "Do not show alert: Allow requests";
  2. AUTO-CONTAINMENT does not isolate the programs running by this application;
  3. While this application works, its subsidiaries (as well as their child processes, etc.) are performed with the privileges of the installer;
  4. Executable files that create this application (or subsidiary processes inherited its privileges) are automatically becoming trusted.

Automatic file enhancing to trusted occurs only when the option "Trust applications installed using trusted installments" on the tab . Also in some special cases of the installer privileges are given applications in the "truncated" form: without, or when the user meets the resolution in (if the program is unidentified and has a sign of the installer), or when the program is appointed, or when this rule is applied to it or when the program Inherits these privileges from the parent process.

Automatic entry of the application by the privileges of the installer

The application automatically gets the privileges of the installer if it is trusted and has a sign of the installer. To see if the application has a sign of the installer, it is possible in the list of akiva processes.

In which properties of the application is the sign of the installer, it was said: judging by the experiments, the installers are considered to be programs that in the file name or in File Version Info (in the FileDescription, ProductName, InternalName or OriginalFileName field) contains the word Install, Setup or Update; MSI files are also considered to be installers.

In old versions of Cis, the signs of the installer were other, in particular, the installers were considered to be the programs requested during the launch of the administrator's right, the program whose size exceeds 40 MB, and others. Because of this, many application programs were mistakenly endowed the privileges of the installer (in particular, PortableApps- Assembly), which created an obvious danger. In the CIS 10 version, this threat is significantly lower.

Appointment of Installer Privileges through AUTO-CONTAINMENT Alerts

In the standard configuration "Proactive Security" when you start an unidentified program that has an installer feature, alert appears, offering a choice of four options: "Block", "Isolated Run", "Starting without restrictions" when the "Trust this Annex" option is disabled Without restrictions, "when the option is enabled" Trust this Annex ".

The "Block" option means a ban ban. The "Isolated Start" option means that the program will be running isolated in accordance with the Auto-Containment rules.

If you enable the "Trust this Annex" option and select the "Startless Limit" item, the program will be trusted and starts with the privileges of the installer. At the same time, the AUTO-CONTAINMENT rule will be created, eliminating the subsidiary processes of this program from isolation. Usually this rule does not make sense, and I recommend removing it.

If you select the "Start without restrictions" item when the "Trust this Annex" option is disabled, the program will temporarily start with "truncated" installer privileges, without trust in the created files. Those. Points, and, but not.

Generally speaking, such alert occurs if the following conditions are fulfilled:

  • component AUTO-CONTAINMENT is included,
  • on the tab CONTAINMENT → CONTAINMENT Setup Enabled option "Detect programs requiring increased privileges",
  • there is also a disabled option "Do not show alerts when promoting elevated privileges",
  • the program run must, according to the Auto-Containment rules, start virtually and / or with limitations,
  • the program launched has a sign of an installer or requests administrator rights when starting.

As you can see, to display alert, the program started does not have to be unidentified - it is only required that the auto-containment rules prescribe it isolate. In addition, the program may request when starting the administrator right, but not to be an installer.

If you enable the option "Do not show alerts when queries of increased privileges", then in the menu of this option you can select automatic insulation (recommended) or blocking unidentified installers without alerts. Also there are options to "run without restrictions" and "launch without restrictions and trust" - of course, choose them very dangerous.

Appointment of Installer Privileges through Alerts and HIPS Rules

Installer privileges can be assigned to the program explicitly via HIPS: It is the "Installation or Update" rule.

When the HIPS alert arises regarding the activity of any application, you can choose in the window of this alert Process as → Installation or Updateremembered or without.

If you note the memory option and select the "Installation or Update" option, the appropriate HIPS rule will be created and the application will receive the privileges of the installer. If you choose this option without a memorization option, the rule will not be created, and the application will receive a "truncated" option privilege of the installer, without trust of the created files (temporary launch of an unidentified installer without restrictions AUTO-CONTAINMENT).

Through the CIS settings window, you can assign a "Installation or Updating" rule in advance. Obviously, in this case, the application will receive the privileges of the installer without alerts and fully.

Trust Files created with Installer Privileges

As already mentioned, executable files created by trusted installers automatically become trusted if the option "Trust applications installed using trusted installers" is enabled on the tab File rating → Setting up file rating. It was also said that information about creating files by trusted installers is entered into the database, even if this option is disabled.

Judging by the experiments, when the DPUD is turned off, information about creating files directly by trusted installers is entered into the CIS base, and not by any programs that have installer privileges. Those. If the file is created by a child trusted installer or a program that received installer privileges based on HIPS rules, it is not considered that this file is created by a trusted installer. But if the DPUD option is enabled, then files created by any programs, one way or another by the installer's privileges, are noted in the database as created by trusted installers.

Determining whether the file is created under the action of the Installer Privileges, CIS differs from the creation and copying of the file. So, if a program that has the privileges of the installer will complete the normal copy of the file, the file will not be trusted from this. But if under the action of the Installer privileges will occur, for example, the extraction of a file from the archive - CIS will trust this file and to all identical to it (when the DPU option is enabled).

To some extent privileges of the installer work in a virtual environment: If a trusted installer is virtually executed, but creates files in a real environment (in the shared access area), these files are marked in the database created as created by a trusted installer. A similar situation occurs when working in a real environment with the restrictions of AUTO-CONTAINMENT. In my opinion, this is flawed, and potentially dangerous.

Although the DPUD option improves the convenience of using CIS, there is a certain meaning in its disconnection. In particular, when this option is enabled, CIS can trust potentially undesirable programs that are installed with secure applications.

It happens that the installer of any application, even if a trusted, in the process of work creates and launches unidentified programs. Usually CIS does not interfere with their work, as they inherit the privileges of the installer. However, as stated above, inherited privileges are not constantly (which is justified by security considerations), and sometimes in the installation process can work proactive protection. If this manages only HIPS alert, then to continue the installation, it is enough to answer it. But if the HIPS is configured to block without alerts or if AUTO-CONTAINMENT is used, the risk of incorrect installation of the application occurs. This risk is especially high if the option "Trust applications installed through trusted installers" or "detect programs requiring increased privileges" is disabled.

To install the applications to be without interference from CIS, I propose to run installers through a special item in the context menu. To do this, the simplest program that launches the file specified in its command line arguments. It will be needed to download the archive with the program (Password CIS), place the program at any convenient place, add it to trusted and run - the new item will be prompted to add a new item to the context menu (it is removed by re-started). The program is written on AutoIt3, the source code and the converter attached in the Source folder: in case of doubt you can generate a similar program by checking its code and signature of the converter.

Then you need to assign the HIPS "Installation and Update" rule, as well as the AUTO-CONTAINMENT rule:

  • select the "ignore" action,
  • in the criteria, specify the location of the program,
  • leave the disabled option "Do not apply the selected action to child processes".

Now, so that the installation of any secure application has passed freely, it will be enough to call on the installer, holding down the SHIFT key, the context menu and select the "Comodo: Run as installer" item. As a result, even when the installer program itself is completed, its child processes will continue to be performed with the privileges of the installer. These privileges will remove after closing the special window with the text "Click OK upon completion of the installation". But even then these processes will remain excluded from the control of AUTO-CONTAINMENT.

In this comparative testing, we analyzed the popular personal antiviruses and network screens that are in their composition HAPS components (HOST Intrusion Prevention Systems), on the possibility of preventing malicious programs to penetrate the kernel (hereinafter Ring 0) the Microsoft Windows operating system. If a malicious program manages to penetrate the kernel level, it receives full control over the sacrifice computer.

Summary:

Introduction

Host Intrusion Prevention Systems - HIPS (HOST Intrusion Prevention Systems - HIPS) is gaining popularity among antivirus manufacturers, network screens (Firewalls) and other malware protection tools. Their main goal is to identify and block malicious actions in the system and prevent its infection.

The most difficult task of protection is reduced to preventing malware penetration onthe operating system kernel level (eng. Kernel LEVEL) operating in the "zero processor ring" (Ring 0). This level has maximum privileges when performing commands and access to computing resources of the system as a whole.

If the malicious program managed to penetrate the kernel, it will allow it to get complete and, in fact, unlimited control over the sacrifice computer, including the possibility of disabling protection, hiding its presence in the system. Malicious program can intercept the user entered by the user, send spam, conduct DDoS attacks, to replace the contents of search queries, do something else, despite the formally working antivirus protection. Therefore, for modern protective equipment, it becomes especially important to prevent the malicious program in Ring 0.

In this test, we compared the popular antiviruses and network screens that are in their composition HIPS components, on the possibility of preventing malicious programs to penetrate the kernel (hereinafter Ring 0) Microsoft Windows XP SP3 operating system.

Selection of malicious programs for testing

We decided not to model penetration into Ring 0 by any artificial means, but to spend a test for real malware. At the same time, the latter were taken in such a way as to cover all used ways to write in Ring 0, which are actually used in the "wildlife" (in the wild):

  1. StartServicea. - Loading the malicious driver is made by replacing the system driver file in the% Systemroot% \\ System32 \\ Drivers directory with subsequent load. Allows you to download the driver without modifying the registry.
    ITW Massage: High
  2. SCM. - Use to register and download the service management manager driver. This method is used by both legitimate applications and malicious programs.
    ITW Massage: High
  3. Knowndlls.- Modification of the \\ KnowNDLLS section and copies of one of the system libraries in order to load the malicious code by the system process.
    Analysis of ITW: average
  4. RPC. - Creating a driver and download via RPC. Example of use: the loader of the famous rustock.c
    Ease of ITW: Rare
  5. Zwloaddriver - Substitution of the system driver malicious, by moving and subsequent direct load.
    ITW Massage: High
  6. Zwsystemdebugcontrol - removal of interceptions installed by HIPS to control system events, in SDT using Debug-privileges.
    ITW Massage: High
  7. \ Device.\ PhysicalMemory. - Removing the interceptions installed by HIPS to control system events in SDT using the record to the physical memory section.
    Analysis of ITW: average
  8. ZWSetSystemInformation - Loading the driver without creating keys in the registry by calling ZWSetSystemInformation with the SystemloadAdcallImage parameter.
    Analysis of ITW: average
  9. Createfilea \\\\. \\ PhysicalDrivex - Sectoral reading / writing disk (modification of files or main boot records of the disk).
    Analysis of ITW: average

Thus, nine different malicious programs were selected using the above methods of penetration into Ring 0, which were then used in testing.

Methodology of comparative testing

Testing was conducted under the control of VMWare Workstation 6.0. For the test, the following personal means of anti-virus protection and network screens were selected:

  1. PC Tools Firewall Plus 5.0.0.38
  2. Jetico Personal Firewall 2.0.2.8.2327
  3. Online Armor Personal Firewall Premium 3.0.0.190
  4. Kaspersky Internet Security 8.0.0.506
  5. AGNITUM OUTPOST Security Suite 6.5.3 (2518.381.0686)
  6. Comodo Internet Security 3.8.65951.477

Unfortunately, for technical reasons, antiviruses of F-Secure and Norton were excluded. The built-in HIPS does not work separately from the enabled antivirus monitor. And since the selected samples of malicious programs could be detected signaturely, they could not be used. Use these antiviruses with old antivirus bases (to avoid a signature detect) did not fit, because The update process in these products may affect and not only anti-virus databases, but also executable modules (protection components).

Why did we get other popular antivirus foods and network screens in the test, which are there many? Yes, because they do not have an HIPS module. Without it, they have no chance of preventing the penetration into the OS kernel.

All products were installed with the maximum settings if they could be set without a fine manual change of HIPS settings. If during installation was offered to use the mode of auto-learning - then it was used until the launch of malicious programs.

Before testing, the legitimate utility CPU-Z (a small program that reports information about the processor installed in the computer) was launched and the rule was created that offered a test product (its HIPS component). After creating the rule on this utility, the auto-learning mode was disconnected and a snapshot of the system state was created.

The malware specially selected for the test was shot alternately, the HIPS responses were recorded to events related directly to installing, registering, downloading driver and other attempts to write in Ring 0. As in other tests, the system was refunded before checking the next malicious program. The beginning of the snapshot.

In the antivirus participating, the file monitor has been disconnected, and in Kaspersky Internet Security 2009, the malicious application manually was placed in weak restrictions from the incredulous zone.

Test steps:

  1. Creating a snapshot of a pure virtual machine (main).
  2. Installing the test product with maximum settings.
  3. Work in the system (installation and launch of Microsoft Office applications, Adobe Reader, Internet Explorer), enabling the learning mode (if any).
  4. Marking of the number of messages from the test product, the launch of the CPU-Z legitimate utility and the creation of rules for it.
  5. Disconnecting the auto-learning mode (if any).
  6. Translation of the test product into an interactive mode of operation and the creation of the next snapshot of the virtual machine with the installed product (auxiliary).
  7. Creating pictures for all tested products, performing rollback to the main image and re-conducting paragraphs 2-4.
  8. Select a picture with a tested product, loading OS and alternately launching malicious programs every time with a rollback to the original state, observation of the HIPS reaction.

Results of comparative testing

A plusthe table means that there was a HIPS response to a certain event from a malicious program to penetrate into Ring 0 and was able to stop this action.

Minus - If the malicious code managed to get into Ring 0, or managed to open the disk to the sectoral reading and write.

Table 1: Results of Comparative Testing HIPS-Component

Penetration method in Ring 0 PC Tools. Jetico. Online Armor Kaspersky. Agnitum Comodo.
StartServicea.
-
+ + + -
+
SCM.
-
+ + + -
+
Knowndlls.
-
+ + -
+ +
RPC.
-
+ + + -
+
Zwloaddriver
+
-
+ + -
+
Zwsystemdebugcontrol
-
+ + + + +
\\ Device \\ PhysicalMemory
+ + + + + +
ZWSetSystemInformation
-
+ + + + +
Createfilea \\\\. \\ PhysicalDrivex
-
-
+
+ + +
Total stopped:
2
7
9
8
5
9
Number of alerts and requests for user action
Few
Lots of Lot Few Middle
Lot

It is worth noting that with full disabling the training mode, some of the test products (for example, Agnitum Outpost Security Suite 6.5) can show the best result, but in this case the user is guaranteed to face a large number of all sorts of alerts and actual difficulties in the system, which has been reflected in preparation of the methodology of this test.

As the results show, the best products to prevent malware penetration at the OS kernel level are Online Armor Personal Firewall Premium 3.0, Comodo Internet Security 3.8, Kaspersky Internet Security 2009.

It should be noted that Online Armor Personal Firewall Premium is an advanced firewall and does not contain classical antivirus components, while two other winners are comprehensive solutions of the Internet Security class.

The reverse and negative side of the work of all HIPS components is the number of all sorts of messages displayed and user requests. Even the most patient of them will refuse reliable HIPS, if he will be too often to bother him about the discovery of suspicious actions and the requirements of an immediate response.

The minimum number of user actions requests were observed at Kaspersky Internet Security 2009, PC Tools Firewall Plus 5.0 and Agnitum Outpost Security Suite 6.5. The rest of the products often bored by Alerts.

"Behavioral analysis is a more efficient way to prevent infection by an unknown malware than heuristic methods based on the analysis of executable files. But in turn, they require certain knowledge from the user and its response to certain events in the system (creating a file in the system directory, creating a steadwork key to an unknown application, modifying the system process memory, etc.), - comments Vasily Berdnikov, Expert Website.

"In this comparison, the most famous products with on board Hips were selected. As can be seen, only three products were able to adequately prevent the penetration into the zero ring. Also, a very important parameter - the number of messages (alerts) arising from everyday work for the PC and requiring a user solutions. It is here that the technological advantage of products is determined - to control the system to maximize and at the same time use all sorts of technologies to reduce the number of questions asked by HIPS when starting, installing programs, "the expert notes.

The HIPS system using your own driver intercepts all appeals to the OS kernel. In the event of an attempt to perform a potentially dangerous action by the software, the HIPS system blocks the execution of this action and gives a request to the user who decides to allow or prohibit the execution of this action.

The basis of any HIPS is the rules table. In some products, it is not separated in any way, in others - is divided into intermediate tables in accordance with the nature of the rules (for example, rules for files, rules for networks, rules for system privileges, and so on), in the third division of the table occurs according to applications and their groups . These systems control certain system events (for example, such as creating or deleting files, access to the registry, memory access, launching other processes), and each time these events should occur, HIPS is checked with its rules table, after which it acts In accordance with the settings specified in the table. The action is either permitted or prohibited, or HIPS sets the user the question that she should be taken in this particular case.

A feature of HIPS is a group policy that allows you to apply the same permissions for all applications entered in a specific group. As a rule, applications are divided into trusted and untrusted, as well as intermediate groups (for example, weakly limited and strongly limited). Trusted applications are not limited in their rights and opportunities, weakly limited are prohibited the most dangerous for the action system, only those actions that cannot cause substantial damage are allowed, and incredulous cannot carry out practically no systematic action.

HIPS rules contain three base components: the subject (i.e. an application or a group that causes a specific event), the action (allow, prohibit or asking the user) and the object (what the application or the group is trying to access). Depending on the type of object, the rules are divided into three groups:

  • files and system registry (object - files, registry keys);
  • system rights (object - system rights to perform certain actions);
  • networks (object - -press and their groups, ports and directions).

Views Hips.

  • HIPS, in which the decision is made by the user - When the Application Programming Interface interceptor (API) -Function intercepts any application function, the question of further action is derived. The user must decide whether to run the application or not, with what privileges or restrictions to run it.
  • Hips in which the decision is made by the system - The decision is taken by the analyzer, for this the developer creates a database into which the rules and decision-making algorithms are entered.
  • "Mixed" HIPS system - The solution accepts the analyzer, but when it cannot make a decision or enabled Settings "On Decision Decision" solution and choosing further actions are provided to the user.

Advantages of hips

  • Low system resource consumption.
  • Not demanding of computer hardware.
  • Can work on various platforms.
  • High performance confrontation with new threats.
  • High efficiency counteracting roottites operating at the application level (User-Mode).

Disadvantages of HIPS.

  • Low efficiency of countering roottites operating at the kernel level.
  • A large number of calls to the user.
  • The user must have knowledge of the principles of functioning

Changes in the HIPS system parameters should be made only by experienced users. Incorrect setting of these parameters can lead to unstable system operation.

Intrusion Prevention System (HIPS) Protects from malicious programs and other unwanted activity that are trying to adversely affect the security of the computer. In the invasion prevention system, an extended behavior analysis is used in combination with the possibilities of detection network filtering capabilities, so that running processes, files and registry sections are tracked. The invasion prevention system on the node differs from the protection of the file system in real time and is not a firewall; It only tracks the processes running in the operating system.

HIPS options are available in the section. Additional settings (F5)\u003e Antivirus\u003e Invasion prevention system > Basic information. HIPS status (enabled / disabled) is displayed in the main window of the ESET NOD32 AntiVirus program, in the Installation section\u003e Protecting computer.

uses embedded self-defense technologies that does not allow malware damage or turn off protection against viruses and spyware. Thanks to this, the user is always confident in computer security. To disable HIPS or self-defense system, you need to restart Windows.

Advanced memory scan module It works in combination with an exploit blocker than enhanced protection against malicious programs that can avoid detecting products to protect against malicious programs through the use of intentional confusion or encryption. The advanced default memory scan module is turned on. For more information about this type of protection, see Glossary.

Blocker exploit Designed to protect applications that are usually vulnerable to exploits, such as browsers, programs for reading PDF files, postal clients and MS Office components. The default exploit blocker is turned on. For more information about this type of protection, see Glossary.

Four filtration modes are available.

Auto mode: All operations are enabled with the exception of those that are blocked by predefined rules designed to protect the computer.

Intelligent mode: The user will receive notifications only about very suspicious events.

Interactive mode: The user will be offered to confirm operation.

Policy-based Mode: operations are blocked.

Training Mode: Operations are included, and after each operation creates a rule. The rules created in this mode can be viewed in the rules editor, but their priority is lower than that of the rules generated by manually or automatically. If the Education Mode is selected in the drop-down list of the HIPS filtering modes, the parameter becomes available. Training mode will end. Select duration for learning mode. Maximum duration - 14 days. When the specified period is complete, you will be prompted to change the rules created by the HIPS system in the training mode. In addition, you can select another filtering mode or postpone the solution and continue to use the learning mode.

The invasion prevention system on the node tracks events in the operating system and responds to them accordingly on the basis of the rules that are similar to the rules of personal firewall. Click the Edit button to open the HIPS Rules Control window. Here you can choose, create, change and delete the rules.

The following example will be shown how to limit the unwanted behavior of applications.

The principle of operation of HIPS (Host-Based Intrusion Prevention System): Detailed description. General parameters HIPS and AUTO-SANDBOX in Comodo Internet Security 8. Viruscope

Hips

HIPS modes

When the HIPS component is enabled, the activity of programs is limited in accordance with the rules. The initially available rules establish permissions for some system programs, and in other cases prescribe the user. The user can add its rules through the "HIPS Rules" tab, or they will be created through its responses to alerts, or to be created automatically when the "Training Mode" is enabled. You can disable alerts, prescribing to always resolve or always prohibit activity in the absence of the rule.

The display of alerts about the program depends on it and the HIPS mode. In "Safe Mode" alerts will be issued only relatively unidentified programs that trusted will be silently given permission (in the absence of prohibitive rule) to any action, except for the launch of any unidentified application. In the "paranoid mode" alerts arise for all programs, regardless of reputation.

In the "Pure PC" mode, alerts occur only for new unidentified programs, i.e. which were not on the disk before, and the "old" perceived like trusted in the "safe mode". The "Pure PC" mode works as follows: From the moment this mode is turned on, the creation of new programs is tracked, i.e. executable files. If a new program is less than 40 MB and does not have a reputation of "trusted", then it is entered into as "unidentified." Only programs from the "Unidentified" list will be limited in rights. The remaining programs less than 40 MB will be perceived similarly to trusted: they will be perceived by HIPS, and Auto-Sandbox, and the firewall.

The "Pure PC" mode is very problemful, and I do not recommend using it. In particular, if you have to put a new unknown program in any directory and change its name, the program will be considered "old", i.e. will receive permission. Nevertheless, you can implement the correctly working analogue of the "Pure PC" mode in the "secure mode" by adding all executable files to the trusted method proposed in.

The procedure for the "secure regime" with the "Create Rules for Safe Applications" option is enabled, as well as the "Learning Modes". Work in the "Clean PC" mode is similar to "safe", but it is distinguished by the fact that unidentified files that were on the disk to turn on this mode will be processed similarly to trusted ("trust" it will be not only HIPS, but also Auto-Sandbox, and a firewall ).

I will say a special case: if the program is executed in a virtual environment and / or with AUTO-SANDBOX constraints, then permission will be given any permissive or prohibitive rule (like the option "Do not show alerts: Allow requests"). In a virtual file protection environment and the registry will not be at all, even with clearly specified forbids. But, of course, a virtual environment and / or auto-sandbox will be applied to this program and its subsidiaries.

Management of Program Rights through Alerts

If you select "Allow" or "only to block" in the Alert, then this permission or prohibition will only be valid for a certain resource. For example, if you enable the application to create a file C: \\ Test \\ a.exe, then an attempt to create a file C: \\ Test \\ B.exe will again lead to alert. To allow the application to create any files in the C: \\ TEST directory, you have to edit the rule via the CIS settings window. Unfortunately, the alerts do not provide permissions for catalogs, templates, groups, etc.

One exception is noted: if any program is allowed through the alert "Changing the user interface of another application", you will create a rule that allows this program to send window messages to any applications, and not only the specified one.

However, via the alert can be applied to the application of a predetermined policy. These policies are created on the HIPS tab\u003e "Rule Sets". The pre-installed policy "Windows System Application" allows any activity, the "Allowed Appendix" policy - any, but does not regulate the launch of subsidiaries; The "Isolated Annex" policy is harshly prohibited any activity; The "limited application" policy prohibits almost everything except window messages and monitor, and does not regulate the launch of subsidiaries. You can not only create your own policies, but also to change the pre-installed.

Permissions, prohibitions and policies assigned to any application through alerts act differently, depending on whether the "Remember My Choice" option is enabled. If you enable this option and select the option "Allow" or "only block", the set of rules assigned to this application will change: it will be added to it or prohibit accuracy for a specific resource (file, interface, etc.). If you enable the option "Remember My Choice" and choose any set of rules - new rules will not be added to the old, but will completely replace them; those. The rules assigned to this application will stop acting earlier. If there is no HIPS rules for this application - it will be created at the top of the list.

If you disable the "Remember My Selection" option, the assigned permissions application, prohibitions or policies will terminate with the completion of this application or even earlier, and no changes in the rules will occur. To understand the logic of the work of these temporary rules, it is convenient to imagine that with each response to the alert (without memorization), a "phantom" entry is created in the list of HIPS rules. All "phantom" records are located in the list of rules below the "real" records, but new "phantom" - above other "phantoms". This means that the same application can be assigned several policies through alerts several times (without memorization), and all these politicians will act. At the same time, the highest priority will have "real" rules, then the most fastest of "phantom", then earlier, etc. But as soon as any "present" rule (with memorization) is created - all "phantom" rules for all applications will be destroyed.

For example, you will assign any program "Insulated Appendix" policy, without memorizing. By default, the "All Applications" group is allowed to change temporary files, so this program can still do this, despite the fact that the "Isolated application" policy prohibits. If you assign this memorization policy - changing temporary files will be prohibited, since the new HIPS rule will be created at the top of the list.

Monitoring program startup

The ability to launch any program is set in HIPS Rule for running Programs, not for the started. When "paranoid mode", the launch of the program is permitted only if there is a clear resolution in the rules (for). With "safe mode" in the absence of the rule, the launch is allowed, if the starting program, and the launched program have a reputation of "trusted".

So, suppose that when "safe mode" the HIPS program Parent.exe is running and tries to run the child.exe program. In the absence of additional rules, the launch will be silently, only if both programs are trusted. If the child.exe program is unidentified, and in the HIPS rules for the Parent.exe (or group containing it), there is no permission to start the child.exe program (or containing it group), regardless of the HIPS rules for the program of the CHILD.EXE program itself And regardless of the rating of the Parent.exe program before launching, an alert will arise (and relative to the Parent.exe program).

Thus, to allow the fulfillment of an unidentified program, to set a little permitting rules for it itself - permission is required to launch its parent process, as an option - the group "All applications".

If you want to stop the launch of the program, then, having received alert regarding the parent process, you should disable the memorization option and select "Block"\u003e only block.

Attention! Item "Block and complete execution" in alert on the program startup Means the completion of the work parent process. Also the choice of any policy (i.e., the set of rules) in this alert will appoint it to the parent process. Accordingly, the inclusion of the option "Remember My Choice" in such alert will result in the creation / change of the HIPS rule for the parent process. Typical user error - policy selection in alerting program running program. The correct procedure is the right of action - you first only allow the launch, and the policy is to choose in the subsequent alert about the own activity of the program.

It is important to know that, unlike AUTO-SANDBOX, in HIPS a child process does not inherit parental restrictions: if you allow a dubious program to start a program that has permission, then safety will be at risk.

The ability to launch any program define the rules not only HIPS, but also. Run will be blocked if you require at least one of these components. If the start is allowed in the HIPS rules, and the Auto-Sandbox rules prescribe isolate this program - it will start isolated.

The described work order has certain exceptions. The first exception concerns programs that are already isolated in Sandbox. The child processes of these programs will be isolated in the same way, without obeying other Auto-Sandbox rules. Hips alerts on their launch will not be: only if there is an explicit prohibiting HIPS rule, it will be blocked. In other words, the HIPS work for such programs is similar to the inclusion of the option "Do not show alerts: Allow requests."

Another exception is the programs that have the privileges of the installer. Their child processes are not subject to Auto-Sandbox rules (this behavior) and do not cause HIPS alerts. They obey only explicit prohibitions in the HIPS rules, like the option "Do not show alerts: Allow requests" option (this behavior is not amenable to configuration).

The third exception - programs that have the "ignore" rule in the AUTO-SANDBOX with a disabled option "". Such programs are simply excluded from the AUTO-SANDBOX control along with their subsidiaries. HIPS rules are applied in normal order.

Automatic creation of HIPS rules in "Training Mode" and in "Safe Mode"

In certain modes, the creation of HIPS rules is automatically:

  • if "Training Mode" is enabled and the option "Do not Show alerts" is disabled or installed in "Block requests" mode, the activity of all applications will be tracked and rules will be created allowing each of their observed action;
  • if the "Safe Mode" is enabled, the "Create rules for secure applications" option is enabled, and the option "Do not show alerts" is disabled or installed in "Block requests" mode, then rules will be created allowing each noticable effect of trusted applications.

In most cases, these modes do not benefit and are used only for testing or preparation for switching to "paranoid mode".

The rules for the program (any at the "learning mode" or trusted during "safe mode") are created as follows:

The view of the new rule will depend on the requested action:

  • When one program launches another, the first creates a rule allowing to run a particularly specific program.
  • When the program changes the file or the registry key included in the "HIPS" tab\u003e "Protected Objects" tab, the form of the rule will depend on how the template of this resource is recorded.
    • If at the end of the template stands sign | The rule will create a permitting change of the specifically of the object to which the program applied. For example, the program creates a text.txt file on the desktop. It corresponds to the template "?: \\ Users \\ * \\ desktop \\ * | " So, the rule will be created allowing the C: \\ Users \\ Name \\ Desktop \\ Text.txt file.
    • If at the end of the template there is no sign | The rule will be created allowing the change in any object according to this template. For example, the program creates a D: \\ Prog.exe file. In the list of protected objects, this file corresponds to the * .exe template. So, the rule will be created that allows this program to change any EXE files.
  • When contacting a program to any of the following resources, rules automatically create access to it simultaneously to them all:
    • "Protected COM interfaces",
    • "Windows hooks and hooks of applications",
    • "Interprocessing access to memory",
    • "Interrupting applications",
    • "DNS requests",
    • "Disc" (direct access),
    • "Keyboard",
    • "Monitor".

Usually the actual order of HIPS coincides with the described, but various retreats occur. For example, sometimes HIPS rules are created automatically even for programs running with installer privileges; It was observed when the AUTO-SANDBOX is disconnected. A situation was also observed when the rules for the program created in the "Training Mode" recorded access not to all file objects requested by it in the "paranoid mode".

Identification of applications by their ways

In clearly specified rules, only the path to the program is taken into account. Its integrity, or rather, the rating is verified only in the absence of rules in "Safe Mode". Instead of a unambiguous path, you can use templates and environment variables in the same way as well as the file group themselves.

Previously, it was sometimes observed that after renaming or moving the HIPS program perceived it at the same place. This was expressed in the fact that this program had rules where it was recorded on the old way, and the rules with a new way did not work. The problem was solved by rebooting.

Due to the fact that the HIPS rules are based on paths, represents the danger option "Create rules for secure applications". For example, if it is enabled, and the conductor will start a trusted (having a signature) program C: \\ MyDownloads \\ test.exe, then with "secure mode" the HIPS will automatically create rules; And another time in place test.exe will be something other. Therefore, I recommend to disable this option.

Process protection

In the HIPS rules window for any application, it is possible to limit not only the own activity of this application, but also the impact on its operation of other programs. To do this, the "Protection Setup" tab, select which actions with this application will be blocked, and in the exception window (Change button) - what programs they will be allowed. Alerts here are not provided - only permission or prohibition, regardless of the rating. The action prohibited in this way will be blocked, regardless of the rules and rating of other programs.

In particular, using this function, CIS self-defense is carried out from unloading its processes and access to memory. Therefore, even when Hips is not needed, it is desirable to enable it at least with the option "Do not show alerts: Allow requests" (in "Safe" or "Paranoid" mode).

The side effect of CIS self-defense is a huge number of entries in the "Protection Event +" log when using some programs, for example, ProcessExplorer. You can get rid of optional locks, allowing individual applications access to CIS memory.

I note that the protection against the interruption of applications does not cover all ways to unload the process. So, many applications (but not CIS processes) can be completed by window messages (for example, the System Explorer program) or through memory access. To protect the application from such completion methods, it will be necessary to note in its rules on the "Protection Settings" tab, not only the "Interrupting Application" item, but also "window messages" and "interprocessing memory access".

The process of interrupting the processes used by the Process Hacker program allows you to unload even CIS. To prohibit the application of this method, you can change the HIPS rule for the "All Applications" group: in the "Protected COM Interfaces" Press "Change" and to the "Blocked" tab of the LocalSecurityAuthority.restore tab. However, it is not recommended to make this ban, as it will create problems when updating Windows.

Institute privileges

The meaning of the privileges of the installer

Under certain conditions, the application receives the privileges of the installer, which are as follows:

  1. HIPS Allows such an application all that is not prohibited in rules explicitly, i.e. Works like the mode "Do not show alert: Allow requests";
  2. AUTO-SANDBOX does not isolate the programs running by this application;
  3. While this application works - its subsidiaries (as well as their child processes, etc.) are performed with the privileges of the installer;
  4. Executable files that will create this application (or child processes inherited to its privileges) will automatically be included in the list of trusted (except scripts and files that are superior to 40 MB).

Automatic enhancing files to trusted occurs only when the option "Trust applications installed using trusted installers" on the "File Rating tab"\u003e Setting the File Rating. Also in some special cases of the privileges of the installer are given applications in the "truncated" form: without, despite the inclusion of this option.

Finally, we will pay attention to: When an installer application is completed, its child processes lose their inherited privileges, and HIPS will control them in normal mode. And their further child processes will fall under the control of AUTO-SANDBOX.

Suppose the installer "A" program launches the process "B", and "B" launches the process "C". As a result, as a result, the process "C" receives the privileges of the installer and possesses them until the program "A" is executed, even after the completion of the "B" process. But after the completion of the program "A", the process "C" will lose these privileges.

Compared with the privileges of the installer, it is inherited more "reliably": it continues to operate on child processes even after the completion of all parents. (However, the bug is seen: the inheritance of this rule is broken, if 2 minutes before launching a child process, not respond to the HIPS alert.)

The program receives the privileges of the installer in different ways: either when, or when (if the program is unidentified and has a sign of the installer), or when, or when, or when the program inherits these privileges from the parent process. The program can endure the privileges of the installer only when you start in a real environment without restrictions of AUTO-SANDBOX. If the program is launched is isolated - it does not receive these privileges, no matter what signs and rules.

Automatic entry of the application by the privileges of the installer

The application automatically gets the privileges of the installer if it is trusted and has. This status is assigned to the applications that are requested when the administrator right is started, and some others.

In the previous versions of the CIS, the automatic execution of the program privileges of the installer only occur when restrictions of proactive protection depended on the rating of this program. If the program was excluded from AUTO-Sandbox and a fully defined HIPS policy was appointed (like a "system application"), then the privileges of the installer were not released. In the CIS version 8, the installer privileges are given even when the HIPS and AUTO-SANDBOX are disconnected. The only observed situation when a program with the status of a trusted installer is - if its restrictions in HIPS do not depend on the rating, and the Auto-Sandbox rules are excluded from its insulation parental The process together with the subsidiaries.

Appointment of Installer Privileges through Alerts and HIPS Rules

Installer privileges can be assigned to the program explicitly via HIPS: It is the "Installation or Update" policy.

When the HIPS alert arises regarding the activity of any application, you can select the desired policy, with or without remembrance.

If you note the memory option and select the Installation or Update policy, the appropriate HIPS rule will be created and the application will receive the privileges of the installer. If you choose this policy without a memorization option, the rule will not be created, and the application will receive a "truncated" version of the Installer Privileges: without automatically entered the created files to trusted (temporary launch of the "unidentified installer" without restrictions of AUTO-SANDBOX).

Through the CIS settings window, you can pre-assign the application or update policy in the list of HIPS rules. Obviously, in this case, the application will receive the privileges of the installer without alerts and fully.

General features and proactive protection parameters

Consider the options that affect the work of proactive protection as a whole: and HIPS, and AUTO-SANDBOX.

Various parameters of proactive protection

The Enable Protection Mode option on the HIPS Setup tab is designed to prevent proactive protection in 64-bit versions of Windows, so it must be noted in such systems. But at the same time it includes support for hardware virtualization, which threatens conflicts with virtual machines.

The option "Adapt mode of operation at low system resources" is needed only with a lack of RAM. When it is enabled, CIS uses memory saving techniques to avoid failure when performing their tasks. However, thereby decreases performance.

The "Block Unknown Queries, if the application is not running" is intended only for infected systems and is not recommended for continuous use, as it interferes with the correct autorun of secure applications. If this option is enabled, then until the graphical CIS graphical interface is loaded, all the programs, regardless of their rating, will be blocked any activity, except explicitly authorized in the HIPS rules. In other words, before loading the GUI, the behavior of HIPS will be similar to the "paranoid mode" with the option "Do not show alerts: block requests." The blocking will not be if HIPS is disabled or enabled with the option "Do not show alerts: Allow requests."

Also, the "Trust applications installed using trusted installers" option can also be attributed to the general proactive protection options on the "Setting File Rating" tab.

Another option that affects the operation of proactive protection, although it is located in another section, the "maximum file size" on the "Anti-virus monitoring" tab. If the file is not signed by a trusted supplier, and the size exceeds the specified one, then this file will be perceived as unidentified, even if manually add it to the list of trusted. The default size is 40 MB, it can be increased, but not reduced. If you have a trusted supplier signature file, this restriction is not valid.

The parameters specified in the "HIPS"\u003e "Protected Objects" section are valid not only for HIPS, but also for AUTO-SANDBOX. So, if the application is executed, the protection will be subject to those files and keys of the registry that are specified on the corresponding tabs of this section. For applications running in the virtual environment, the parameters of this section also have a value: the contents listed on the "folders with secure data" will be hidden.

Objects included in the HIPS list\u003e "Protected Objects"\u003e "Blocked Files", any access, including recording, and reading are prohibited. The paths and path templates are entered into this list. Blocking works only with HIPS enabled.

I will say a special case: "Pure PC" mode. Formally, this mode refers to HIPS, but in reality it determines the work of all proactive protection. If you enable this mode, only files will be considered "unidentified" that will appear on the disk subsequently. The files that were present on the disk to turn on this mode will receive the rights of trusted: and HIPS, and AUTO-SANDBOX, and the firewall will perceive these "old" files as if they were included in the list of trusted. that the "Pure PC" mode has certain problems and is not recommended for use.

Features of protection files

As already mentioned, protection via HIPS or AUTO-SANDBOX (in the absence of virtualization) is subject to only those files that are listed in the HIPS list\u003e "Protected Objects"\u003e "Protected Files". To specify these files, you can use templates (characters * and?) And environment variables (% temp%,% windir%, etc.), as well as.

I will note the peculiarity of the use of templates when the directories are protected. Usually, if you specify any directory through the CIS interface, it will be recorded as a template: D: \\ docs \\ *. This type of template corresponds to files and folders located in the selected d: \\ docs directory, as well as in its subdirectories. Adding this template to the list of protected files means the protection of the corresponding files and folders from changing and change it. However, the selected docs directory itself does not become protected from rename. If you rename it, then its content will cease to be protected. To protect the directory from renaming, you should write it without a slash and asterisks at the end: D: \\ Docs. Thus, for full protection of the directory and its contents, you should enter the list of protected two lines: D: \\ docs \\ * and d: \\ docs. (A variant with one line is possible - leave an asterisk at the end, but without a slash: D: \\ Docs *. But such a template will protect the D: \\ Docs, D: \\ DocS2, etc.).

In the HIPS list\u003e "Protected Objects"\u003e "Protected Files" Many templates are on the end symbol | . The use of this sign affects and on the restrictions imposed by AUTO-SANDBOX. If any program is running in Auto-Sandbox with restrictions without virtualization, it will be prohibited to create, delete or change files that are set by templates with the symbol | at the end. Files that are set by templates without a symbol | At the end, they will also be protected from changes, but the program limited by AUTO-SANDBOX is allowed to create such files, as well as delete those created (but not modify). For example, by default, the program executing with the level of restrictions "partially limited" is allowed to create executable files in the% programfiles% directory, but it is prohibited in the autoload directory. I emphasize that symbol | It affects the limitations of the AUTO-SANDBOX in modes without virtualization. When protected by HIPS, both the creation and deletion, and modifying files are prohibited, regardless of the availability of the symbol | In their templates.

There is a problem indicating paths on removable devices. Formally, you can create a HIPS, Auto-Sandbox rule or another component using a path to a removable device like H: \\ docs \\ *, but this rule will not work: CIS does not perceive the letters of removable discs. However, the removable media will work rules that are not tied to the letter of the disk, for example, the protection of the EXE files. On the other hand, it is still possible to create AUTO-SANDBOX rules that will be executed precisely for programs located on removable media. An example of such a rule is given.

As in the case of removable devices, CIS is incorrectly working with the letters of network drives: data on a network disk Y: may not match the Y: \\ *, nor even?: \\ *. Instead of templates with a network disk, you can use the type \\\\_name_name_name * - experiments showed their correct operation. In particular, to protect the data on Yandex.Disk, connected in the form of a network drive on the WebDAV proto, you can add "Protected Objects"\u003e Protected Files Line \\\\ WebDav.yandex *.

It should also be said that CIS perceives not only physical files as "files", but also various system objects, such as physical or virtual devices. On the one hand, the configuration flexibility is ensured. On the other, remember that. Therefore, such objects will not be protected from virtually running programs, even if there are hard prohibitions in the HIPS rules.

Features of protection registry

As in the case of files, protection via HIPS and Auto-Sandbox are only those registry keys listed in the "HIPS"\u003e "Protected Objects" list\u003e "Registry keys".

When specifying the registry keys, you can record the registry path templates using signs * and? .

Consider, for example, a string * \\ Software \\ Microsoft \\ Windows \\ CurrentVersion \\ Run *. A sign * At the beginning, it means that it covers the system section of the HKEY_LOCAL_MACHINE registry, and the HKEY_CURRENT_USER section of each user separately. We note that the sign * at the end of this line is not separated by slash. This means that the line covers both subsections: Run and Runonce. The meaning of the specifically of this line in the protection of at the same time different types of autoloads: both shared autoload and user autoloads; both constant and one-time.

In the registry preset in CIS, abbreviated partition names are used: HKLM, HKCU and HKUS. Also, when specifying the routes of the registry through the CIS interface, these abbreviated names are automatically substituted. However, in reality the HIPS rules in which the registry sections are shrong, may not work. Thus, you should always indicate the full names of the registry sections: for example, not HKCU \\ Software \\ Policies \\ *, and HKEY_CURRENT_USER \\ Software \\ Policies \\ *. You will also need to correct the paths in the preset groups on the HIPS Groups tab\u003e "Registry Groups":

  • replace HKLM on HKEY_LOCAL_MACHINE
  • replace HKCU on HKEY_CURRENT_USER
  • replace HKUS on HKEY_USERSERS

According to my observations, CIS incorrectly perceives the abbreviations of the root sections of the registry in cases where the specified path is reference, and not a "real" location in the registry. Examples of such pathways - HKLM \\ SYSTEM \\ CURRENTCONTROLSET \\ *, HKCU \\ *.

Possible option to specify the HKEY_CURRENT_USER section - the HKEY_USERS * template. You can add a portion of the user ID. For example, a row HKEY_USERS * 1002 \\ Software \\ Policies \\ * is set to the Software \\ Policies section of the HKEY_CURRENT_USER partition for one particular user. This reception can be used to prohibit a limited user to change autoload, association and other parameters.

For a convenient and visual creation of rules, it is recommended to apply registry groups:

  • open the HIPS tab\u003e HIPS groups\u003e "Registry Group" and through the context menu to create a new group;
  • add registry keys to this group and edit paths if necessary;
  • open the HIPS tab\u003e Protected Objects\u003e "Registry Keys" and add a new group to the list;
  • on the HIPS Rules tab, specify the necessary permissions and bans using groups.

Data protection from reading

You can protect data not only from changes, but also to some extent reading with certain applications. To do this, the HIPS tab\u003e "Protected Objects"\u003e "Folders with Secure Data". Catalogs added to the list on this tab are protected as follows:

  • programs running virtually perceive these directories empty;
  • programs running in a real environment with AUTO-SANDBOX restrictions, a review of the contents of these directories is prohibited;
  • programs that are blocked by the "disk" resource through HIPS, a review of the contents of these directories is prohibited (but it remains to open files contained in them).

We emphasize that it is when using virtualization that secure folders will be perceived by isolated applications as empty, and their files are as non-existent. If the program is limited only by HIPS, it will be able to open files, "knowing" their paths.

Through the CIS interface, you can add only those directories that are visible in the conductor to the "folders with secure data". If you need to protect the data in any hidden directory, you should temporarily allow the display of hidden files and folders in the explorer (for example, through the control panel).

The CIS interface allows you to enter the "folders with secure data" list only unambiguous paths to directories, but not templates, like * \\ ReadProtected \\ *. Attempting to make a configuration file template in this list can lead to BSOD.

You should add directories on only local disks to the list of "folders with secure data". Formally, you can add removable media or virtual encrypted discs to this list, but for them protection, as a rule, does not work.

This protection is capable of fully bypassed applications running on behalf of the administrator. Such applications will be able to see the contents of the protected directory and read the data in it, even if they are blocked access to the disk, even if they are performed in a virtual environment, and even if they are isolated in Auto-Sandbox as "partially limited" or "suspicious". I strongly recommend keeping the included uac.

Process security protection

CIS is able to prohibit one processes to change the memory of others. Thus, programs that are running virtually and / or with AUTO-SANDBOX restrictions are prohibited from changing the memory of the processes running in the real environment. Additional limitations for interprocessing memory change are set in HIPS rules.

CIS protects processes from changes, but not from reading. Even if you block the malware "Interprocess memory to memory" and even if you run it virtually, it will be able to read confidential data from the memory of the processes running in the real environment. I note that this problem concerns not only the virgin medium Comodo Sandbox, but also Sandboxie.

At the same time, protection against interprocessing memory changes prevents the creation of a memory dump. Apparently, it is prohibited to suspend the process necessary to create a dump, but not the reading of memory itself.

Analysis of the command line

Some types of applications are not performed independently, but through interpreter program. For example, the execution of BAT scripts is engaged in the system interpreter cmd.exe, performing VBS scripts - the system interpreter WScript.exe, executing JAR applications - the JavaW.exe program, which is part of the Java virtual machine, etc. When you start the script (or similar application), the interpreter program associated with it is actually launched, receiving the path of this script in the command line arguments.

CIS tracks the launch of some interpreters and applies those limitations to them that has a file specified in the command line arguments. Due to this, some types of scripts are perceived by CIS as independent applications: their activity is limited to HIPS rules or causes alert, and Auto-Sandbox isolates the operation of non-trusted scripts. (Some features of the AUTO-SANDBOX work with scripts are described in the relevant article: the inability or.) Also in the site of interpreters, scripts performed by them are displayed.

The starting and activity of various types of applications is described: * .bat, * .cmd, * .js, * .vbs, * .wsf, * .hta, * .chm, * .msi, * .jar, etc. Similarly controlled Library files when their execution is engaged in the system program Rundll32.exe.

This behavior is set by the option "Perform a heuristic command line analysis for specific applications" on the "Setting up HIPS" tab, it is turned on by default. If you disable it, then scripts and similar applications will be performed with the same rights that their interpreters have.

In the CIS 7 version there was a bug: the launch of the scripts with long paths was not controlled. In the CIS 8.0 version, the bug is eliminated. Also in all versions from 5.10 to 8.1 there was a serious command line analysis vulnerability, which allowed to run one program with the rights of the other. In CIS 8.2, this vulnerability is almost eliminated.

Protection option from the introduction of shell-code

On the HIPS Setup tab, the Option "Detect Should Shall-Code" option is located. As it follows from the name, its inclusion is designed to prevent attacks based on buffer overflow.

Nevertheless, the option "Detect Shall-Code Implementation" still affects the CIS operation. Rather, the impact has a list of exceptions for this option, regardless of whether it is included itself. In the work of applications added to the list of "protection against Shell-Code", the following features are observed:

At the same time, HIPS controls applications excluded from "shell-code protection", for the launch of programs, access to the memory of other processes, sending window messages, changes to files and registry, access to the keyboard, to the disk. Also, if these applications are started virtually (manually or based on Auto-Sandbox rules), file changes and restraints should not affect the real environment.

Apparently, it is the introduction of the GUARD library (32 | 64) .dll is responsible for the CIS functions that do not work for applications excluded from "shell-code protection".

Sometimes the enlightenment of programs to eliminate the "Detect Shell-Code" option eliminates some conflicts. So, it is usually recommended to add VMware Player / Workstation directory to these exceptions, the Alcohol program, the program and catalog of its sandbox. Conflict version CIS 8.2.0.4674 was also sided with Google Chrome 45.0.2454.85 browser, eliminated by adding chrome.exe file to exclude this option.

Viruscope.

Viruscope alerts

In addition to the basic means of proactive protection - HIPS and AUTO-SANDBOX - there is a Viruscope component designed to dynamically detect suspicious activity of processes. He must detect dangerous behavior unidentified Programs and give an alert with a proposal to roll back the changes made by a specific program and its child processes, and the program itself is deleted.

If the "No Show Alerts" option is enabled on the Viruscope tab, the removal of programs and rollback changes will automatically (in the same way, if you do not respond to alert for 2 minutes).

Rollback of manual changes

The completion of programs with a rollback of the changes produced can be made not only when suspicious activity is detected, but manually. To do this, start the Killswitch task manager, call the context menu on the desired process and select the "complete the process tree and return the changes made." The program file is not deleted. This context menu item Killswitch is available only when Viruscope is enabled.

Another way to manually complete programs with a rollback of the changes made by them - the alerts of HIPS and FAPERVOL. When Viruscope is enabled, an additional item appears in these alerts: "Block, complete execution and cancel changes." When this item is selected, the program and all its subsidiaries and all its subsidiaries will be completed, and the changes made them will be canceled; The program file will not be deleted.

Activity report

When Viruscope is enabled in the context menu, called from the CIS main window, a new item appears: "Show Activity". By pressing it will open a window with a report on the activity of the selected program and its subsidiaries.

Also, when Viruscope is enabled in alerts of different CIS components, the Show Activity button appears. By clicking on it also opens a report on the activity of the program specified in the alert.

It should be said that the presentation of the activity report in the CIS window is far from convenient. However, you can export this report through the context menu to the XML file and study separately.

Also, the activity report can be viewed through the Killswitch task manager: in the process properties window called through the context menu, there is a process activity tab. However, in KillSwitch, this report is presented even worse than in CIS, and there is no export function to the file.

Viruscope Control Limit Only Isolated Programs

By default, in the "Proactive Security" configuration, on the VirusCope tab, the Use Viruscope option is enabled and the "Apply Viruscope action only to applications in Sandbox" is turned off. In such configuration, tracking all processes in real and in a virtual environment occurs. The above describes the work of Viruscope for this mode.

If you note the option "Apply VirusCope Action only to applications in Sandbox", the activity of only those programs that are run in the virtual environment are or limited by AUTO-SANDBOX. For the programs running in the real environment without restrictions of AUTO-SANDBOX, the activity will not be recorded and, accordingly, the report on it will not be given.

However, after enabling this option, the Alert HIPS and Faervola will still contain the "Block, complete execution and cancel changes" item, as well as in the context menu of the KillSwitch there will be an item "Complete the process tree and return the changes made." In fact, the choice of these items will not roll back to change, but only to the completion of the selected program and its subsidiaries.

Management of recognition

On the Viruscope tab, a file is specified on the basis of the data of which a certain activity of the applications is considered suspicious. This file specifies samples of behavior that should cause Viruscope alerts. If you translate the status of such a file to a disconnected position, the corresponding behavior of applications will not lead to alerts and blocking Viruscope; Tracking the activity of programs will continue.

Limitability and problems Viruscope

In Viruscope, it is impossible to roll back such actions as deleting files from the disk. Also, a change is not subject to a rollback, made for previous cycles of the suspicious process. Rollback of the process of process, erroneously recognized dangerous, can lead to data loss (this risk occurs in "Do not show alert" mode).

In the CIS 7 version, a serious problem was observed - with Viruscope enabled, unpredictable failures in the work of secure applications took place. These failures occurred in the absence of any notifications and records in CIS magazines, which made it difficult to search for their causes. Apparently, the failures were provoked by the observation of processes, and not by detecting suspicious behavior.

In the CIS 8 version, previous famous conflicts have ceased to manifest. Perhaps the problem is eliminated. However, in view of its seriousness and discovery difficulties, I still recommend to abandon Viruscope. Taking into account all the limitations, the benefits of Viruscope in defense is small.

For the safe use of Viruscope, you can enable it with the "Apply Viruscope only to applications only to the applications in SANDBOX". But in this case, the assignment of Viruscope will not be defense, but the study of the operation of applications running in the virtual environment.

Please Enable JavaScript to View The