Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
waf-dojo — Практическая обучающая игра по AWS WAF с руководствами, оцениваемыми лабораторными работами и экзаменами, в которых игроки пишут правила Web ACL, чтобы блокировать реальные шаблоны атак, избегая ложных срабатываний. | Kitploit
Инструменты/GitHubGitHub/nishikawaakira/waf-dojo
Оборонительные ИнструментыАнализ уязвимостейЭксплуатация веб-приложенийОбход WAFВеб-безопасностьCTFБезопасность облачных средОбучение и ОбразованиеУчебные Маршруты и КурсыЛаборатории и Практика
GitHubnishikawaakira/waf-dojo
18441 день назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →

waf-dojo

Практическая обучающая игра по AWS WAF с руководствами, оцениваемыми лабораторными работами и экзаменами, в которых игроки пишут правила Web ACL, чтобы блокировать реальные шаблоны атак, избегая ложных срабатываний.

Репозиторий
Поделиться

WAF Dojo

Практическая обучающая игра для изучения AWS WAF через защиту от реальных атак.

English | 日本語

Для администраторов: как развернуть окружение, выдать его участникам, провести игру и выполнить очистку, описано в руководстве администратора (docs/ADMIN.md), а раздаточный материал для участников — это Начало работы для игроков (docs/PLAYER_GUIDE.md). Оба руководства в настоящее время на японском языке.

Практическое окружение для изучения AWS WAF прямо во время атаки.

  1. Учебники: На экране показано, как выглядит входящая атака (примеры запросов), и пошаговые инструкции по настройке. Вы настраиваете свой Web ACL, следуя указаниям.
  2. Игровой режим: Открывается после прохождения учебников. Даётся лишь краткое описание атаки, и вы сами разрабатываете правила, чтобы её остановить.
  3. Очки: Вы получаете очки за количество заблокированных атак и за количество обычных пользователей, заблокированных по ошибке, а результаты попадают в таблицу лидеров.

Играйте в одиночку или соревнуйтесь с другими.

Демо

WAF Dojo demo

Процесс от чтения атаки и шагов учебника до разработки правила в лаборатории уязвимостей, запуска атаки, просмотра очков и эталонного ответа и, наконец, открытия конкурса со страницы администратора (около 70 секунд). Версия более высокого качества доступна по адресу docs/demo-en.mp4.

Записано в режиме разработки (make dev), который оценивает по эталонному ответу вместо реального AWS WAF.

Архитектура

                    ┌───────────────────── per player ──────────────────┐
Browser ── Lambda Function URL (gameapi: UI + API)                      │
                │  async invoke                                          │
                ▼                                                        │
          Lambda (trafficgen) ── HTTPS ─▶ ALB ◀── Web ACL (edited by the player)
                │                          │                             │
                │                          ▼                             │
                │                  Lambda (targetapp: dummy online shop) │
                ▼                   └────────────────────────────────────┘
            DynamoDB (runs, best scores, locks)
  • targetapp: Фиктивное приложение, возвращающее 200 на каждый запрос, поэтому любой ответ 4xx означает, что его заблокировал WAF.
  • trafficgen: Отправляет смесь атакующих запросов и запросов обычных пользователей в соответствии со сценарием, а затем оценивает результат. Он отправляет запросы только на собственный ALB игрока, настроенный через Terraform. Он использует uTLS для создания различных TLS ClientHello для браузеров (Chrome / Firefox / Safari) и инструментов атак, чтобы вы могли практиковаться в их различении по отпечатку JA4.
  • gameapi: Игровой интерфейс и API, обслуживаемые через Lambda Function URL.
  • У ALB может быть только один Web ACL, поэтому каждый игрок получает собственный ALB и Web ACL.
  • Чтобы испытать ограничение CloudFront на проверку тела запроса (по умолчанию 16 КБ, до 64 КБ), каждый игрок также получает дистрибутив CloudFront и Web ACL в области CloudFront (wafdojo-<name>-cf, us-east-1). CloudFront стоит напрямую перед Lambda Function URL фиктивного приложения, а не перед ALB, поэтому правила Web ACL для ALB там не применяются. Установите enable_cloudfront = false, чтобы пропустить это.
  • JA4 вычисляется только поверх HTTPS, поэтому ALB слушает на HTTPS (443). Чтобы работать без домена, генерируется самоподписанный сертификат и импортируется в ACM (его закрытый ключ попадает в состояние Terraform).
  • Исходные IP-адреса представлены адресами для документации (RFC 5737) в X-Forwarded-For (предполагается, что сайт находится за CDN).

Сценарии

Обучающие задания (со шагами; пройдите их все, чтобы разблокировать игру)

IDТемаЧто вы узнаете
tutorial-1-sqliSQL-инъекцияУправляемые группы правил
tutorial-2-xssXSS в форме отзываПользовательские правила (Rule builder), проверка тела запроса, текстовые преобразования
tutorial-3-ipsetIP-адреса из списка угрозIP-наборы, CIDR, X-Forwarded-For
tutorial-4-useragentСканеры уязвимостейСопоставление строк в заголовках, операторы OR, преобразование в нижний регистр
tutorial-5-ratelimitФлуд с одного IPПравила на основе частоты запросов, ключи агрегации
tutorial-6-ja4Скрапер, выдающий себя за браузерКак работают отпечатки JA4 и как их читать (a_b_c), точное совпадение JA4, анализ журналов WAF

Игровой режим (без шагов; применение навыков)

IDТемаЧто вы узнаете
game-1-fakebotСкрапер, выдающий себя за GooglebotКомбинирование AND / NOT (UA говорит Googlebot, И IP не принадлежит Google)
game-2-adminВнешний доступ к панели администратораУсловия на путь URI + список разрешённых IP, чувствительность к регистру
game-3-traversalОбход пути (path traversal)Наложение текстовых преобразований (двойное декодирование), избегание ложных срабатываний
game-4-cmsПравило XSS, блокирующее ваших редакторовСоздание исключений, приоритет правил, пересмотр существующих правил
game-5-bruteforceБрутфорс логина + корпоративный NATОператоры scope-down, проектирование порогов
game-6-ja4regexАрмия ботов, постоянно меняющая свой JA4 + партнёр, использующий ту же библиотекуРегулярные выражения JA4 (перехват общей части b), подготовка к невиданным вариантам, исключения с AND NOT

Правила, созданные вами в обучающих заданиях, остаются на месте, поэтому в игровом режиме они иногда вызывают ложные срабатывания (этапы 4 и 5). Вам нужно пересматривать существующие правила, а не только останавливать новые атаки.

Лаборатории уязвимостей (41 испытание, без шагов)

Каждое испытание гласит: «Появилась новая уязвимость. Её можно заблокировать при следующих условиях. Напишите правило». Цель — научиться писать собственные правила всякий раз, когда появляется новая уязвимость. После одной попытки вы можете увидеть JSON эталонного правила (готовый для вставки в редактор Rule JSON консоли) и объяснение. Многие испытания уровня 2 и 3 также включают правило «типичная ошибка» и объяснение, почему оно не работает.

Скачать инструмент