Command Injection: Обход Blacklist WAF
Функция ping защищена blacklist-фильтром, блокирующим пробелы и ключевые слова. Фильтр обходится через ${IFS}, brace expansion и другие техники.
hardpythonPro
Задача
# Command Injection: Обход WAF через Blacklist Bypass
## Сценарий
Ты — пентестер, проводящий аудит интернет-магазина хакерского снаряжения. Разработчики установили в панели администратора функцию диагностики сети (ping). Понимая опасность инъекции команд, они добавили WAF-фильтр на основе чёрного списка: пробелы и «опасные» команды блокируются. Задача — выяснить, насколько надёжна эта защита.
## Цели
1. Войди в панель администратора.
2. Найди функцию диагностики сети и изучи логику WAF-фильтра.
3. Обойди blacklist-защиту и выполни произвольную команду на сервере.
4. Извлеки CTF-флаг через выполненную команду.
## Данные для входа
| Роль | Логин | Пароль |
|------|-------|--------|
| Администратор | `admin` | `lab-secret` |
| Пользователь | `demo` | `demo` |
## Точка входа
Форма диагностики: `/admin/ping` (доступна только после входа как `admin`).
> Совет: начни со стандартных техник инъекции команд — что происходит? Затем разберись, какие именно символы и слова блокирует фильтр, и придумай способ их обойти.