Важливість SAML у запобіганні кібератакам хакерів
Updated Mon, February 27, 2023 6:00 EST
Серія нещодавніх кібератак хакерів на різні організації, такі як ланцюг постачання сонячного вітру, вплинула на урядові установи США та інші організації, що призвело до важливих висновків щодо методу, який скомпрометував системи.
Корпорація Майкрософт проаналізувала атаки та з’ясувала, що одним із методів була мова SAML (Security Assertion Markup Language), через яку була здійснена атака.
Зловмисники вставили зловмисний код у програмне забезпечення для моніторингу та керування інфраструктурою компанії SolarWinds, що дало їм точку опори біля дверей цієї мережі, звідки вони отримали підвищені дозволи. Потрапивши в мережу, зловмисник скористався адміністративними дозволами, отриманими через локальну компрометацію, для доступу до облікового запису глобального адміністратора та сертифіката підпису маркера SAML. Використовуючи сертифікат підпису, зловмисники підробляли токени SAML. Потім зловмисники видавали себе за привілейованих користувачів для доступу до ресурсів у хмарі або локально.
Отже, що таке SAML і як ним безпечно керувати?
SAML, або Security Assertion Markup Language, — це процес, який повідомляє зовнішнім службам і програмам, що користувач є тією самою особою, яка ввійшла в систему. Процес SAML створює технологію єдиного входу (SSO). Він автентифікує користувача, а потім використовує цю автентифікацію для кількох програм. Поточна версія SAML 2.0 використовується з 2005 року. Вона об’єднала кілька попередніх версій SAML і тепер є сучасним стандартом.
Автентифікація SAML вважається ідентифікаційною карткою. Це швидкий спосіб визначити, хто ця особа. Це все одно, що підтверджувати особу людини, просто дивлячись на ідентифікаційну картку, замість того, щоб проводити низку тестів ДНК.
З великою кількістю постачальників і виробників для різних типів пристроїв і мережевих систем, які об’єднуються для різних цілей, узгодження їх стає критичним завданням. Перевагою SAML є його стандарти сумісності, які дозволяють широко застосовувати його в різних специфікаціях, особливо постачальників хмарних послуг, для передачі ідентичності користувачів.
Що таке єдиний вхід (SSO) і його використання?
Single sign-on (SSO) is a reliable way for a user to get authenticated for multiple services and applications at once. This facility allows users to sign in to a single login screen and then use any different services or apps without identifying themselves each time. It can happen when the SSO system confirms that the user signed in to each external app or service. At this point, the SAML comes into action.
Функції SAML
Процес автентифікації SSO має три зацікавлені сторони.
- Принципал – вони є людьми-користувачами в максимальних випадках, за винятком ботів, які намагаються отримати доступ до програм, розміщених у хмарі.
- Постачальник ідентифікаційних даних – це хмарна служба програмного забезпечення, яка зберігає ідентифікаційні дані користувачів і підтверджує їх під час процесу входу. По суті, це означає, що вони знають користувача та можуть виконувати конкретні завдання. Система єдиного входу, можливо, є окремою від постачальника ідентифікаційної інформації, але вона діє як їхній представник, тому багато в чому це те саме в процесі SAML.
- Постачальник послуг – хмарні програми та служби, до яких користувачі зазвичай мають доступ, це Microsoft 365 і Gmail, служба хмарного зберігання Google Drive, AWS S3 і програми, що використовуються для спілкування, такі як Skype і Slack. У звичайних обставинах користувач увійшов би до зазначених вище служб напряму, але коли система єдиного входу діє, користувач спочатку входить до системи єдиного входу. SAML надає доступ замість того, щоб дозволяти користувачеві входити опосередковано.
Типовий робочий процес буде таким
- Принципал або користувач звертаються з проханням до Постачальника послуг.
- Постачальник послуг запитує автентифікацію у постачальника ідентифікаційної інформації
- Постачальник ідентифікаційної інформації надсилає підтвердження SAML постачальнику послуг.
- Потім постачальник послуг надсилає відповідь принципалу
якщо принципал не ввійшов у систему, постачальник посвідчень запропонує йому ввійти перед надсиланням підтвердження SAML.
Твердження SAML має важливе значення, оскільки воно повідомляє постачальнику послуг, що користувач увійшов у систему та підтверджено особу користувача. Джерело твердження, наданий час і застосовані умови роблять твердження SAML дійсним.
Наприклад, твердження SAML схоже на референсний відгук, наданий для кандидата, який претендує на роботу. Особа, яка надає рекомендацію, підтвердить посаду кандидата, тривалість, продуктивність і загальну думку. Компанія приймає на роботу або відмовляє кандидата на підставі відгуку рекомендації. Подібним чином хмарна служба або програма SaaS може заборонити або дозволити користувача на основі твердження SAML.
Аутентифікація SAML та авторизація користувача
Це є спільний misconception, що authentication і authorization є той самий, коли це використовується в user identity. У SAML, технологія використовується для використання автора і не для authorization. Key difference here is that user authorization is separate function under purview of identity access management.
Автентифікація: Це стосується ідентифікації користувача, того, ким він є, і чи підтверджує процес входу його особу.
Авторизація: це стосується дозволів і привілеїв, наданих будь-якому користувачеві. Це в контексті дій, дозволених ІТ-системами організації для працівників щодо їхніх посадових ролей.
Наприклад, простою мовою давайте зрозуміємо різницю між автентифікацією та авторизацією. Людина відвідує захід і показує свій квиток і будь-яку форму посвідчення особи на вході, щоб підтвердити, що вона та особа. Коли його прийнято, їм дозволено увійти всередину. Це аутентифікація.
Всередині події людина має певні обмеження. Це означає, що вони не можуть нікуди ходити, сидіти, виходити на сцену і виступати, оскільки вони не мають на це права. Авторизація лише для перегляду події. Для додаткової авторизації їм потрібно отримати додаткові пропуски за лаштунки. Це було б еквівалентно вищому дозволу з точки зору ІТ.
Сторонні постачальники послуг використовують технології для забезпечення керування ідентифікацією та доступом (IAM), щоб контролювати процес авторизації користувача. Рішення для керування доступом використовують різні стандарти авторизації. Вони дозволяють організаціям керувати доступом користувачів до даних і внутрішніх ресурсів за допомогою легкої інтеграції системи єдиного входу для забезпечення автентифікації та авторизації.