
Сканируйте строки или файлы на наличие вредоносных программ с помощью Windows Antimalware Scan Interface
py-amsi — это библиотека, которая сканирует строки или файлы на наличие вредоносного ПО с помощью Windows Antimalware Scan Interface (AMSI) API. AMSI — это интерфейс, встроенный в Windows, который позволяет приложениям запрашивать у антивируса, установленного в системе, анализ файла/строки. AMSI не привязан к Windows Defender. Поставщики антивирусных программ реализуют интерфейс AMSI для получения вызовов от приложений. Эта библиотека использует API для выполнения антивирусного сканирования в Python. Подробнее об API Windows AMSI читайте здесь.
Через pip
pip install pyamsi
Клонирование репозитория
git clone https://github.com/Tomiwa-Ot/py-amsi.git
cd py-amsi/
python setup.py install
from pyamsi import Amsi
# Scan a file
Amsi.scan_file(file_path, debug=True) # debug is optional and False by default
# Scan string
Amsi.scan_string(string, string_name, debug=False) # debug is optional and False by default
# Both functions return a dictionary of the format
# {
# 'Sample Size' : 68, // The string/file size in bytes
# 'Risk Level' : 0, // The risk level as suggested by the antivirus
# 'Message' : 'File is clean' // Response message
# }
| Уровень риска | Значение |
|---|---|
| 0 | AMSI_RESULT_CLEAN (Файл чист) |
| 1 | AMSI_RESULT_NOT_DETECTED (Угроз не обнаружено) |
| 16384 | AMSI_RESULT_BLOCKED_BY_ADMIN_START (Угроза заблокирована администратором) |
| 20479 | AMSI_RESULT_BLOCKED_BY_ADMIN_END (Угроза заблокирована администратором) |
| 32768 | AMSI_RESULT_DETECTED (Файл считается вредоносным) |