Система и способ анализа файла на вредоносность в виртуальной машине

1. Система анализа на вредоносность файла, открываемого в виртуальной машине в виде среды для безопасного исполнения файлов, которая содержит:
- средство перехвата, предназначенное для:
перехвата событий, которые возникают в процессе исполнения потока процесса, созданного при открытии упомянутого файла в виртуальной машине в виде среды для безопасного исполнения;
приостановки исполнения упомянутого потока;
считывания контекста процессора, на котором исполняется упомянутый поток, при возникновении каждого события;
сохранения каждого перехваченного события и контекста, считанного при возникновении указанного события, в журнал;
передачи журнала средству анализа;
изменения контекста процессора, на котором исполняется упомянутый поток, на основании полученного решения от средства анализа;
остановки процесса, созданного при открытии упомянутого файла, на основании полученного решения от средства анализа;
- средство анализа, предназначенное для:
сравнения сохраненных в журнале событий и контекста процессора с по меньшей мере одним шаблоном, причем на основании сравнения принимает по меньшей мере одно из решений: решение о признании файла вредоносным, решение об остановке исполнения файла, решение об изменении контекста процессора, решение об ожидании следующего события;
передачи решения средству перехвата.
2. Система по п. 1, в которой открытием файла является исполнение файла, если файл исполняемый.
3. Система по п. 1, в которой открытием файла является открытие файла приложением, если файл не исполняемый.
4. Система по п. 1, в которой событие представляет собой по меньшей мере одно из:
- вызов API-функции потоком;
- возврат из API-функции;
- системный вызов;
- возврат из системного вызова;
- оповещение от операционной системы.
5. Система по п. 1, в которой передача журнала производится каждый раз, когда произведено упомянутое сохранение перехваченного события и контекста процессора.
6. Система по п. 1, в которой контекст процессора содержит по меньшей мере значения регистров процессора.
7. Система по п. 1, в которой шаблон содержит по меньшей мере одно правило.
8. Система по п. 7, в которой правило содержит по меньшей мере одно событие.
9. Система по п. 7, в которой правило содержит по меньшей мере один контекст процессора.
10. Способ анализа на вредоносность файла, открываемого в виртуальной машине в виде среды для безопасного исполнения файлов, реализуемый с помощью средств перехвата и анализа по п. 1 формулы и содержащий этапы, на которых:
а) перехватывают событие, которое возникает в процессе исполнения потока процесса, созданного при открытии упомянутого файла в виртуальной машине в виде среды для безопасного исполнения, и приостанавливают исполнение упомянутого потока;
б) считывают контекст процессора, на котором исполняется упомянутый поток;
в) сохраняют перехваченное событие и упомянутый контекст в журнал;
г) сравнивают данные, сохраненные в журнале, с по меньшей мере одним шаблоном, при этом на основании сравнения принимают по меньшей мере одно из решений: решение о признании файла вредоносным, решение об остановке исполнения файла, решение об изменении контекста процессора, решение об ожидании следующего события;
д) исполняют действия, соответствующие принятым на шаге г) решениям.
11. Способ по п. 10, в котором открытием файла является исполнение файла, если файл исполняемый.
12. Способ по п. 10, в котором открытием файла является открытие файла приложением, если файл не исполняемый.
13. Способ по п. 10, в котором событие представляет собой по меньшей мере одно из:
- вызов API-функции потоком;
- возврат из API-функции;
- системный вызов;
- возврат из системного вызова;
- оповещение от операционной системы.
14. Способ по п. 10, в котором передача журнала производится каждый раз, когда произведено упомянутое сохранение перехваченного события и контекста процессора.
15. Способ по п. 10, в котором контекст процессора содержит по меньшей мере значения регистров процессора.
16. Способ по п. 10, в котором шаблон содержит по меньшей мере одно правило.
17. Способ по п. 16, в котором правило содержит по меньшей мере одно событие.
18. Способ по п. 16, в котором правило содержит по меньшей мере один контекст процессора.