Loader

Керування та усунення вразливостей, пов’язаних з неправильною конфігурацією хмарної інфраструктури, за допомогою Tenable.cs та HashiCorp Terraform Cloud

Число прогалин безпеки в хмарних ресурсах зростає через помилки в їх конфігураціях, яким можна запобігти. Інтеграція Tenable.cs і Terraform Cloud допомагає ефективно їх позбутися.

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

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

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

Як наслідок, масштаби та швидкість витоків даних із хмарних середовищ зростають. Тільки через неправильну конфігурацію хмарної інфраструктури в період з 2018 по 2020 рік в результаті 200 порушень було розкрито понад 30 мільярдів облікових записів.

Як можна знизити ймовірність порушень, спричинених неправильною конфігурацією хмарних ресурсів? У цьому пості ми пояснимо, як Tenable та HashiCorp можуть допомогти у вирішенні цієї проблеми за допомогою нової інтеграції між Tenable.cs та Terraform Cloud Run Tasks.

Введення в хмарне середовище та Terraform
Надання хмарних ресурсів є ключовим аспектом розгортання робочих навантажень хмар.

Хоча більшість хмарних провайдерів мають власні утиліти надання ресурсів, найкращі у своєму класі інструменти, такі як Hashicorp Terraform, пропонують переваги, що виходять за рамки того, що пропонують хмарні провайдери.

Використання Terraform, інструмента Infrastructure as Code (IaC) з відкритим вихідним кодом, для забезпечення інфраструктури дає безліч переваг для управління та експлуатації вашого середовища. HashiCorp Configuration Language (HCL) забезпечує можливість стандартизації багаторазово використовуваних модулів інфраструктури, які можна використовувати у різних проектах та середовищах. При створенні інфраструктури Terraform зчитує поточний стан середовища та визначає всі зміни, необхідні для приведення середовища у стан, визначений у IaC.

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

Питання безпеки ключа Terraform
Terraform також пропонує переваги щодо безпеки.

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

Захисні процеси можуть бути впроваджені також за допомогою CI/CD-конвеєрів або інших автоматизованих засобів для забезпечення відповідності вашого середовища політикам безпеки.

Використання таких інструментів, як Terraform, полегшує управління інфраструктурою. Водночас критичні помилки у конфігураціях хмарної інфраструктури трапляються часто. Основні області, що викликають занепокоєння при управлінні вразливими середовищами Terraform, включають:
· Управління «секретами»: Використання Terraform вимагає облікових даних для авторизації будь-яких дій API, необхідних для забезпечення інфраструктури, вказаної у вашому коді. Оскільки ці облікові дані надають привілейований доступ для створення, управління та видалення вашого середовища, слід подбати про те, щоб вони не потрапили до рук неавторизованих людей чи процесів.
· Управління станом системи: Terraform використовує файл стану для відстеження стану ресурсів інфраструктури. За замовчуванням файл стану зберігається у локальній файловій системі системи, де виконується Terraform. Збереження файлів стану разом із вихідним кодом – погана ідея, оскільки вони можуть містити секрети чи іншу конфіденційну інформацію.
· Управління залежностями: Terraform використовує плагіни, які називаються «постачальниками», для взаємодії з віддаленими API для ресурсів, визначених у вашому коді. Вони завантажуються в систему, де виконується Terraform, під час команди “terraform init”. Оскільки постачальники управляють потужними операціями у вашій інфраструктурі, важливо завантажувати їх з надійних джерел та підтверджувати, що вони не були підроблені, перш ніж їх використовувати.
· Управління змінами: У будь-якому складному корпоративному середовищі під час виконання можуть відбуватися ручні зміни за допомогою механізмів розбивання скла або інших засобів. Ці зміни викликають відхилення, зване “дрейфом”, між середовищем виконання та тим, що було визначено в коді Terraform. Якщо не внести виправлення у вихідний код, команди збірки продовжуватимуть використовувати стару версію та/або системи перестануть відповідати вимогам безпеки.

Для отримання додаткових відомостей про ключі безпеки Terraform див. технічний документ «Посібник DevOps з безпеки Terraform».

Запобігання вразливості Terraform за допомогою Tenable.cs
Tenable.cs— це зручна платформа безпеки хмарних програм (CNASP), яка дозволяє вашій організації захищати хмарні ресурси, образи контейнерів, інші хмарні активи, забезпечуючи наскрізну безпеку на основі IaC.

Для оцінки IaC можна використовувати Terrascan. Terrascan – це проект з відкритим вихідним кодом, створений компанією Tenable і є основою механізму сканування для Tenable.cs. Terrascan включає сотні політик для кількох провайдерів, написаних мовою Rego, та оцінює неправильну конфігурацію за допомогою механізму Open Policy Agent (OPA).

Ці політики можна розширити, включивши до них будь-які стандарти, характерні для вашого середовища. Щоб забезпечити їх дотримання в рамках робочого процесу, ви можете включити завдання до конвеєра CI/CD, який використовує Terrascan для сканування будь-яких змін у файлах HCL щодо проблем безпеки. Якщо виявлено будь-які проблеми, завдання завершиться невдачею з повідомленням про помилку, що вказує на те, що виявлено проблему безпеки, яку необхідно вирішити.

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

Особливість збою політики Tenable.cs для Terraform: шифрування сховища не включено в екземплярі RDS.

Для виправлення та усунення збою рекомендується увімкнути шифрування сховища у самому шаблоні Terraform.

Ефективне доповнення: автоматичні виправлення за допомогою задач HashiCorp Terraform Cloud Run

Команда розробників Tenable розширила свої можливості щодо забезпечення безпеки Terraform з підтримкою нових завдань Terraform Cloud Run від HashiCorp.

Terraform Cloud надає хостингове рішення для створення та розгортання шаблонів Terraform.

За допомогою нових завдань Terraform Cloud Run Tasks можна використовувати Tenable.cs для сканування ваших шаблонів Terraform на етапі розгортання хмари.

Terraform Cloud дозволяє виявляти будь-які проблеми безпеки на основі IaC за допомогою Tenable.cs на етапі планування та використання хмарних ресурсів.

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

Клієнти можуть використовувати більше 1500 політик Tenable.cs для виконання глибокого сканування в Terraform Cloud

Посібник з налаштування підключення Tenable.cs до Terraform Cloud Workspace можна знайти тут.

Щоб дізнатися більше про Tenable.cs перегляньте технічний опис або отримайте доступ до вебінару “Introducing Tenable.cs: Secure Every Step From Code to Cloud”.

З питань проведення індивідуальної демонстрації, пілотного тестування рішення Tenable і організації партнерських тренінгів звертайтеся, будь ласка: tenable_sales@oberig-it.com, +38 099 427 94 04.

Джерело: https://bit.ly/3Bi8lsh