Неправильна конфігурація безпеки

Неправильна конфігурація безпеки

Одне налаштування CORS, і будь-який сайт зможе прочитати обліковий запис.

Що таке Неправильна конфігурація безпеки?

Код правильний, а API все ще небезпечний, оскільки параметр, важливий для безпеки, залишився в небезпечному стані. Це CORS: API відображає будь-який Origin, який абонент надсилає в Access-Control-Allow-Origin , і встановлює для Access-Control-Allow-Credentials значення true, повідомляючи браузерам, що будь-який сайт може читати його відповіді за допомогою файлу cookie сеансу відвідувача. Ви створите сторінку винагороди, яка надсилатиме відповідь API облікового запису на ваш сервер, а потім обмежите дозволені джерела явним списком на стороні сервера. Повторне відтворення показує, що CORS виконується браузером, а не сервером.

Що ви дізнаєтесь у Неправильна конфігурація безпеки

Неправильна конфігурація безпеки — Кроки навчання

  1. Зручний для браузера API

    Corvexa — це програма для особистих фінансів: люди пов’язують свій банк і відстежують свої витрати, а веб-програма Corvexa зчитує їхні облікові записи з API Corvexa прямо в браузері. Сьогодні Боб націлений на Corvexa. Йому потрібні дані облікового запису клієнтів, які він може фішингувати та перепродавати. У нього є власний одноразовий обліковий запис Corvexa, і він починає переглядати загальнодоступну документацію розробника, щоб побачити, як API відкривається для браузера.

  2. Будь-який сайт дозволений

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

  3. Запитайте як сайт зловмисника

    Боб повторює запит, який зробить його шкідлива сторінка. Він вказує API-клієнт на кінцеву точку облікового запису та, як і браузер, встановлює заголовок Origin на свій сайт. Він увійшов у свій власний одноразовий обліковий запис Corvexa, тому запит містить реальний сеанс. Його цікавить не тіло, а те, що API повідомляє браузеру, що він може зробити з відповіддю.

  4. API каже, що так

    Перегляньте заголовки відповідей, які API надіслав разом з обліковим записом.

  5. Сторінка приманки

    Боб створює нешкідливу на вигляд сторінку для розміщення на власному сайті: банер із винагородою Corvexa. Він відображається в браузері зліва; його джерело відкрито в редакторі праворуч. Сам по собі він не робить нічого, крім показу пропозиції $50.

  6. Озброїти сторінку

    Тепер Боб додає корисне навантаження. Банер виглядатиме ідентично для відвідувача, але сторінка тихо викличе API облікового запису Corvexa з їхнього браузера та відправить усе, що надходить на його власний сервер. Оскільки API дозволяє його походження з обліковими даними, файл cookie відвідувача зробить все інше.

  7. Як працює крадіжка

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

  8. Надішліть приманку

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

  9. Нагорода у вхідні

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

  10. Відкрийте посилання

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

Охоплення стандартів безпеки

OWASP API Top 10

  • API8:2023 Security Misconfiguration

CWE

  • CWE-942 Permissive Cross-domain Policy with Untrusted Domains
  • CWE-1188 Initialization of a Resource with an Insecure Default

CIS Controls

  • CIS 16 Application Software Security

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security