
- •Содержание
- •Глава 1. Принципы функционирования межсетевых экранов и антивирусного программного обеспечения 6
- •Глава 2. Разработка и описание комплексной системы проверки средств обеспечения безопасности пк 10
- •Введение
- •Глава 1. Принципы функционирования межсетевых экранов и антивирусного программного обеспечения
- •Межсетевые экраны
- •Принципы функционирования межсетевых экранов
- •Виды межсетевых экранов
- •Антивирусное программное обеспечение
- •1.2.1. Принципы функционирования антивирусного программного обеспечения
- •1.2.2. Основные функции антивирусного программного обеспечения
- •Глава 2. Разработка и описание комплексной системы проверки средств обеспечения безопасности пк
- •2.1. Постановка задачи
- •2.2. Описание алгоритмов модулей в виде блок-схем
- •2.3. Программная реализация алгоритмов модулей
- •2.3.1. Модуль для проверки наличия соединения с Интернетом
- •2.3.2. Модуль для проверки наличия межсетевого экрана
- •2.3.3. Модуль для проверки работоспособности межсетевого экрана
- •2.3.4. Модуль для проверки наличия установленного антивирусного программного обеспечения
- •2.3.5. Модуль для проверки работоспособности антивирусного программного обеспечения
- •2.3.6. Модуль для тестирования антивирусного программного обеспечения
- •2.3.7. Модуль для сохранения результатов проверки
- •2.3.8. Модуль для отображения результатов проверки
- •2.3.9. Модуль для завершения работы программы
- •2.3.10. Модуль для добавления результатов
- •2.3.11. Модуль для обработки исключений
- •2.3.12. Модуль для создания тела программы
- •2.3.13. Модуль для создания графического интерфейса программы
- •2.4. Результаты работы программы
- •Заключение
- •Список использованных источников
- •Приложения Приложение а
2.3.4. Модуль для проверки наличия установленного антивирусного программного обеспечения
Проверка наличия антивирусного программного обеспечения выполняется при нажатии на кнопку «Проверить наличие антивируса». Проверка осуществляется с использованием WMI (Windows Management Instrumentation) для запроса сведений об установленных антивирусных программах через пространство имен root\SecurityCenter2. Метод CheckAntivirusStatus собирает список обнаруженных антивирусов и формирует строку с их наименованиями.
Если антивирусное программное обеспечение обнаружено, в текстовом поле txtCheckAntivirus отображается список найденных антивирусных программ. В случае, если антивирусное ПО не установлено, выводится сообщение «Антивирусные программы не найдены». Исключения, возникающие в процессе выполнения проверки, обрабатываются методом ExecuteWithExceptionHandling, предотвращая сбои в работе программы. Для этого выполняется программный код, представленный в листинге 4.
Листинг 4 – Программный код модуля для проверки наличия антивирусного программного обеспечения
private void btnCheckAntivirus_Click(object sender, EventArgs e)
{
string result = ExecuteWithExceptionHandling(CheckAntivirusStatus);
AppendResult(result, txtCheckAntivirus);
}
private string CheckAntivirusStatus()
{
string antivirusInfo = "Установленные антивирусные программы:\n";
ManagementObjectSearcher searcher = new ManagementObjectSearch - er(@"root\SecurityCenter2", "SELECT * FROM AntiVirusProduct");
foreach(ManagementObject obj in searcher.Get())
{
antivirusInfo += $"- {obj["displayName"]}\n";
}
return antivirusInfo.Length > "Установленные антивирусные программы:\n".Length ? antivirusInfo : "Антивирусные программы не найдены.";
}
2.3.5. Модуль для проверки работоспособности антивирусного программного обеспечения
Проверка работоспособности антивирусного программного обеспечения выполняется при нажатии на кнопку «Проверить статус антивируса». Проверка осуществляется путем создания специального тестового файла EICAR, который используется для тестирования антивирусных программ. Метод TestAntivirus создает тестовый файл с содержимым EICARTestFile.com в временной директории.
Если антивирусное ПО корректно функционирует, оно должно обнаружить и удалить данный файл, в этом случае в текстовом поле txtTestAntivirus выводится сообщение «Антивирус успешно обнаружил и удалил тестовый файл». Если файл остается на месте, программа удаляет его вручную и выводит сообщение «Антивирус не обнаружил тестовый файл». Исключения, возникающие в процессе выполнения проверки, обрабатываются методом ExecuteWithExceptionHandling, предотвращая сбои в работе программы. Для этого выполняется программный код, представленный в листинге 5.
Листинг 5 – Программный код модуля для проверки работоспособности антивирусного программного обеспечения
private void btnCheckAntivirusStatus_Click(object sender, EventArgs e)
{
string result = ExecuteWithExceptionHandling(CheckAntivirusOperationalStatus);
AppendResult(result, txtCheckAntivirusStatus);
}
private string CheckAntivirusOperationalStatus()
{
string antivirusStatus = "Проверка работоспособности антивирусного ПО:\n";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(@"root\SecurityCenter2", "SELECT * FROM AntiVirusProduct");
foreach(ManagementObject obj in searcher.Get())
{
string displayName = obj["displayName"] ? .ToString();
uint productState = (uint)obj["productState"];
bool isRealTimeProtectionOn = (productState & 0x10) != 0;
bool isUpdated = (productState & 0x1000) != 0;
antivirusStatus += isRealTimeProtectionOn ?
$"- {displayName}: Защита включена, база {(isUpdated ? "обновлена" : "устарела")}\n" :
$"- {displayName}: Защита отключена\n";
}
return antivirusStatus.Length > "Проверка работоспособности антивирусного ПО:\n".Length ? antivirusStatus : "Рабочих антивирусных программ не обнаружено.";
}
}