Управління уразливими - це ідентифікація, оцінка, класифікація і вибір рішення для усунення вразливостей. Фундаментом управління уразливими є репозиторії інформації про уразливість, один з яких - Система управління уразливими «Перспективного моніторингу».

Наше рішення контролює появу інформації про уразливість в операційних системах (Windows, Linux / Unix-based), офісному і прикладному програмному забезпеченні, ПЗ обладнання, засоби захисту інформації.

джерела даних

База даних Системи управління уразливими програмного забезпечення «Перспективного моніторингу» автоматично поповнюється з наступних джерел:

  • Банк даних загроз безпеки інформації (БДУ БІ) ФСТЕК Росії.
  • National Vulnerability Database (NVD) NIST.
  • Red Hat Bugzilla.
  • Debian Security Bug Tracker.
  • CentOS Mailing List.

Також ми використовуємо автоматизований метод поповнення нашої бази вразливостей. Ми розробили обхідник веб-сторінок і парсер неструктурованих даних, які кожен день аналізують більше сотні різних іноземних та російських джерел по ряду ключових слів - групи в соцмережах, блоги, мікроблоги, ЗМІ, присвячені інформаційним технологіям і забезпечення безпеки інформації. Якщо ці інструменти знаходять щось, що задовольняє умовам пошуку, аналітик вручну перевіряє інформацію і заносить в базу вразливостей.

Контроль вразливостей програмного забезпечення

C допомогою Системи управління уразливими розробники можуть контролювати наявність та стан виявлених вразливостей в сторонніх компонентах свого ПО.

Наприклад, в моделі Secure Software Developer Life Cycle (SSDLC - Безпечна розробка програмного забезпечення) компанії Hewlett Packard Enterprise контроль сторонніх бібліотек займає одне з центральних місць.

Наша система відстежує наявність вразливостей в паралельних версіях / білдах одного програмного продукту.

Це працює так:

1. Розробник передає нам перелік сторонніх бібліотек і компонентів, які використовуються в продукті.

2. Ми щодня перевіряємо:

b. з'явилися методи усунення раніше виявлених вразливостей.

3. Оповіщаємо розробника, якщо змінився статус або скоринг уразливості, відповідно до заданої рольовою моделлю. Це означає, що різні групи розробників однієї компанії будуть отримувати оповіщення і бачити статус вразливостей тільки для того продукту, над яким вони працюють.

Частота повідомлень Системи управління уразливими налаштовується довільно, але при виявленні уразливості з CVSS-скоринг більше 7,5 розробники отримають негайне оповіщення.

Інтеграція з ViPNet TIAS

Програмно-апаратний комплекс ViPNet Threat Intelligence Analytics System автоматично виявляє комп'ютерні атаки і виявляє інциденти на підставі надходять від різних джерел подій інформаційної безпеки. Основне джерело подій для ViPNet TIAS - ViPNet IDS, яка аналізує вхідний і вихідний мережевий трафік за допомогою баз вирішальних правил AM Rules розробки «Перспективного моніторингу». Деякі сигнатури написані на детектування експлуатації вразливостей.

Якщо ViPNet TIAS виявляє інцидент ІБ, в якому була проексплуатовано вразливість, то в картку інциденту з СУУ автоматично заноситься вся пов'язана з уразливістю інформація, включаючи методи усунення або компенсації негативного впливу.

Система управління інцидентами допомагає і в розслідуваннях інцидентів ІБ, надаючи аналітикам інформацію про індикатори компрометації і потенційних порушених інцидентом вузлах інформаційної інфраструктури.

Моніторинг наявності вразливостей в інформаційних системах

Ще один сценарій використання системи управління уразливими - перевірка на вимогу.

Замовник самостійно формує вбудованими засобами або розробленим нами скриптом перелік встановленого на вузлі (АРМ, сервер, СУБД, ПАК СЗІ, мережеве обладнання) системного та прикладного програмного забезпечення і компонентів, передає цей перелік в СУУ і отримує звіт про виявлені вразливості і періодичні оповіщення про їх статусі.

Відмінності Системи від поширених сканерів вразливостей:

  • Не вимагає установки агентів моніторингу на вузлах.
  • Чи не створює навантаження на мережу, оскільки самої архітектурою рішення не передбачені агенти і сервери сканування.
  • Чи не створює навантаження на обладнання, оскільки перелік компонентів створюється системними командами або легковажним скриптом з відкритим вихідним кодом.
  • Виключає можливість витоку інформації. «Перспективний моніторинг» не може нічого достовірно дізнатися про фізичну і логічному розташування іншим особам або функціональне призначення вузла в інформаційній системі. Єдина інформація, яка залишає межі контрольованого периметра замовника, - txt-файл з переліком програмних компонентів. Цей файл перевіряється на вміст і завантажується в СУУ самим замовником.
  • Для роботи системи нам не потрібні облікові записи на контрольованих вузлах. Інформацію збирає адміністратор вузла від свого імені.
  • Безпечний обмін інформацією по ViPNet VPN, IPsec або https.

Підключення до сервісу управління уразливими «Перспективного моніторинг» допомагає замовнику виконати вимогу АНЗ.1 «Виявлення, аналіз вразливостей інформаційної системи і оперативне усунення нововиявлених вразливостей» наказів ФСТЕК Росії № 17 і 21. Наша компанія - ліцензіат ФСТЕК Росії на діяльність з технічного захисту конфіденційної інформації.

вартість

Мінімальна вартість - 25 000 рублів на рік за 50 підключених до системи вузлів при наявності діючого контракту на підключення до

Інший спосіб поглянути на цю проблему полягає в тому, що компанії повинні швидко реагувати, коли програма має вразливість. Це вимагає, щоб ІТ-відділ мав можливість остаточно відстежувати встановлені додатки, компоненти і патчі за допомогою засобів автоматизації і стандартних інструментів. Існують галузеві зусилля по стандартизації тегів програмного забезпечення (19770-2), які представляють собою файли XML, встановлені з додатком, компонентом і / або патчем, які ідентифікують встановлене програмне забезпечення, а в разі компонента або патча, який додаток вони частина. Теги мають авторитетну інформацію видавця, інформацію про версії, список файлів з ім'ям файлу, безпечний хеш файлу і розмір, які можуть використовуватися для підтвердження того, що встановлене додаток знаходиться в системі, і що виконавчі файли не внесено жодних змін третьою стороною. Ці мітки підписуються цифровим підписом видавцем.

Коли відома уразливість, ІТ-відділи можуть використовувати своє програмне забезпечення для управління активами для негайного виявлення систем з вразливим програмним забезпеченням і можуть зробити кроки для відновлення систем. Теги можуть бути частиною патча або поновлення, які можна використовувати для перевірки того, що патч встановлено. Таким чином, ІТ-відділи можуть використовувати такі ресурси, як Національна база даних вразливостей NIST, як засіб управління своїми інструментами управління активами, так що, як тільки вразливість буде відправлена \u200b\u200bкомпанією в NVD, ІТ-відділ може негайно порівняти нові уразливості з їх до теперішнього часу.

Існує група компаній, що працюють через некомерційну організацію IEEE / ISTO під назвою TagVault.org (www.tagvault.org) з урядом США, на стандартну реалізацію ISO 19770-2, яка дозволить цей рівень автоматизації. У якийсь момент ці теги, що відповідають цій реалізації, швидше за все, будуть обов'язковими для програмного забезпечення, проданого уряду США в якийсь момент в найближчі пару років.

Тому, врешті-решт, хорошою практикою є не публікація про те, які програми і конкретні версії програмного забезпечення ви використовуєте, але це може бути складно, як вказувалося раніше. Ви хочете переконатися в тому, що у вас є точний, сучасний інвентар програмного забезпечення, що він регулярно порівнюється зі списком відомих вразливостей, таких як NVID від NVD, і що ІТ-відділ може вжити негайних дії для ремінірованія загрози, Це поряд з новітнім виявленням вторгнень, антивірусним скануванням і іншими методами блокування середовища, по крайней мере, буде дуже складно скомпрометувати вашу середу, і якщо / коли це станеться, то вона не буде виявлена \u200b\u200bдля тривалий період часу.

В даний час розроблено велику кількість інструментальних засобів, призначених для автоматизації пошуку вразливостей програм. У даній статті будуть розглянуті деякі з них.

Вступ

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

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

Для виявлення вразливостей використовують різні інструментальні засоби, наприклад, статичні аналізатори вихідного коду програми, огляд яких наведено в даній статті.

Класифікація вразливостей захисту

Коли вимога коректної роботи програми на всіх можливих вхідних даних порушується, стає можливим поява так званих вразливостей захисту (security vulnerability). Уразливості захисту можуть приводити до того, що одна програма може використовуватися для подолання обмежень захисту всієї системи в цілому.

Класифікація вразливостей захисту в залежності від програмних помилок:

  • Переповнення буфера (buffer overflow). Ця вразливість виникає через відсутність контролю за виходом за межі масиву в пам'яті під час виконання програми. Коли занадто великий пакет даних переповнює буфер обмеженого розміру, вміст сторонніх елементів пам'яті перезаписується, і відбувається збій і аварійний вихід з програми. За місцем розташування буфера в пам'яті процесу розрізняють переповнення буфера в стеку (stack buffer overflow), купі (heap buffer overflow) і області статичних даних (bss buffer overflow).
  • Уразливості "зіпсованого введення" (tainted input vulnerability). Уразливості "зіпсованого введення" можуть виникати у випадках, коли вводяться користувачем дані без достатнього контролю передаються інтерпретатору деякого зовнішнього мови (зазвичай це мова Unix shell або SQL). У цьому випадку користувач може таким чином поставити вхідні дані, що запущений інтерпретатор виконає зовсім не ту команду, яка передбачалася авторами вразливою програми.
  • Помилки форматних рядків (format string vulnerability). Даний тип вразливостей захисту є підкласом уразливості "зіпсованого введення". Він виникає через недостатній контроль параметрів при використанні функцій форматного введення-виведення printf, fprintf, scanf, і т. Д. Стандартної бібліотеки мови Сі. Ці функції приймають в якості одного з параметрів символьний рядок, що задає формат вводу або виводу наступних аргументів функції. Якщо користувач сам може задати вид форматування, то ця уразливість може виникнути в результаті невдалого застосування функцій форматування рядків.
  • Уразливості як наслідок помилок синхронізації (race conditions). Проблеми, пов'язані з багатозадачністю, призводять до ситуацій, званим "стан гонки": програма, не розрахована на виконання в багатозадачному середовищі, може вважати, що, наприклад, використовувані нею при роботі файли не може змінити інша програма. Як наслідок, зловмисник, вчасно підміняє вміст цих робочих файлів, може нав'язати програмі виконання певних дій.

Звичайно, крім перерахованих існують і інші класи уразливостей захисту.

Огляд існуючих аналізаторів

Для виявлення вразливостей захисту в програмах застосовують такі інструментальні засоби:

  • Динамічні отладчики. Інструменти, які дозволяють виробляти налагодження програми в процесі її виконання.
  • Статичні аналізатори (статичні отладчики). Інструменти, які використовують інформацію, накопичену в ході статичного аналізу програми.

Статичні аналізатори вказують на ті місця в програмі, в яких можливо знаходиться помилка. Ці підозрілі фрагменти коду можуть, як містити помилку, так і виявитися зовсім безпечними.

В даній статті запропоновано огляд декількох існуючих статичних аналізаторів. Розглянемо докладніше кожен з них.

У деяких випадках виникнення вразливостей обумовлено застосуванням засобів розробки різного походження, які збільшують ризик появи в програмному коді дефектів диверсійного типу.

Уразливості з'являються внаслідок додавання до складу ПО сторонніх компонентів або вільно розповсюджуваного програмного коду (open source). Чужий код часто використовується «як є» без ретельного аналізу і тестування на безпеку.

Не варто виключати і наявність в команді програмістів-інсайдерів, які навмисно вносять в створюваний продукт додаткові недокументовані функції або елементи.

Класифікація вразливостей програм

Уразливості виникають в результаті помилок, що виникли на етапі проектування або написання програмного коду.

Залежно від стадії появи цей вид погроз ділиться на уразливості проектування, реалізації та конфігурації.

  1. Помилки, допущені при проектуванні, найскладніше виявити і усунути. Це - неточності алгоритмів, закладки, неузгодженості в інтерфейсі між різними модулями або в протоколах взаємодії з апаратною частиною, впровадження неоптимальні технологій. Їх усунення є досить трудомістким процесом, в тому числі тому, що вони можуть проявитися в неочевидних випадках - наприклад, при перевищенні передбаченого обсягу трафіку або при підключенні великої кількості додаткового обладнання, що ускладнює забезпечення необхідного рівня безпеки і веде до виникнення шляхів обходу брандмауера.
  2. Уразливості реалізації з'являються на етапі написання програми або впровадження в неї алгоритмів безпеки. Це - некоректна організація обчислювального процесу, синтаксичні та логічні дефекти. При цьому є ризик, що вада призведе до переповнення буфера або появи неполадок іншого роду. Їх виявлення займає багато часу, а ліквідація передбачає виправлення певних ділянок машинного коду.
  3. Помилки конфігурації апаратної частини та комплектуючі, ПЗ зустрічаються досить часто. Поширеними їх причинами є недостатньо якісна розробка і відсутність тестів на коректну роботу додаткових функцій. До цієї категорії також можна відносити занадто прості паролі і залишені без змін облікові записи за замовчуванням.

Згідно зі статистикою, особливо часто уразливості виявляють в популярних і поширених продуктах - настільних і мобільних операційних системах, браузерах.

Ризики використання вразливих програм

Програми, в яких знаходять найбільше число вразливостей, встановлені практично на всіх комп'ютерах. З боку кіберзлочинців є пряма зацікавленість в пошуку подібних вад і написанні для них.

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

Зараження в останньому випадку відбувається за наступним алгоритмом:

  • Користувач отримує по електронній пошті фішингових лист від вселяє довіру відправника.
  • У лист вкладено файл c експлойтів.
  • Якщо користувач робить спробу відкриття файлу, то відбувається зараження комп'ютера вірусом, трояном (шифрувальником) або іншою шкідливою програмою.
  • Кіберзлочинці отримують несанкціонований доступ до системи.
  • Відбувається крадіжка цінних даних.

Дослідження, що проводяться різними компаніями ( «Лабораторія Касперського», Positive Technologies), показують, що уразливості є практично в будь-якому додатку, включаючи антивіруси. Тому ймовірність встановити програмний продукт, що містить вади різного ступеня критичності, вельми висока.

Щоб мінімізувати кількість прогалин в ПО, необхідно використовувати SDL (Security Development Lifecycle, безпечний життєвий цикл розробки). Технологія SDL використовується для зниження числа багів в додатках на всіх етапах їх створення і підтримки. Так, при проектуванні програмного забезпечення фахівці з ІБ і програмісти моделюють кіберзагрози з метою пошуку вразливих місць. В ході програмування в процес включаються автоматичні засоби, відразу ж повідомляють про потенційних недоліках. Розробники прагнуть значно обмежити функції, доступні неперевіреними користувачам, що сприяє зменшенню поверхні атаки.

Щоб мінімізувати вплив вразливостей і збиток від них, необхідно виконувати деякі правила:

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

При запуску інтелектуального сканування програма Avast перевірить ПК на наявність наступних типів проблем, а потім запропонує варіанти їх усунення.

  • віруси: Файли, що містять шкідливий код, який може вплинути на безпеку і продуктивність вашого ПК.
  • вразливе ПО: Програми, що вимагають оновлення, які можуть бути використані зловмисниками для доступу до всієї системи.
  • Браузерні розширення з поганою репутацією: Розширення браузера, які зазвичай встановлюються без вашого відома і впливають на продуктивність системи.
  • ненадійні паролі: Паролі, які використовуються для доступу більш ніж до одного облікового запису в Інтернеті і можуть бути легко зламані або скомпрометовані.
  • Мережеві загрози: Уразливості вашої мережі, які можуть зробити можливими атаки на ваші мережеві пристрої і маршрутизатор.
  • Проблеми з продуктивністю: Об'єкти (непотрібні файли і додатки, проблеми, пов'язані з настройками), які можуть перешкоджати роботі ПК.
  • конфліктуючі антивіруси: Антивірусні програми, встановлені на ПК разом з Avast. Наявність декількох антивірусних програм уповільнює роботу ПК і знижує ефективність антивірусного захисту.

Примітка. Рішення певних проблем, які виявляються в ході інтелектуального сканування, може зажадати окремої ліцензії. Виявлення непотрібних типів проблем можна відключити в.

Рішення виявлених проблем

Зелений прапорець поруч з областю сканування показує, що проблем, пов'язаних з нею, не виявлено. Червоний хрест означає, що сканування виявило одну або кілька пов'язаних проблем.

Щоб переглянути конкретні відомості про виявлені проблеми, клацніть елемент вирішити всі. Інтелектуальне сканування показує відомості про кожну проблему і пропонує можливість виправити її негайно, клацнувши елемент вирішити, Або зробити це пізніше, натиснувши Пропустити цей крок.

Примітка. Журнали сканувань антивіруса можна побачити в історії сканування, перейти до якої можна, вибравши захист Антивірус.

Управління настройками інтелектуального сканування

Щоб змінити налаштування інтелектуального сканування, виберіть Налаштування Загальні Інтелектуальне сканування і вкажіть, на наявність яких з перерахованих типів проблем ви хочете виконати інтелектуальне сканування.

  • віруси
  • застаріле ПО
  • надбудови браузера
  • Мережеві загрози
  • Проблеми з сумісністю
  • Проблеми з продуктивністю
  • ненадійні паролі

За замовчуванням включені всі типи проблем. Щоб припинити перевірку на наявність певної проблеми при виконанні інтелектуального сканування, клацніть повзунок включено поруч з типом проблеми, щоб він змінив стан на Виключено.

клацніть налаштування поруч з написом Сканування на віруси, Щоб змінити параметри сканування.