Вопросы на собеседовании: Инженер по безопасности приложений
100 реальных вопросов с образцовыми ответами и пояснениями для уровня Senior.
Смотреть пример резюме: Инженер по безопасности приложений →Тренировка флешкарточками
Интервальное повторение · Hunter Pass
Вопросы
Я построю событийную нормализацию с неизменяемыми исходными доказательствами и версионируемой схемой Finding.
- Коннекторы пишут подписанные ScannerObservation в Kafka с инструментом, правилом, репозиторием, коммитом, scan ID, временными метками и URI исходного SARIF.
- Flink преобразует наблюдения в Finding v3; невалидные payload попадают в dead-letter queue с 30-минутным SLA владельца коннектора.
- ClickHouse обслуживает аналитику по парку, а PostgreSQL хранит состояние находок, поэтому replay не перезаписывает триаж или исключения.
- Canary от всех 9 сканеров измеряют 10-минутный SLO свежести, потерю событий, отклонения схемы и лаг коннекторов.
Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат разделить неизменяемые доказательства сканера, нормализованное состояние и операционную свежесть в масштабе предприятия.
Я предоставлю небольшой типизированный язык выражений и буду выполнять его AST в ограниченном интерпретаторе, не передавая текст вычислителю основного языка.
- Версионируемая грамматика отклоняет неоднозначные кодировки, более 10 000 токенов, вложенность свыше 64 уровней и идентификаторы вне схемы арендатора.
- Проверка типов разрешает 24 чистые функции и создает неизменяемый AST без reflection, файловой системы, сети, динамического импорта и доступа к объектам хоста.
- Каждое вычисление получает 5 мс CPU, 16 МБ памяти, счетчик инструкций и квоту арендатора, поэтому одна формула не исчерпает worker.
- Миллион сгенерированных, мутационных и межъязыковых parser-тестов допускает релиз, а canary удерживают p99 ниже 50 мс при 120 000 вычислений в секунду.
Зачем это спрашивают: Интервьюер оценивает, сводится ли недоверенный синтаксис приложения к детерминированному языку без внешних возможностей и с измеримыми лимитами парсера и runtime.
Я буду определять владельца прежде всего по идентичности deployment и фиксировать решение в версионируемом OwnershipRecord.
- Resolver связывает Backstage, CODEOWNERS, метки workload, облачные аккаунты и on-call по репозиторию и digest артефакта.
- OwnershipRecord хранит сервис, команду, эскалацию, доказательства, confidence, время действия и ревизию каталога для аудита.
- При конфликте владельцем становится production-оператор; confidence ниже 0,8 отправляет запись в очередь из 12 специалистов без догадок.
- Сверка нацелена на 99% находок tier 1 с владельцем и маршрутизацию 95% новых находок в пределах 4-часового SLA.
Зачем это спрашивают: Интервьюер проверяет, определяется ли владелец по production-доказательствам, можно ли решение аудировать и управляется ли процесс через явные confidence и SLO.
Я определю покрытие как проверенную модель, связанную с развернутым изменением, и автоматизирую доказательства вокруг этого определения.
- ThreatModelManifest называет ревизию DFD, измененные границы, активы, abuse cases, меры, владельца, ревьюера и digest релиза.
- Backstage направляет на ревью аутентификацию, платежи, изоляцию tenant, загрузки и внешние интеграции; проверенные низкорисковые паттерны используют готовые модели.
- Модель засчитывается, только если для 3 главных рисков есть тесты или отслеживаемые меры, а ее digest присутствует в evidence релиза.
- Еженедельные метрики целятся в 90% покрытия и p95 3 дня, показывая устаревшие модели и пропущенные дефекты дизайна.
Зачем это спрашивают: Интервьюер оценивает, измеряет ли покрытие threat model реальную проверку дизайна, а не создание документов.
Я буду генерировать входные модели для каждого действия и сделаю привязку серверных полей из данных запроса невозможной.
- Расширения OpenAPI объявляют изменяемые поля отдельно для create, update и admin, затем создают разные DTO для всех 65 API вместо повторного использования persistence-моделей.
- Адаптеры Spring, ASP.NET и Rails отклоняют неизвестные и дублирующиеся ключи до binding, включая вложенные объекты и альтернативные псевдонимы полей.
- Tenant, actor, role, полномочия на цену и состояние approval берутся из authenticated context или серверного lookup после binding и не перезаписываются клиентом.
- Межфреймворковый corpus из 25 000 случаев допускает релизы адаптеров, а бенчмарки удерживают overhead ниже 2 мс p99 при 18 000 записей в секунду.
Зачем это спрашивают: Интервьюер проверяет, закреплена ли защита от mass assignment в примитивах фреймворков и сгенерированных контрактах, а не в дисциплине разработчиков.
Я разделю неизменяемые наблюдения и append-only журнал DefectDecision, а текущее состояние буду получать как проекцию.
- ScannerObservation фиксирует каждый результат, а DefectIdentity хранит устойчивый fingerprint первопричины независимо от статуса инструмента.
- DefectDecision охватывает triaged, duplicate, fixed, accepted, false-positive, reopened и expired с автором, причиной, evidence и версией политики.
- Чистый повторный скан закрывает дефект только после попадания исправленного коммита во все production-deployment; один инструмент не перезапишет решение.
- PostgreSQL обслуживает проекции, S3 Object Lock хранит 5-летнюю историю, а replay-тесты подтверждают состояние из 10 млн событий.
Зачем это спрашивают: Интервьюер оценивает семантику событий и аудируемость, когда несколько сканеров со временем расходятся во мнениях.
Я изолирую каждого вендора за коннектором с checkpoint и явными контрактами свежести и полноты.
- Коннектор хранит зашифрованный cursor, ключи идемпотентности, request ID вендора и хэши ответов, чтобы повторы не пропускали наблюдения.
- Token bucket соблюдает все 11 лимитов, backoff обрабатывает throttling, а приоритетные очереди забирают critical-проекты раньше исторической сверки.
- При 6-часовом сбое показывается последнее состояние с пометкой stale, затем повторяются webhook и выполняется ограниченный полный diff.
- Дашборды предупреждают при лаге 2 часа и оставляют 18 часов на догон, сохраняя 24-часовой SLA.
Зачем это спрашивают: Интервьюер проверяет корректность коннекторов и поведение при деградации, а не предположение о надежности сторонних API.
Я буду направлять семантические изменения ревьюерам через поддерживаемую карту границ безопасности, а не по расширениям файлов или меткам репозитория.
- SecurityBoundaryManifest перечисляет 240 модулей, защищенные символы, инварианты, владельцев по языкам, резервных владельцев и требуемую глубину ревью.
- Diff-сервис расширяет измененные символы до источников сгенерированного кода и одного ребра вызова, затем создает ReviewPacket с тестами, изменениями потока данных и точным коммитом.
- Изменения аутентификации, использования ключей, парсеров или tenant-фильтров требуют одного code owner и 1 из 8 специалистов; механические изменения проходят owner-review и выборочный аудит.
- Балансировка очереди и эскалация за 30 минут удерживают p95 назначения ниже 30 минут, а 200 посеянных рискованных diff измеряют пропуски на всех 6 языках.
Зачем это спрашивают: Интервьюер оценивает code-aware архитектуру ревью, которая направляет редких специалистов на измененные инварианты безопасности и не превращается в корреляцию сканеров.
Я проведу обратимую миграцию с подписанным FindingMigrationManifest для каждого импортированного дефекта.
- Manifest связывает старый ID, сканер, fingerprint, статус, владельца, исключение, URI evidence, timestamps и новый DefectID.
- Пятьдесят репозиториев работают с двойным ingestion 3 недели, сравнивая количество, severity, владельцев и состояние до волн по 200.
- Старые панели переходят в read-only после сверки 99,5% записей и отсутствия потерь среди 700 critical-находок.
- Старые коннекторы доступны для отката 30 дней, а отчеты отслеживают ошибки, дубликаты, свежесть и обращения разработчиков.
Зачем это спрашивают: Интервьюер проверяет, сохраняет ли миграция платформы решения и доказательства безопасности, а не просто переносит потоки сканеров.
Я независимо обнаружу парк, а затем потребую ApplicationDescriptor до включения gate по уровню риска.
- Git-хосты, реестры, deployment-платформы, DNS и облачные теги наполняют AssetGraph с ключами репозитория, digest артефакта и runtime-сервиса.
- ApplicationDescriptor хранит владельца, язык, сборку, экспозицию, класс данных, deployment и бизнес-tier с явными неизвестными полями.
- Репозитории без владельцев получают неблокирующие проверки секретов и зависимостей; публичные артефакты идут в 24-часовую очередь.
- Ежедневная сверка нацелена на 95% полноты к 30-му дню по репозиториям, deployment, descriptor и бесхозным объектам.
Зачем это спрашивают: Интервьюер оценивает управляемый onboarding в AppSec при неполных данных об инвентаре и владельцах.
Я сделаю TenantContext подписанным значением, не управляемым пользователем, на каждой синхронной и асинхронной границе.
- BFF сопоставляет сессию с tenant и пользователем, затем выпускает 5-минутный внутренний токен с tenant, subject, audience и authorization epoch.
- API получают контекст RLS базы из токена, а OutboxEnvelope атомарно переносит tenant, actor, operation и версию политики в задачу.
- Worker проверяет audience и tenant относительно объекта до работы, а ключи кеша и объектов включают tenant и версию авторизации.
- Property-тесты перебирают 100 000 межарендных комбинаций запросов и задач с нулем нарушений canary при SLA 99,99%.
Зачем это спрашивают: Интервьюер проверяет, сохраняется ли идентичность арендатора в явных потоках данных и асинхронных границах без доверия клиентским полям.
Я разделю payment intent, полномочия ledger и исполнение у провайдера через идемпотентные append-only процессы.
- Поля Stripe отправляют карточные данные напрямую в Stripe, а браузер передает корзину и ключ идемпотентности в checkout.
- Checkout атомарно записывает Order и PaymentCommand, а orchestrator вызывает Stripe Connect в ограниченном контексте аккаунта.
- Подписанные события Stripe попадают в хранилище сырых webhook до обновления ledger идемпотентным consumer.
- Возврат повторно авторизует субъекта, заказ, долю продавца и 180-дневное окно, а сверка охватывает все 4 000 операций в секунду.
Зачем это спрашивают: Интервьюер оценивает границы доверия и корректность между браузером, платежным провайдером, асинхронными событиями и долгоживущими возвратами.
Я буду принимать загрузки только при зарезервированной изолированной мощности и создавать ограниченное аттестованное превью каждого принятого безопасного файла за 90 секунд.
- До выдачи 10-минутного upload URL справедливый scheduler резервирует слот нужного размерного класса в прогретых пулах на нагрузку в 2 раза выше p99; отсчет 90 секунд начинается после загрузки.
- Gateway во время загрузки пропускает блоки по 64 МБ через digest, type, antivirus, проверки глубины архива и коэффициента распаковки, поэтому финализация не ждет второго чтения 8 ГБ.
- Firecracker-workers без сети и credentials разбирают части страниц или листов под лимитами CPU, памяти, syscall и времени и могут писать только в отдельный preview bucket.
- Scheduler до дедлайна создает аттестованный PDF или набор миниатюр максимум из 20 характерных страниц; опасный файл отклоняется, а статус обработки не заменяет превью.
Зачем это спрашивают: Интервьюер проверяет, обеспечена ли обязательная задержка превью admission control, потоковыми проверками, зарезервированной sandbox-мощностью и настоящим ограниченным результатом.
Я буду отправлять каждую попытку через изолированный egress-dialer, который принимает свежее решение о назначении и привязывает к нему соединение.
- Регистрация подтверждает владение tenant и конфигурацию HTTPS, но не сохраняет DNS-ответ как доверенный для последующей доставки.
- Непосредственно перед первой доставкой, каждым повтором и каждым переходом redirect dialer канонизирует URL, получает все A- и AAAA-ответы DNS и отклоняет назначение, если хотя бы один ответ нарушает политику публичных диапазонов.
- Он соединяется напрямую с одним проверенным IP, сохраняя hostname URL в HTTP Host и TLS SNI, проверяет сертификат для этого hostname и запрещает fallback через proxy или resolver.
- Лимит 3 redirect, timeout 3 секунды, отдельная версия HMAC-ключа tenant, надежная очередь на 48 часов и лимиты назначения поддерживают 25 000 доставок в секунду без повторного использования ключа между tenants.
Зачем это спрашивают: Интервьюер оценивает безопасное против DNS rebinding закрепление соединения на каждой попытке и переходе вместе с изоляцией подписей и контролем повторов.
Я буду отдельно авторизовать соединение, подписку и каждый отправляемый объект с привязкой к версии политики.
- BFF обменивает браузерную сессию на 5-минутный gateway-token с tenant, subject, audience и connection ID.
- Persisted operation ограничивает стоимость, а Apollo Router создает SubscriptionGrant со scope ресурса и authorization epoch.
- Subgraph публикует типизированные события, не доверяя клиентским фильтрам; gateway повторно проверяет связи объекта и tenant перед отправкой.
- Отзыв инвалидирует grant за 60 секунд, а нагрузочные тесты подтверждают 2 000 подписок в секунду без межарендного кеша.
Зачем это спрашивают: Интервьюер проверяет, сохраняют ли долгоживущие GraphQL-каналы авторизацию объектов после первоначального handshake.
Я буду выполнять подписанные WebAssembly-плагины с явными возможностями для каждой установки вместо фонового доступа к приложению.
- PluginManifest хранит digest, издателя, host function, исходящие домены, классы данных, версию и одобрение tenant.
- Каждый вызов получает 64 МБ, 500 мс, отсутствие файловой системы и tenant-scoped opaque handle вместо credential базы.
- Сетевые вызовы идут через egress-broker, исполняющий manifest и удаляющий платформенные заголовки без логирования секретов.
- Grant истекает при смене версии, а до публикации проходят 200 тестов межарендного доступа, исчерпания ресурсов и confused deputy.
Зачем это спрашивают: Интервьюер оценивает, обеспечивается ли изоляция плагина возможностями, runtime-лимитами и версионируемым одобрением.
Я использую same-origin BFF, который владеет браузерной сессией и обменивает ее на токены для конкретных audience сервисов.
- После OIDC с PKCE BFF хранит токены на сервере и ставит cookie Secure, HttpOnly, SameSite=Lax с idle timeout 30 минут.
- Мутации требуют same-origin и CSRF-токен, а CSP с nonce и Trusted Types сокращает злоупотребление скриптами.
- BFF проверяет scope объекта, затем получает 5-минутный токен ровно для 1 из 12 audience API.
- Обмен и авторизация занимают не более 25 мс из p99 250 мс, а отзыв через session epoch проходит за 60 секунд.
Зачем это спрашивают: Интервьюер проверяет безопасность браузера, удержание токена и разделение downstream audience в одном явном потоке.
Я привяжу каждый шаг к узкому ExportGrant и неизменяемому manifest.
- API оценивает клиента, tenant, фильтры строк, поля, цель и размер, затем выпускает grant для одной задачи.
- ExportManifest хранит grant ID, ревизию политики, digest запроса, tenant, поля, инициатора и expiry до чтения worker через scoped-роль.
- Worker пишет зашифрованные части и итоговый digest; delivery создает 15-минутный одноразовый URL после повторной проверки клиента.
- Четырехчасовые задачи останавливаются по отзыву, а сверка подтверждает соответствие строк и полей manifest для всех 300 клиентов.
Зачем это спрашивают: Интервьюер оценивает непрерывность авторизации в долгих задачах, хранилище и последующей доставке.
Я быстро подтвержу авторизованную задачу, сохраняя файлы приватными и привязанными к исходной политике.
- API атомарно записывает ExportRequest и OutboxEvent за 2 секунды с tenant, инициатором, политикой полей, locale и digest запроса.
- Изолированный renderer читает специальный snapshot, не имеет интернета и создает PDF с ExportAttestation в приватном bucket.
- Метаданные содержат tenant, класс данных, дату удаления, source digest и encryption context; lifecycle удаляет все версии через 7 дней.
- Скачивание требует свежей авторизации и 60-секундного одноразового URL с ежедневной сверкой всех 120 000 запросов.
Зачем это спрашивают: Интервьюер проверяет безопасную асинхронную генерацию документов, минимизацию данных и исполнение жизненного цикла.
Я разделю сбор доказательств, одобрение и регистрацию credential через ограниченный по времени RecoveryCase.
- Обычное восстановление использует второй passkey или 1 из 10 одноразовых кодов, хранящихся только как verifier на основе Argon2id.
- Поддержка может приложить evidence email, устройства, платежей и риска, но не может одобрить или установить credential.
- Два независимых одобряющих открывают 20-минутную регистрацию WebAuthn после 12-часового уведомления, а чувствительные действия заморожены 24 часа.
- Recovery отзывает сессии и уведомляет все каналы с целью завершения за 24 часа и менее 0,01% подтвержденных захватов.
Зачем это спрашивают: Интервьюер оценивает разделение обязанностей и проверяемое пользователем восстановление в крупном passwordless-приложении.
Закрытые вопросы
- 21
Сто сорок сервисов на Java, Go и Node.js выполняют 90 000 запросов к базам в секунду; спроектируйте защиту от SQL-, NoSQL- и template injection с overhead менее 5 мс p99.
sqlnosqldatabase - 22
Продукт с rich text отображает 60 000 пользовательских документов в минуту в web- и email-клиентах; спроектируйте защиту от stored XSS с ложными блокировками CSP ниже 0,1%.
xssdesign - 23
Восемьдесят пять API на Node.js объединяют 70 000 объектов конфигурации tenants в секунду; спроектируйте защиту от prototype pollution через __proto__, constructor.prototype и последующие gadgets с p99 менее 4 мс.
designprototypesapi - 24
Триста Java-сервисов потребляют 700 000 Kafka-сообщений в секунду по 40 схемам; спроектируйте защиту от десериализации без поломки rolling upgrade и с p99 менее 3 мс.
kafkadesignschema - 25
CDN, Envoy gateway и парк Node.js обрабатывают 180 000 запросов в секунду; спроектируйте защиту от request smuggling между HTTP/1.1 и HTTP/2 с error budget 0,05%.
designgatewayhttp - 26
Consumer SaaS имеет 8 млн активных сессий, remembered login на 30 дней и SLA отзыва 5 минут; спроектируйте серверные сессии с p99 менее 25 мс.
sessionsdesigncloud - 27
Триста сервисов принимают JWT от 6 issuer при 120 000 запросов в секунду, а ротация ключа должна распространяться за 2 минуты; спроектируйте валидацию против путаницы алгоритмов и issuer.
validationdesignalgorithms - 28
Браузерная оболочка загружает 120 партнерских виджетов для 4 млн сессий в день; каждому виджету нужно не более 6 возможностей продукта, но нельзя читать DOM-данные, cookie или access token, а overhead брокера должен быть ниже 40 мс p99.
tokenssessionscookies - 29
Bulk API обновляет 100 000 записей за запрос в 4 доменах авторизации; спроектируйте авторизацию с явным частичным успехом и p99 проверки политики менее 100 мс.
authidentity-accessapi - 30
Банковское SPA выполняет 15 млн изменяющих состояние запросов в день через OAuth и cookie, имея 20 устаревших cross-site-интеграций; спроектируйте защиту от CSRF и login CSRF.
oauthcsrfcookies - 31
Две тысячи репозиториев на 8 языках открывают 30 000 pull request в месяц, а security feedback для точного коммита pull request должен приходить за 7 минут p95; спроектируйте архитектуру выполнения SAST.
feedbackcode-reviewarchitecture - 32
Программа CodeQL поддерживает 160 кастомных query для 5 языков в 900 репозиториях; спроектируйте жизненный цикл правил с точностью 90% до блокировки и SLA срочного правила 14 дней.
queriesdesigncodeql - 33
Сорок правил Semgrep защищают код аутентификации в 1 400 репозиториях, но API фреймворков меняются ежеквартально; спроектируйте поддержку с ложными срабатываниями менее 5% и безопасным autofix.
authidentity-accessdetection-tuning - 34
Платформа открывает 3 500 операций OpenAPI в 260 staging-сервисах и выпускается каждые 20 минут; спроектируйте DAST измененных маршрутов за 12 минут без порчи данных.
dastdesignopenapi - 35
Платформа сообщений отправляет 900 млн email-ссылок действий в месяц из 12 регионов со сроком 15 минут и verifier на 5 языках; спроектируйте байты токена и канонизацию так, чтобы каждый verifier принимал одинаковое решение.
design-systemdesigntokens - 36
В парке 2,4 млн SCA-находок в 1 700 репозиториях, включая 9 000 critical baseline; спроектируйте CI-gate, останавливающий новый достижимый риск без заморозки delivery на 18 месяцев.
risk-managementdesignsca - 37
Компания отправляет 48 000 коммитов в месяц в 600 репозиториев и использует credentials 12 cloud- и SaaS-провайдеров; спроектируйте secret scanning с отзывом утекшего production credential за 10 минут без хранения его значения в центральных логах.
secretscloud-securitydesign - 38
Bug-bounty-программа подтверждает 4 500 отчетов в год по 300 репозиториям и обещает исправлять critical за 72 часа; спроектируйте workflow исправления через code owner без раскрытия личности исследователя и деталей эксплойта под эмбарго.
validationattacksdesign - 39
Платежный продукт заявляет OWASP ASVS Level 2 для 85 сервисов и выпускается 400 раз в месяц; спроектируйте evidence, остающееся актуальным для каждого артефакта.
owaspasvsdesign - 40
Организация хранит 3 200 подтвержденных exploit cases для 900 сервисов и должна проверять security patch на точном release-артефакте за 20 минут; спроектируйте exploitability regression harness.
attacksdesignartifacts - 41
Компания использует 75 000 модулей npm, Maven, PyPI и Go в 2 000 репозиториях; спроектируйте firewall зависимостей приложений, принимающий решение по новым пакетам за 10 минут.
dependenciesnpmdesign - 42
Двести двадцать сервисов на 6 языках создают 2 млн событий application logs в секунду; спроектируйте телеметрию, которая не пропускает access token и 4 регулируемых класса данных в логи при ложном маскировании ниже 0,5%.
tokensdesign - 43
Федеративный GraphQL API выполняет 80 000 операций в секунду в 90 subgraph, а один запрос с aliases может вызвать 12 000 resolver calls; спроектируйте контроль стоимости ниже 15 мс p99 без блокировки одобренных корпоративных отчетов.
graphqlgraphql-authorizationqueries - 44
Команды добавляют 1 200 новых пакетов npm и PyPI в месяц, причем 30% моложе 7 дней; спроектируйте trust scoring против typosquatting и захвата аккаунта с решением за 30 минут.
dependency-confusiondesignnpm - 45
Desktop-приложение поставляет 300 сторонних библиотек 4 млн клиентов и должно ответить на новый critical CVE за 2 часа; спроектируйте SBOM, VEX и provenance зависимостей.
dependenciessbomvex - 46
Bug-bounty-программа получает 9 000 отчетов HackerOne в год, из них 55% дубликаты, а SLA подтверждения critical составляет 24 часа; спроектируйте intake и корреляцию.
correlationdesign - 47
Исследователям нужно межарендное тестирование SaaS с 20 000 клиентов, но production-тесты не должны раскрывать реальные данные; спроектируйте bounty-sandbox, создаваемый менее чем за 10 минут.
designtestingcloud - 48
Организация из 2 400 инженеров хочет 120 security champion в 60 командах с выделением по 4 часа в месяц; спроектируйте программу, улучшающую контроли за 2 квартала.
design - 49
Восемьдесят команд выполняют 22 000 pull request за квартал, но до merge исправляется 31% security-находок; спроектируйте enablement до 60% за 6 месяцев с ростом cycle time менее 8%.
code-reviewdesign - 50
Портфель mobile- и web-приложений выпускает 600 релизов в месяц из 500 репозиториев; спроектируйте ApplicationReleasePolicy, проверяющую зависимости, provenance и отсутствие секретов менее чем за 90 секунд.
secretsdesigndependencies - 51
После 1 840 запросов с UNION SELECT доля ошибок checkout растёт с 0,2% до 7,4%, а логи базы показывают возврат 63 строк клиентов без авторизации за 11 минут; отключите checkout или изолируете поисковый параметр, и каково ваше решение?
databaseunion - 52
Login endpoint MongoDB получает 26 000 запросов с {"$ne": null}, создаёт 418 сессий без валидных паролей, а 31 аккаунт обращается к платёжным данным; остановите весь вход или запретите credentials в виде объектов, и каково ваше решение?
mongodbnosql-injectionpasswords - 53
Endpoint конвертации изображений обрабатывает 9 000 заданий в час, а 17 имён файлов с shell-метасимволами запускают исходящие curl-команды на 6 workers; остановите всю обработку медиа или только converter, и каково ваше решение?
http-toolsendpointsconcurrency - 54
Предпросмотр уведомлений рендерит 2,6 миллиона шаблонов в день, а 84 запроса с {{constructor.constructor}} выполняют код в 3 production pods в течение 7 минут; отключите все уведомления или только пользовательский preview, и каково ваше решение?
- 55
Сохранённый payload комментария выполняется при 12 400 просмотрах dashboard, раскрывает session tokens 96 агентов поддержки, а CSP reports показывают выполнение скрипта 38 минут; отключите dashboard или отобразите комментарии обычным текстом, и каково ваше решение?
tokenssessions - 56
API клиентских данных отражает 37 значений Origin вместе с Access-Control-Allow-Credentials, а браузерная телеметрия показывает чтение 8 600 аутентифицированных ответов через 214 сессий за 22 минуты; отключите SPA или credentialed CORS затронутого API, и каково ваше решение?
corssessions - 57
PDF renderer выписок обрабатывает 18 000 документов в час, а во время canary на 10% 37 клиентских шаблонов читают переменные окружения и выполняют 12 исходящих запросов с 3 workers; откатите весь release выписок или отключите клиентские шаблоны, и каково ваше решение?
configrollbackconcurrency - 58
CDN пересылает тело по Content-Length, но bodyless route на origin считает эти байты следующим запросом в повторно используемом соединении, поэтому 740 CL.0 probes дают 91 межпользовательский ответ за 13 минут при 36 000 запросов API в секунду; обойдёте CDN или отключите keep-alive на origin, и каково ваше решение?
api - 59
Неучтённый header X-Forwarded-Host отравляет 6 200 страниц сброса пароля в 14 точках CDN на 21 минуту, а 48 пользователей переходят по ссылкам атакующего; очистите весь CDN или только reset-объекты, и каково ваше решение?
passwords - 60
Сервис загрузки документов принимает 65 000 файлов в день, а 11 crafted DOCX заставляют LibreOffice писать за пределами workspace на 4 workers; остановите все загрузки или поместите office preview в карантин, и каково ваше решение?
- 61
OAuth authorization server пропускает проверку PKCE для 7% мобильных обменов, а 286 codes погашаются со второго устройства за 3 часа; отключите mobile login для 1,4 миллиона пользователей или отклоните только непривязанные обмены, и каково ваше решение?
authoauthidentity-access - 62
OIDC callback принимает токены с валидной подписью, но неверным audience, создавая 1 120 сессий admin portal за 26 минут; заблокируете весь identity provider или изолируете portal, и каково ваше решение?
tokenssessionscallbacks - 63
JWT verifier принимает неподписанный token alg:none на 3 из 95 APIs, а 64 forged requests меняют email клиентов за 8 минут; отзовёте каждый platform token или изолируете 3 APIs, и каково ваше решение?
jwttokensapi - 64
Session store сохраняет authenticated sessions 24 часа после смены пароля, а 173 старые сессии выполняют 39 чувствительных действий за 6 часов; инвалидируете все 8 миллионов сессий или только затронутых пользователей, и каково ваше решение?
passwordssessions - 65
Password-reset tokens можно повторно использовать 30 минут, а 92 tokens погашаются дважды для захвата 17 аккаунтов; отключите self-service reset для 600 000 пользователей в месяц или сделаете погашение атомарным, и каково ваше решение?
passwordstokensconcurrency - 66
OAuth callback принимает валидные authorization codes без привязки к браузеру, начавшему login, поэтому 146 callback URLs, открытых на других устройствах, создают 39 сессий в аккаунтах атакующих, а 11 пользователей загружают 74 приватных документа; отключите весь login или только непривязанный OAuth callback, и каково ваше решение?
authoauthsessions - 67
Profile PATCH endpoint документирует 43 поля, но связывает 71 свойство модели, а 286 запросов напрямую задают billingAdmin и вызывают 74 несанкционированные смены ролей в 19 организациях; отключите все операции профиля или только обновления, и каково ваше решение?
endpoints - 68
Роль viewer может вызвать недокументированную функцию /admin/reindex, а 14 пользователей запускают 96 reindexes, вызывающих деградацию поиска на 43 минуты; удалите весь viewer API access или заблокируете функцию, и каково ваше решение?
api - 69
GraphQL resolver проверяет authorization на Query.account, но не на вложенном Account.payments, раскрывая 4 320 платежей 76 пользователям в 9 tenants; отключите GraphQL или удалите nested field, и каково ваше решение?
authidentity-accessgraphql - 70
Webhook handler проверяет HMAC после разбора JSON и иначе, чем sender, принимает duplicate keys, что вызывает 312 мошеннических refunds на $184 000 за 27 минут; остановите все refunds или только webhook-driven refunds, и каково ваше решение?
webhooks - 71
SCA reachability service помечает CVE в WebSocket compression недостижимым в 84 сервисах, но 14 gateways динамически загружают native addon, 27 crafted frames обрушивают 6 pods, а 2 canaries фиксируют out-of-bounds writes; заблокируете все 84 сервиса или изолируете 14 gateways, и каково ваше решение?
vuln-managementwebsocketsgateway - 72
Lockfile pnpm закрепляет версию 6.4.2 с integrity hash, но 43 Docker release builds запускают npm install и получают 6.5.0 вместе с 73 отличающимися transitive packages; 11 artifacts получают 22% трафика, откатите их или доверитесь пройденным tests, и каково ваше решение?
dockerpnpmnpm - 73
Internal package @corp/payments не зарезервирован публично, и 68 developer builds за 4 часа получают более высокую public version; отключите внешний npm access для 900 инженеров или заблокируете namespace, и каково ваше решение?
npmkubernetes - 74
Мобильное приложение поставляет production analytics secret в 2,3 миллиона installs, а secret может отправлять доверенные purchase events стоимостью $420 000 в день; заставите обновить app или немедленно отзовёте secret, и каково ваше решение?
secrets - 75
SCA alert отмечает Log4j critical в 460 сервисах, CodeQL показывает достижимость уязвимого lookup в 12, и только 7 доступны из интернета; заблокируете releases всех 460 или reachable set, и каково ваше решение?
alertingcodeqlsca - 76
Transitive image parser имеет публичный RCE, 96 из 310 сервисов включают его, runtime evidence показывает загрузку класса в 18, а patch добавляет 11% CPU; примете overhead или отключите parsing, и каково ваше решение?
- 77
In-toto provenance для 24 web bundles не включает npm lockfile, 7 bundles содержат версию package, отсутствующую в SBOM, и получают 30% traffic; поместите в карантин все 24 или доверитесь approved builder, и каково ваше решение?
npmpackagingdependency-resolution - 78
Обновление customer-support SDK отправляет 14 МБ в час полей форм на недокументированный endpoint из 42% browser sessions; удалите SDK немедленно или подождёте 24 часа review вендора, и каково ваше решение?
procurementendpointssessions - 79
Регенерация lockfile меняет 1 840 transitive packages в одном pull request, 27 hashes не проходили review, а release нужен через 3 часа; одобрите diff или задержите release, и каково ваше решение?
packagingdependency-resolutioncode-review - 80
XML library без maintainer уже 5 лет, разбирает 280 partner feeds в минуту, а рабочий XXE exploit читает 6 application secrets; сделаете fork и patch или замените её за 6 недель, и каково ваше решение?
secretsattacksxxe - 81
Semgrep не сообщает проблем в release, который затем раскрывает 2 100 строк через SQL injection, а query собирается generated repository layer в 48 сервисах; заблокируете releases новым широким rule или сначала исправите generator, и каково ваше решение?
sqlqueriessql-injection - 82
DAST сканирует 320 APIs каждую ночь, но пропускает BOLA, раскрывающий 8 700 объектов, потому что scanner использует один аккаунт; расширите crawling немедленно или заблокируете releases до появления two-user tests, и каково ваше решение?
object-authorizationtestingdast - 83
IAST добавляет 19% p95 latency для 60 staging services и создаёт 4 800 duplicate findings в неделю, но уникально находит 3 deserialization paths; удалите его или сузите deployment, и каково ваше решение?
latencydeployment - 84
ASPM объединяет 11 SAST findings и один reachable SCA finding в low-risk cluster, а payment RCE попадает в production на 9 дней; отключите correlation или исправите cluster logic, и каково ваше решение?
sastscaaspm - 85
CodeQL autobuild для pull requests из forks выполняет измененные Gradle scripts на 6 общих runners, 2 400 исходящих вызовов используют token с правом записи в репозиторий, а в 18 репозиториях за 11 минут появляются несанкционированные tags; отключите весь SAST или изолируете недоверенные builds, и каково ваше решение?
tokenssastcodeql - 86
Baseline import подавляет 420 historical SAST findings, включая 6 internet-reachable command injections, открытых 74 дня; инвалидируете весь baseline или откроете только reachable findings, и каково ваше решение?
injectionsast - 87
Bug-bounty researcher соединяет open redirect с утечкой OAuth code и захватывает 12 test accounts за 18 минут, запросив critical payout $35 000; оспорите severity, потому что каждый bug отдельно medium, и каково ваше решение?
oauthidentity-accessseverity-priority - 88
Два researchers сообщают об одном SSRF с разницей 47 минут, первый не доказывает impact, второй получает 3 metadata credentials, а policy предлагает $20 000 за critical; отметите второй report как duplicate, и каково ваше решение?
ssrf - 89
Patch для template injection блокирует {{...}}, но 9 из 2 400 bypass payload выполняются через <%...%>, а release должен получить 100% traffic через 40 минут; остановите rollout или добавите ещё один filter, и каково ваше решение?
injection - 90
Исправленный BOLA endpoint регрессирует через 3 releases и раскрывает 560 records, потому что его 24 security tests запускались только на старой API version; заморозите все API releases или добавите version-wide gate, и каково ваше решение?
endpointsobject-authorizationtesting - 91
Threat model payment link покрыл 14 STRIDE threats, но пропустил пересылку link, и 3 800 links раскрывают invoices на $620 000 за 5 дней; отключите все links или потребуете recipient binding, и каково ваше решение?
threat-modelingstride - 92
Design review считает third-party Markdown renderer безопасным, но 62 crafted documents запускают HTML execution в 18% editor sessions; engineering хочет CSP-only fix для release через 2 дня, одобрите его, и каково ваше решение?
htmldesignsessions - 93
Senior developer считает service-to-service calls доверенными и хочет удалить tenant checks ради экономии 14 мс p99 в 42 APIs; tests показывают 7 confused-deputy paths, примете optimization, и каково ваше решение?
fan-outoptimizationapi - 94
Junior AppSec engineer помечает 180 scanner findings как critical, developers закрывают 72% как false positives, а triage занимает 46 часов в неделю; уберёте их из review или проведёте measured rotation с ментором, и каково ваше решение?
mentoringdetection-tuning - 95
Staff reviewer одобряет поиск по пользовательским regex, потому что requests завершаются по timeout через 50 мс, но junior reviewer воспроизводит CPU stalls на 28 секунд в 32 из 80 workers с 14 payloads, а release нужен через 3 часа; сохраните approval или откроете review заново, и каково ваше решение?
regex - 96
Checkout team хочет waiver на 30 дней для reachable deserialization RCE, потому что отключение feature стоит $90 000 в день, а sandbox можно выпустить за 18 часов; одобрите waiver, и каково ваше решение?
- 97
Security champions предлагают блокировать каждый high SAST finding, но pilot на 200 pull requests показывает 38% false positives и добавляет 17 минут p95; раскатите на 72 teams или сузите gate, и каково ваше решение?
sastdetection-tuning - 98
Product vice president просит запустить account delegation для 25 000 пользователей до завершения threat model, а review уже нашёл 4 unresolved privilege-escalation paths; разрешите rollout 5%, и каково ваше решение?
threat-modelingdelegationescalation - 99
Через 3 месяца secure-coding workshop охватил 420 engineers, но повторные injection defects снизились лишь с 14 до 12 в месяц; профинансируете ещё workshop или перенесёте усилия во framework guardrails, и каково ваше решение?
guardrailsinjectiondefects - 100
Staged rollout authorization library охватывает 18 из 120 services, сокращает policy defects на 82%, но добавляет 6 мс p99 и вызывает 2 rollback events; сделаете её обязательной для всей компании или продолжите staged adoption, и каково ваше решение?
authidentity-accessdecision-making