Уязвимости инъекций

Изучите критические уязвимости веб-инъекций, включая внедрение команд (Command Injection) и SQL-инъекции (SQLi). Освойте методы ручной эксплуатации и автоматизируйте взлом баз данных с помощью мощного инструмента sqlmap.

Cybersecurity EngineerКибербезопасностьKali LinuxLinux

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Инъекции возникают, когда приложение позволяет пользовательским данным изменить смысл команды оболочки или запроса к базе данных. На этом курсе нарушение такой границы становится наглядным благодаря внедрению команд и SQL-инъекциям в намеренно уязвимые локальные приложения.

Сначала вы вручную создадите полезные нагрузки и увидите, как разделители, кавычки, комментарии, логические выражения и UNION SELECT меняют поведение программы. Затем автоматизируете обнаружение, перечисление схемы, извлечение данных и работу с OS shell через sqlmap, после чего выполните самостоятельное испытание.

Чему вы научитесь

  • Находить точку внедрения команд и подтверждать выполнение разделителями команд Linux.
  • Обходить простой фильтр экранированием и шаблонами Shell и создавать файл-подтверждение на цели.
  • Вызывать ошибку SQL и составлять логическую нагрузку для обхода уязвимой формы входа.
  • Определять число и отображаемые позиции столбцов с помощью ORDER BY и UNION SELECT.
  • Запрашивать метаданные схемы SQLite и извлекать учебные имена и пароли через ответ приложения.
  • Использовать sqlmap для обнаружения SQLi, перечисления баз, выгрузки таблицы и попытки интерактивного OS shell.
  • Самостоятельно проверить две точки SQLi и экспортировать учебную таблицу клиентов в итоговом испытании.

Для кого этот курс

Этот курс среднего уровня предназначен для изучающих веб-безопасность, которые хотят понять механизм инъекций до применения автоматизации. Он полезен будущим пентестерам, специалистам по безопасности приложений и разработчикам, которым нужны конкретные примеры рисков небезопасных команд и динамического SQL.

Предварительные требования: Уверенная работа с терминалом Linux и curl, базовые HTTP-запросы GET/POST и кодирование URL, а также начальные понятия SQL: SELECT, WHERE, столбцы и таблицы.

Учебная среда: Терминал Ubuntu 22.04 с sqlmap и изолированными намеренно уязвимыми веб-приложениями на локальных портах 5000, 8080 и 80. Все команды и извлекаемые учебные данные остаются внутри курса.

Часто задаваемые вопросы

Нужно ли заранее знать SQL на продвинутом уровне?

Нет. В лабораториях объясняются контекст запроса, логические выражения, комментарии, подсчёт столбцов и последовательность UNION SELECT. Знание базовой терминологии SQL упростит упражнения среднего уровня.

Отправляются ли нагрузки инъекций в реальные системы?

Нет. Каждая цель — локальное приложение, специально настроенное для практики. Команды, учётные данные, записи клиентов и токены являются учебными.

Почему ручная SQL-инъекция изучается до sqlmap?

Ручные упражнения показывают, как ввод изменяет синтаксис и как отображаемые столбцы раскрывают данные. Это помогает понимать техники sqlmap и задавать рамки автоматического перечисления, а не воспринимать вывод как чёрный ящик.

Будет ли получено выполнение команд операционной системы?

Да, внутри изолированных лабораторий. Упражнение с внедрением выполняет выбранные команды Linux, а лаборатория sqlmap проводит через --os-shell на подготовленной PHP-цели. Действия не выходят за пределы локальной среды.

Преподаватель

labby
Labby
Labby is the LabEx teacher.