При рассмотрении проблемы обеспечения информационной безопасности в компьютерных сетях и на основе анализа рынка существующих средств защиты информации, можно сделать вывод о том, что в большинстве случаев при эксплуатации информационных систем, программно — аппаратное обеспечение не рассматривается как источник потенциальных угроз безопасности. При этом не производится даже начальной, не говоря уже о регулярной, проверки на наличие аппаратных закладок и возможном несанкционированном изменении программно — аппаратной конфигурации.
Что же может произойти? Хищение, подмена аппаратных составляющих, несанкционированное подключение аппаратных средств, обеспечивающих доступ к информации, несанкционированная замена прикладного и системного программного обеспечения, повреждение программного обеспечения в результате активности злоумышленников и вредоносного программного обеспечения.
В процессе контроля информационной системы и выявления в ней отклонений, одним из главных аспектов является предварительное проведение комплексного аудита сетевой инфраструктуры и постоянное обновление контрольной информации.
В качестве инструмента сбора и структуризации информации используем базовые технологий Microsoft для централизованного управления и слежения за работой программной и аппаратной части сетевой инфраструктуры под управлением операционных систем Windows — WMI (Windows Management Instrumentation).
В ее основе лежит семейство классов Win32_(*), которое содержит в себе информацию, позволяющую определить конфигурацию рабочей станции, где (*) — это имена классов. Подробное описание классовWin32 и их свойств, возможно изучить c использованием ресурсов MSDN Library, а именно по адресу msdn.microsoft.com/en-us/library/aa394084(VS.85).aspx.
При наличии сетевого окружения можно задать диапазон адресов сети. Важным условием является доменная структура сети и наличие учетной записи администратора и его пароля. При локальном режиме происходит анализ информации на ЭВМ пользователя. Анализ информации производится N раз, при, где N – количество классов Win32_(*). При отсутствии нарушений и необходимости обновления «идеальных» характеристик, система обновляет информацию в базе данных. Необходимость обновления определяется администратором системы. Шаблонный алгоритм может представлять следующий набор операций:
using Windows.management;
private void Net_Scan()
{
string[] adresses;
int startAdress;
try
{
adresses = adress.Split('.');
startAdress = Convert.ToInt32(adresses[3]);
for (int i = startAdress; i < 255; i++)
{
adress = adresses[0] + "." + adresses[1] + "." + adresses[2] + "." + Convert.ToString(i);
var LocalPCPing = new Ping();
var LocalPCPingRpl = LocalPCPing.Send(adress, 10);
var status = LocalPCPingRpl.Status;
if (status == IPStatus.Success)
{
try
{
IPHostEntry host = Dns.GetHostByAddress(adress);
adress = adress + " <-----> " + host.HostName;
SetText(adress + "rn");
ConnectionOptions connection = new ConnectionOptions();
connection.Username = userNameBox.Text; //Administrator
connection.Password = passwordBox.Text; //Pass
connection.Authority = "ntlmdomain:DOMAIN"; //Domain name
ManagementScope scope = new ManagementScope("\\ComputerName\root\CIMV2", connection);
scope.Connect();
ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_ ");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
foreach (ManagementObject queryObj in searcher.Get())
{
SetText(+"rn");
}
}
catch
{
MessageBox.Show("");
}
}
else
{
SetText(adress + " Нет ответа" + "rn");
}
}
}
catch
{
MessageBox.Show("");
}
}
Генерировать код с использованием WMI можно по средством утилиты WMI Сode Creator.
Блок анализа информации, производит сравнение конфигурационной информации из хранилища и текущей конфигурационной информацией. Если результат сравнения свидетельствует об отсутствии нарушений в структуре программно — аппаратного окружения – массиву присваиваем false. Соответственно, при наличии нарушений – true. Таким образом, получим для каждой i — ой ЭВМ соответствует вектор {0,1}.
Так как изменений может быть много и реагировать на все из них слишком трудозатратно, можно определить важность этих изменений. Для решения задачи определения ценности полученной информации можно применить экспертный опрос. Основная цель опроса заключается в определении важности (актуальности) информации, получаемой из классов Win32_*. Важность определяется путем ранжировки классов, при выполнении следующего условия: чем ниже ранг, тем выше актуальность. Таким образом, определяются массивы актуальных для дальнейшего анализа данных. Собранная информация разделается на уровни, характеризующие объекты: уроень 1 – «Классы уязвимых звеньев сети», уровень 2 – «Вид обеспечения», уровень 3 – «Характеристики программно-аппаратной среды».
На уровне n = 1 (Классы уязвимых звеньев сети) имеются: серверные платформы, автоматизированная система, иное сетевое оборудование. На подуровнях конкретизируются данные основного уровня, так на уровне 1.1 (Типы уязвимых звеньев сети) содержится информация характеризующая классы первого уровня: прокси-сервер, сервер домена сети и т.п. Каждому элементу обязательно сопоставляется экспертная оценка и связь. При использовании оценок находящихся на одном уровне используется мультипликативная функция, в случае же применения оценок с разных уровней используется значение оценки возведенное в степень уровня, на котором она находится. Результат равен сумме коэффициентов важности возведенных в степень значения уровня. При наличии подуровней к коэффициентам важности применяется мультипликативная функция. При отсутствии изменений сумма будет нулевой, в противном случае конечное значение зависит от оценок важности и полностью с ними коррелирует. Следовательно, чем ниже конечный коэффициент изменений на ЭВМ, тем больше внимания им нужно уделить. В принципе схема масштабируемая, и может быть подстроена под любую сетевую среду.
Автор: kimssster