Протокол SNMP версії 3, Блог про шифрування

Повна відсутність аутентифікації в протоколах SNMPvl/SNMPv2 робить мережу вразливою щодо найрізноманітніших загроз безпеці. Що стосується забезпечення безпеки архітектури протоколу SNMPv3, то до найвідоміших загроз належать нелегальне проникнення в мережу, зміна інформації, перехоплення та модифікація потоку повідомлень.

Два інших типи загроз: відмова в обслуговуванні та аналіз потоків даних, що проходять, розглядаються як менш важливі і архітектура протоколу SNMPv3 не гарантує захисту від них. У цьому розділі ці два типи атак не обговорюються.

Архітектура протоколу SNMPv3 за своєю природою проектування є модульної, як показано на рис. 58.5. Модульність архітектури дозволяє з часом змінювати її відповідно до еволюції стандартів SNMP. Будь-який пристрій протоколу SNMP містить SNMP-модуль, який включає диспетчер, підсистему обробки повідомлень, підсистему захисту мережі і підсистему управління доступом. Воно може також включати різні програми протоколу SNMP, що виконують специфічну функціональну обробку даних управління.

версії

Мал. 58.5. Компоненти пристрою протоколу SNMP

Кожен тип пристрою SNMP має модуль SNMP та різні модулі додатків. Наприклад, менеджер SNMP повинен включати пристрій з додатками генератора команд і/або одержувача повідомлень. Агент SNMP повинен включати відповідача на команди і/або програми ініціатора повідомлень.

Пристрій SNMP має один модуль SNMP, який забезпечує служби надсилання, отримання та обробки повідомлень, автентифікації та шифрування повідомлень, а також службу керування доступом до керованих об'єктів. Ці служби забезпечуються так:

•Диспетчер припускає одночасну підтримку кількох версій повідомлень SNMP у модулі SNMP. Він посилає та отримує повідомлення SNMP та розподіляє модулі даних протоколу SNMP між додатками протоколу SNMP. У тому випадку, коли необхідно підготувати повідомлення SNMP або витягти дані з повідомлення SNMP, диспетчер передає вирішення цих завдань моделі, що обробляє повідомлення, що враховує версію повідомлення; ця модель знаходиться у підсистемі обробки повідомлень.

• Підсистема обробки повідомлень є частиною модуля SNMP, яка взаємодіє з диспетчером у процесі обробки повідомлень SNMP конкретної версії. Потенційно вона містить кілька моделей обробки повідомлень для версій SNMPv3, SNMPv2, SNMPvl та інших.

• Підсистема безпеки забезпечує послуги захисту, такі як автентифікація та збереження конфіденційності.

Нижче наведено модулі програм.

• Генератор команд здійснює моніторинг та обробляє керуючі дані. Він також генерує та обробляє відповіді модулів PDU команд Get, GetNext, GetBulk та Set.

• Обробник команд забезпечує доступ до даних керування. Він отримує модулі PDU вищезгаданих типів (згенеровані відповідачем команд), генерує повідомлення у відповідь і відправляє його ініціатору запиту.

• Ініціатор сповіщення ініціює асинхронні повідомлення. Він здійснює моніторинг системи, а після цього, залежно від заданих конфігурацією функцій, генерує повідомлення Trap або Inform і відсилає його заздалегідь визначеним пристроям одержувачів.

• Одержувач сповіщення обробляє асинхронні повідомлення. Він переглядає дані, що проходять по мережі, з метою виявлення повідомлень-повідомлень, повідомлень команди Trap та інформаційних повідомлень. Якщо отримане повідомленняє інформаційним, він посилає відповідь його ініціатору.

• Проксі-пристрій пересилання надсилає повідомлення SNMP між пристроями. Реалізація програми проксі-пересилання не є обов'язковою та здійснюється за бажанням користувача.

Документи RFC, що визначають протокол SNMPv3, описують проблеми безпеки на двох різних етапах: прийому/передачі повідомлень та обробки вмісту повідомлень. У документах RFC для протоколу SNMPv3 термін "безпека" застосовується стосовно аспектів безпеки на рівні повідомлень, а термін "управління доступом" - стосовно питань безпеки протокольних операцій.

Типовими функціями безпеки на рівні повідомлень є автентифікація, шифрування та перевірка терміну давності. У процесі обробки повідомлення може знадобитися керування доступом. Воно обмежує доступ до керованих об'єктів для виконання операцій над ними. Модель керування доступом (Access Control Model) визначає механізми, які приймають рішення про те, чи дозволено доступ до керованого об'єкта.

Для підтримки служб безпеки та управління доступом у протоколі SNMP застосовується поняття принципала (principal). Під принципалом розуміється пристрій, від імені якого надаються служби чи відбувається обробка. Принципал може бути окремим суб'єктом, який виконує певну роль, набором таких суб'єктів, кожен з яких виконує певну функцію, додатком або набором додатків, а також комбінацією вищезгаданих. Ідентифікаційні дані принципала використовуються для завдання функцій безпеки, які використовуватимуться при здійсненні зв'язку з агентом. Архітектура протоколу SNMPv3 визначає три рівні забезпечення безпеки: відсутність аутентифікації та забезпеченняконфіденційності, аутентифікацію та відсутність забезпечення конфіденційності, а також аутентифікацію та забезпечення конфіденційності.

Модель захисту мережі для окремого користувача

RFC 3414, User-based Security Model for SNMPv3, визначає наведені нижче вимоги.

• Як протокол автентифікації повинен підтримуватися протокол HMAC-MD5-96.

• В якості протоколу автентифікації повинен також підтримуватися протокол HMAC-SHA-96, а в майбутньому можлива підтримка додаткових протоколів автентифікації, що замінюють вищезазначені.

Слід зазначити, що протокол HMAC-MD5-96 використовує MD5 (див. RFC 1321, Message Digest 5) як хеш-функції для хеш-функції режиму коду аутентифікації повідомлення (Hash-based Message Authentication Code - HMAC). Протокол MD5-96 здійснює усічення вихідних даних до 96 бітів. Протокол HMAC-SHA-96 робить те ж саме, проте використовує як хеш-функцію SHA (SHA-N1ST). Протокол НМАС (див. RFC 2104) є механізмом аутентифікації повідомлення, a MD5 і SHA використовуються як криптографічні хеш-функцій.

В аспекті конфіденційності визначається використання симетричного шифрування CBC-DES разом з моделлю безпеки для конкретного користувача. У майбутньому можуть бути також визначені як додаткові або такі, що замінюють інші протоколи забезпечення конфіденційності. CBC-DES являє собою режим стандарту шифрування даних (Data Encryption Standard — DES) з об'єднанням шифрових блоків, який, у разі запиту, USM використовує для шифрування повідомлення, що надсилається, і запобігання читання вмісту цього повідомлення третіми сторонами.

Модель керування доступом на основі View

Як визначається вRFC 3415, VACМ for the SNMP, підсистема управління доступом пристрою SNMP перевіряє, чи дозволений тип доступу (read, write, notify) до даного об'єкта (instance). Коли пристрій SNMP обробляє запит на отримання даних (Get, GetNext, GetBulk) або запит на модифікацію (Set), він повинен здійснювати контроль доступу. Наприклад, програма відповідача на команди застосовує контроль доступу при обробці запиту, який він отримує від програми-генератора запиту. Перед надсиланням повідомлення SNMP-повідомлення (ініційованого програмою, що створює повідомлення) пристрій протоколу SNMP також повинен виконати контроль доступу.

Керування доступом конфігурується групою користувачів, при цьому кожна група може включати декількох користувачів. Політика безпеки повинна бути попередньо налаштована на пристроях SNMP, які здійснюють керування доступом. Для розробки політики управління доступом адміністратор спочатку визначає, який тип операції може бути використаний цією групою (read, write чи notify). Після цього адміністратор визначає право доступу до цієї операції. Наприклад, агент може бути налаштований таким чином, що він дає групі користувачів право читання лише однієї бази MIB (або частини бази MIB). Він може бути налаштований так, щоб інша група користувачів отримала право запису в кілька М1В-об'єктів.

Управління за допомогою SNMP

SNMP є протоколом розподіленого керування. Система може функціонувати виключно як NMS або як агент, або виконувати обидві ці функції. В останньому випадку інша NMS може вимагати, щоб пристрої керувалися системними запитами, щоб надавалися короткі зведення про отриману інформацію або щобсистема повідомляла про збережену локальну керуючу інформацію.

Довідкові дані протоколу SNMP: формати повідомлень SNMP

Повідомлення SNMPv2 складаються із заголовка та модуля PDU. Базовий формат SNMP-повідомлень показаний на рис. 58.6.

Мал. 58.9. Поля модуля PDU Trap протоколу SNMP

Нижче описано поле, показане на рис. 58.9.

• Підприємство. Тип керованого об'єкта, що генерує переривання.

• Адреса агента. Адреса керованого об'єкта, що генерує переривання.

• Загальний тип переривання. Номер загального типу переривання.

• Код переривання. Номер спеціального типу переривання.

• Мітка часу. Час, який минув між останньою реініціалізацією мережі та генеруванням переривання.

• Змінні. Поле даних PDU модуля протоколу SNMP. Кожна змінна відповідає конкретному об'єкту та його поточному значенню.

Протокол SNMP є протоколом рівня додатків стека протоколів TCP/IP. Він був створений для того, щоб стандартизувати архітектуру управління мережею. Протокол SNMP використовує схему, що включає станції управління мережею (менеджери), які здійснюють моніторинг і управління мережевими пристроями. Менеджер також виконує функції інтерфейсу між мережею і мережним адміністратором. На керованому пристрої встановлено агентське програмне забезпечення, яке взаємодіє з менеджером за допомогою набору протокольних операцій, таких як Get, Set, Get, Next, GetBulk та Trap. Ці операції працюють з безліччю ієрархічно організованих змінних, що називається базою MIB, яка підтримується агентським програмним забезпеченням на керованих пристроях.

Для розширення можливостей протоколу SNMP за останні кілька років було розроблено декількаверсій цього протоколу. В останній версії цього протоколу (SNMPv3) були подолані обмеження попередніх версій, пов'язані із забезпеченням безпеки мережі та включені нові функції, пов'язані з автентифікацією, шифруванням та керуванням доступом.

Trap PDU Format

На рис. 58.9 показано поля модуля PDU Trap протоколу SNMP.

1.Який основний недолік версій SNMPv3 та SNMPv2, усунений у SNMPv3?

Керівництво з технологій об'єднаних мереж, 4-те видання. : Пров. з англ. - М.: Видавничий дім "Вільямі", 2005. - 1040 с.: Іл. – Парал. тит. англ.