Mastodon Mastodon Mastodon Mastodon

Авторизація

Оновлено: · CyberSecureFox Editorial Team

Авторизація — процес визначення, що дозволено робити вже ідентифікованому користувачу, пристрою чи застосунку: які дані читати, які дії виконувати та до яких ресурсів звертатися.

Як працює авторизація

Авторизація йде після автентифікації: автентифікація відповідає на питання «хто ви?», авторизація — «що вам дозволено?». Системи реалізують її через моделі керування доступом:

  • Списки контролю доступу (ACL) — дозволи, прив’язані до кожного файлу чи об’єкта;
  • Рольова модель (RBAC) — права призначаються ролям, наприклад «бухгалтер» чи «служба підтримки»;
  • Атрибутна модель (ABAC) — рішення на основі атрибутів: відділу, стану пристрою, місцезнаходження чи часу;
  • Керування доступом на основі зв’язків — застосовується хмарними сервісами для спільного доступу до документів конкретних людей.

У вебі OAuth 2.0 (RFC 6749) — це саме фреймворк авторизації: він дає змогу користувачу надати застосунку обмежений доступ до своїх даних без передавання пароля за допомогою маркерів доступу із заданими областями (scopes).

Чому авторизація важлива

Помилки авторизації — одні з найпоширеніших серйозних вразливостей. «Порушення контролю доступу» (Broken Access Control) посідає перше місце в OWASP Top 10 (2021), а порушення авторизації на рівні об’єктів (BOLA) очолює OWASP Security Top 10 для API. Ці слабкості каталогізовано як CWE-862 (відсутність авторизації) та CWE-863 (некоректна авторизація). Типовий приклад — небезпечне пряме посилання на об’єкт (IDOR): змінивши ID в URL, можна побачити рахунок іншого клієнта. Подібні помилки призводили до розкриття мільйонів записів, а вразливості, що дають змогу виконувати функції адміністратора, прямо ведуть до підвищення привілеїв.

Рекомендації

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