Питання на співбесіді з веб-безпеки (Senior) з відповідями
75 запитань для співбесіди з теми Веб-безпека (Senior) - з правильними відповідями, поясненнями й посиланнями на документацію.
Пройти цей тест- 1.У чому допомагає модель STRIDE?
- 2.Коли моделювання загроз найкорисніше?
- 3.У чому головна ідея архітектури нульової довіри (zero trust)?
- 4.Для чого використовують OWASP ASVS?
- 5.Чому безпечні значення за замовчуванням важливі в спільній внутрішній бібліотеці чи фреймворку?
- 6.Команда додає новий потік даних: браузер завантажує файли, які обробляє фоновий воркер. Яке питання найважливіше для моделі загроз?
- 7.Що означає "радіус ураження" (blast radius) у проєктуванні безпеки?
- 8.Як запровадити Trusted Types у великому наявному застосунку?
- 9.Що таке script gadget?
- 10.Що таке mutation XSS (mXSS)?
- 11.Що дає HTML Sanitizer API (
setHTML) порівняно з JavaScript-бібліотекою санітайзера? - 12.Що таке dangling markup injection?
- 13.Політика використовує nonce, але HTML-сторінку кешує CDN і віддає багатьом користувачам. Що не так?
- 14.Чому CSP, що дозволяє
https://cdn.jsdelivr.net, можна обійти? - 15.Що насправді вимагає
require-trusted-types-for 'script'? - 16.У дизайн-системі компонент
<RichText html={...} />обгортаєdangerouslySetInnerHTML. Який підхід найнадійніший? - 17.Чому XSS через
postMessageможливий навіть на сайті із суворою CSP? - 18.Як добре обробляти звіти про порушення CSP у великому масштабі?
- 19.Який головний ризик лишається, коли вже є сувора CSP із nonce і Trusted Types?
- 20.Які два заголовки роблять сторінку cross-origin isolated?
- 21.Чому
SharedArrayBufferі таймери високої точності обмежили після Spectre? - 22.Від чого захищає
Cross-Origin-Opener-Policy: same-origin? - 23.Що таке XS-Leaks?
- 24.Що робить політика ізоляції ресурсів на основі Fetch Metadata?
- 25.Що таке site isolation у браузерах?
- 26.Що змінює
Cross-Origin-Embedder-Policy: credentiallessпорівняно зrequire-corp? - 27.Які атрибути має мати iframe, що показує недовірений HTML від користувачів?
- 28.Чому команди безпеки віддають завантажений користувачами вміст з окремого домену на кшталт
usercontent.example? - 29.Що таке патерн backend-for-frontend (BFF) для автентифікації SPA?
- 30.Токени лише в пам'яті SPA чи cookies з
HttpOnly: у чому головний компроміс? - 31.Що таке виявлення повторного використання refresh-токена?
- 32.Від чого захищають токени, прив'язані до відправника (наприклад, DPoP)?
- 33.Що таке атака плутанини алгоритмів JWT (RS256 на HS256)?
- 34.Як ротувати ключі підпису JWT, не виводячи всіх із системи?
- 35.Чому passkeys (WebAuthn) стійкі до фішингу?
- 36.Чому SMS вважають слабшим другим фактором?
- 37.Які сигнали виправдовують додаткову автентифікацію (step-up) посеред сесії?
- 38.Як реалізувати "вийти на всіх пристроях" з access-токенами JWT?
- 39.Чому відповіді на вхід і скидання пароля мають займати приблизно однаковий час для наявних і невідомих акаунтів?
- 40.Як сервіс має порівнювати отриманий API-ключ чи HMAC-підпис з очікуваним значенням?
- 41.Яке джерело випадковості використовувати для ID сесій і токенів скидання в браузері чи Node.js?
- 42.Хто має використовувати PKCE згідно з OAuth 2.0 Security BCP (RFC 9700)?
- 43.Що таке mix-up атака в OAuth?
- 44.Як код авторизації чи токен може витекти через заголовок
Referer? - 45.Від чого захищає параметр OIDC
nonce? - 46.Чому access-токени для API мають мати конкретну аудиторію (
aud)? - 47.Чому OAuth BCP не радить resource owner password credentials grant?
- 48.Провайдер OAuth дозволяє
redirect_uri=https://app.com/callback/../open-redirect?to=evil. Яке поєднання дає витік токена? - 49.Що таке dependency confusion?
- 50.Чому скрипти npm
postinstall- ризик для ланцюжка постачання? - 51.Що дає provenance пакетів npm?
- 52.Що таке SLSA?
- 53.Скрипт із CDN підключено як
<script src="https://cdn.example/lib@3.2.1.js">. Від чого захищаєintegrity="sha384-..."? - 54.Який головний ризик завантаження багатьох сторонніх скриптів через tag manager?
- 55.Як безпечно працювати з автоматичними оновленнями залежностей (Dependabot, Renovate)?
- 56.Що таке typosquatting у реєстрах пакетів?
- 57.Яка практика CI найкраще обмежує шкоду від скомпрометованої залежності під час збирання?
- 58.Ваш сервер завантажує адресу, яку вказав користувач, для попереднього перегляду посилання. Який найбільший ризик?
- 59.Чому небезпечна десеріалізація небезпечна?
- 60.Що таке ReDoS?
- 61.Яка схема обмеження частоти найкраще підходить для публічного API входу?
- 62.Що ніколи не повинно потрапляти в логи застосунку?
- 63.Яка головна перевага менеджера секретів над змінними оточення в репозиторії?
- 64.Чому завантажені файли треба перевіряти за вмістом, а не лише за розширенням?
- 65.Що таке BOLA в OWASP API Security Top 10?
- 66.Чому кожній Server Action у Next.js потрібна власна перевірка авторизації?
- 67.У чому була суть вразливості middleware Next.js 2025 року (CVE-2025-29927)?
- 68.React Server Component отримує запис користувача й передає весь об'єкт у Client Component. Який ризик?
- 69.Чому серверний рендеринг може повернути XSS, від якого захистив би клієнтський фреймворк?
- 70.Застосунок надсилає дані користувача в LLM і показує відповідь як HTML. Який ризик OWASP LLM Top 10 ставить першим?
- 71.Де логіка авторизації у full-stack застосунку на фреймворку найнадійніша?
- 72.Що описує оцінка CVSS?
- 73.Для чого
/.well-known/security.txt? - 74.Який правильний порядок дій, коли витік секрет із продакшну?
- 75.Як доповнюють одне одного автоматичне сканування (SAST/DAST), пентести й bug bounty?