Події 0
Ua
En
Події 0
Результат пошуку:
Порівняння безпеки кастомного та комерційного програмного забезпечення- image 1

Порівняння безпеки кастомного та комерційного програмного забезпечення

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

Два типи додатків, з якими повинні бути знайомі команди безпеки, – це програмне забезпечення, розроблене на замовлення, і комерційне програмне забезпечення (commercial off-the-shelf, COTS). Пропонуємо розглянути відмінності між додатками, розробленими на замовлення, і COTS-додатками, а також способи захисту кожного типу додатків.

Що таке кастомне програмне забезпечення?

Ключова відмінність між цими двома типами додатків полягає в тому, кому належить вихідний код ─ набір комп’ютерних інструкцій, який виконує певну задачу. Кожна програма побудована на основі вихідного коду, і цей код створюється розробниками програмного забезпечення. Сучасні мови програмування, які ви, швидше за все, зустрінете у вихідному коді, включають Java, Python, .NET, Node.js та Go.

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

Ось приклад. Припустимо, ви працюєте у відділі безпеки компанії під назвою “Math Tutors”. Розробники компанії створили код Python, показаний нижче.

Порівняння безпеки кастомного та комерційного програмного забезпечення - зображення 7

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

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

Порівняння безпеки кастомного та комерційного програмного забезпечення - зображення 9

Після забезпечення безпеки вашого кастомного програмного забезпечення, ви випускаєте версію 1.1.0 вашого продукту. Коли клієнти купують ваше програмне забезпечення, вони несуть відповідальність за оновлення до останньої версії, що означає, що тепер вони повинні використовувати версію 1.1.0, щоб переконатися, що вони використовують найбільш безпечну версію вашого програмного забезпечення.

Як забезпечується захист кастомних розробок?

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

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

З shift left підходом до безпеки, виявлення вразливого коду починається під час розробки через аналіз композиції програмного забезпечення (SCA), статичне тестування безпеки програм (SAST) та динамічне тестування безпеки програм (DAST). Ці інструменти ефективні для ізоляції унікальних випадків вразливого коду.

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

  • Неаутентифіковані API;
  • Невідомі чутливі дані або потоки даних;
  • Мікросервіси, орієнтовані на Інтернет;
  • Комунікація з третіми сторонами.

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

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

Figure 1. With its powerful ASPM capabilities, CrowdStrike Falcon® Cloud Security shows a list of all internet-facing microservices that access personally identifiable information (PII) data and contain critical vulnerabilitiesРисунок 1. Завдяки потужним можливостям ASPM, CrowdStrike Falcon® Cloud Security показує список всіх мікросервісів, що працюють в Інтернеті, які отримують доступ до персональних даних і містять критичні вразливості.

CrowdStrike Falcon Cloud Security надає потужні можливості ASPM як частина єдиної хмарної платформи захисту програм (CNAPP) для повного захисту ваших додатків. Щоб дізнатися більше про можливості захисту кастомних розробок, заповнюйте форму зворотного зв’язку на нашому сайті.

Що таке комерційне програмне забезпечення?

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

Коли програма оплачується на повторюваній основі, ви купуєте програмне забезпечення як послугу (SaaS). SaaS – це модель доходу, але терміни COTS та SaaS часто використовуються як синоніми.

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

Порівняння безпеки кастомного та комерційного програмного забезпечення - зображення 11

Коли випускається версія 1.1.0 програми, ваша команда в Math Learners несе відповідальність за оновлення ваших систем, щоб забезпечити виправлення вразливості та використання безпечної версії. Навіть якщо ви не помічаєте видимих змін, оновлення версії додає виправлення безпеки до програмного забезпечення.

Поширеними прикладами COTS-додатків, які купують організації, є Google Workspace, Microsoft Outlook та багато інших. Кожна з цих програм вважається “розробленою на замовлення” організаціями, що їх продають.

Як забезпечується безпека програм COTS?

Придбання програмного забезпечення COTS накладає певні обов’язки з безпеки. Нижче наведено кроки для початкового налаштування та постійного моніторингу:

  1. Провести огляд безпеки постачальника та програми COTS.
  2. Надати доступ необхідним членам вашої організації.
  3. Постійно моніторити:
    • Інтерфейс програмування додатків (API) між внутрішніми кастомними розробками та програмою COTS.
    • Індивідуальні дозволи доступу та конфігурацію.
    • Дані, що передаються до (та від) програми COTS.

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

  • Нещодавній тест на проникнення
  • Перелік матеріалів для програмного забезпечення (SBOM)
  • Документація про життєвий цикл розробки програмного забезпечення постачальника (SDLC)
  • Сертифікати, такі як SOC 2 або ISO
  • Відгуки клієнтів
  • Права доступу до даних в умовах та положеннях.

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

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

З наданим доступом, важливо постійно моніторити програми COTS. Перша сфера управління – це міжпрограмний доступ. Такий тип доступу відбувається через API, які створюють розробники програмного забезпечення.

Успішне впровадження управління API включає в себе інвентаризацію всіх API-викликів до програм COTS. Опис API має бути оновлений, коли розробники програмного забезпечення створюють та видаляють API, та відзначати всі API, що передають чутливі дані. Інструменти ASPM автоматично генерують повний список API-викликів до сторонніх програм.

Figure 2. A graphical representation of COTS APIs shown in Falcon Cloud SecurityРисунок 2. Графічне представлення COTS API у Falcon Cloud Security

Другою сферою для управління є розподіл користувачів. Команди безпеки повинні регулярно перевіряти та оновлювати доступ користувачів до програм COTS. Крім того, команди безпеки несуть відповідальність за управління конфігурацією програм COTS. Управління доступом до ідентифікації (IAM) та управління позицією безпеки програмного забезпечення як послуги (SSPM) допомагають забезпечити правильні конфігурації COTS.

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

Розглянемо, наприклад, наступний сценарій:

  1. Завантажується конфіденційний файл.
  2. Вміст копіюється в електронну таблицю.
  3. Менші фрагменти даних копіюються на інший аркуш і переносяться на особистий диск Google.

Рішення для захисту даних надають повний потік разом із тим, хто виконував дії і куди ці дані потрапили.

Як CrowdStrike допомагає забезпечити безпеку користувацьких та програм COTS?

Як кастомні прогами, так і програми COTS стикаються з унікальними викликами, але у обох випадках важлива прозорість. З CrowdStrike Falcon ви можете відстежувати використання вашої організацією програмного забезпечення COTS та запобігти втраті даних.

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

iIT Distribution – офіційний дистриб’ютор рішень компанії CrowdStrike. Наші партнери, клієнти та організації будь-якого масштабу можуть отримати доступ до високоефективних продуктів CrowdStrike, зробивши запит пробної версії на нашому сайті. Залишайтеся в безпеці!

НОВИНИ

Актуальні новини на вашу тему

Усі новини
Усі новини