
Лаборатория на базе Docker для эксплуатации CVE-2026-25993, вторичной SQL-инъекции в EverShop. Разверните, перечислите и выгрузите базу данных через созданные ключи URL-категорий.
cd EverShop-Lab/
docker compose up
Подождите ~2 минуты для первой сборки (клонирование EverShop v2.1.0, компиляция, запуск миграций, заполнение данными).
Приложение будет доступно по адресу http://localhost:3000.
| Поле | Значение |
|---|
| Email администратора | [email protected] |
| Пароль администратора | password123 |
# Stop the lab (keep data)
docker compose down
# Stop and delete all data (fresh start next time)
docker compose down -v
# Rebuild from scratch
docker compose down -v
docker compose up -d --build
CVE-2026-25993 — это SQL-инъекция второго порядка в обработке перезаписи URL-адресов категорий EverShop. Поле url_key проверяется только на ^\S+$ (отсутствие пробелов), что позволяет использовать метасимволы SQL. Когда категория обновляется, подписчик событий формирует сырой SQL через конкатенацию строк, выполняя сохранённый url_key в базе данных.
Выгрузите всю базу данных. Никаких флагов. Ваша задача:
Поле url_key в категориях не принимает пробелы, но принимает ' и ||. Когда категория обновляется, подписчик событий конкатенирует этот url_key в вызов сырого SQL REPLACE(). Создайте родительскую категорию, добавьте подкатегорию под ней, затем обновите url_key родительской категории — результат появится в записи url_rewrite подкатегории примерно через 15 секунд.