Программа курса
1 модуль - Знакомство с кибербезопасностью и запуск учебной лаборатории
На привычном примере заметок разбираются ситуации, в которых данные
увидели, изменили или они стали недоступны. Затем ученик видит путь страницы от браузера к
локальному серверу и базе данных, а также роль VS Code в работе с проектом. По пошаговой
инструкции он устанавливает Python и VS Code, подготавливает виртуальное окружение и
запускает готовое приложение. В финале ученик останавливает сервер, объясняет результат
обновления страницы и повторно запускает лабораторию. Практика выполняется только на
предоставленном стенде; разбор и эксплуатация уязвимостей начинаются в следующих уроках.
2 модуль - Почему нельзя доверять данным из браузера
В форме «Заметок команды» действует правило: текст не пустой и занимает не
больше 120 символов по принятому счётчику. Сначала ограничение живёт только в браузере,
поэтому его можно изменить в Elements и отправить 121 символ. Затем сравниваются две короткие
версии обработчика: в исправленной сервер проверяет длину до сохранения. Ученик убеждается
двумя действиями, что 121 символ отклоняется без новой записи, а 120 сохраняются. Урок не
заявляет, что проверка длины решает все задачи безопасности, и не требует программирования.
3 модуль - Чужая заметка по ссылке: проверяем права доступа
На примере Анны, Бориса и четырёх личных заметок урок разделяет два
вопроса: «кто вошёл?» и «что этому человеку разрешено?». Список Анны уже скрывает записи
Бориса, но start всё равно отдаёт их по прямому адресу: это пример IDOR — отсутствующей
проверки права на объект. В fixed сервер берёт личность из подтверждённого сеанса и до вывода
данных сравнивает её с владельцем заметки. Ученик проверяет владельца, другого пользователя и
гостя, а затем сопоставляет наблюдения с матрицей. Урок не учит обходить чужие системы и не
требует писать Python.
4 модуль - SQL-инъекция: когда данные становятся запросом
Учебное приложение ищет заметку по точному заголовку среди пяти общих
записей. В версии start введённый текст становится частью SQL-строки: специальный ввод
расширяет выборку, а нормальный заголовок с апострофом вызывает контролируемую ошибку. В
fixed шаблон запроса остаётся неизменным, а заголовок передаётся SQLite отдельным значением.
Ученик проверяет специальную строку, обычный заголовок, апостроф и отсутствие совпадения.
Урок объясняет один механизм и не является курсом SQL или обещанием защиты всей базы
данных.
5 модуль - XSS: когда комментарий становится кодом
Анна оставляет комментарий, сервер сохраняет его в SQLite, а Борис открывает
ту же заметку в другом окне. В start JavaScript страницы присваивает текст комментария свойству
innerHTML , поэтому браузер воспринимает разметку как элементы страницы; учебный пример
меняет только локальную надпись. После наблюдения эффекта это называется сохранённой XSS с
небезопасным выводом в DOM. В fixed изменена одна строка на textContent : тот же текст
приходит из БД, сохраняется целиком и показывается буквально. Урок не учит всем
разновидностям XSS, JavaScript или безопасной обработке намеренно разрешённого HTML.
6 модуль - Пароли: что опасно хранить в базе
Ученик регистрирует учебный аккаунт в двух независимых версиях «Заметок
команды» и смотрит фактическую SQLite-БД готовой командой. Затем он проверяет правильный и
неправильный вход, а в исправленной версии — две разные записи для одного и того же пароля.
Урок объясняет хеширование, соль и проверку verify простыми схемами, отделяя их от
шифрования, Base64 и звёздочек в поле. Также обозначаются границы: слабый пароль всё ещё
можно угадывать по украденной копии БД, а HTTPS, ограничение попыток и MFA решают
отдельные задачи.
7 модуль - «CSRF: действие от имени пользователя»
«Заметки команды» содержат один учебный аккаунт и безвредную настройку
вида списка. В start сторонняя HTML-форма на другом origin меняет её, потому что endpoint не
проверяет CSRF-токен. В fixed приложение выдаёт токен собственной форме и проверяет его до
записи в БД. Демонстрация использует разные порты одного 127.0.0.1 : это разные origin, но один
site, а не обещание обхода ограничений cookie для любых сайтов. XSS, кража cookie, реальные
аккаунты и внешние сети не рассматриваются.
8 модуль - Название: «Секреты в браузере: почему скрытое видно всем»
Анна получает сводку заметок из имитатора внешнего сервиса. В версии start ключ находится в
клиентском файле и доступен через DevTools, даже если не показан на странице. В fixed браузер
обращается к ограниченному маршруту приложения, а сервер проверяет право пользователя и
сам обращается к имитатору. Затем ключ заменяется: старое значение перестаёт работать, новое
не попадает в клиентские данные. Урок не утверждает, что всякая строка с key секретна: здесь это
именно сервисное полномочие, не публичный идентификатор.
9 модуль - Командная инъекция при экспорте ZIP.
Обычный экспорт start → опубликованная строка start → схема и короткое сравнение кода →
смена версии → та же строка в fixed → скачивание и содержимое ZIP → обычный экспорт fixed .
Практика содержит таблицу наблюдений; тест — 10 вопросов. Ориентир понимания: 8–10
правильных. При 0–7 ученик читает объяснения и повторяет соответствующие ситуации. Баллы
никуда не отправляются.
Границы: два опубликованных ввода, только локальный стенд и безопасный echo . Не предлагать
подбор команд, другие операторы, реальные системные действия или запуск строки в терминале. В
start вызов оболочки ограничен опубликованными строками. Восстановление и ответы находятся
в комплекте без преподавателя.
10 модуль - Проверяем исправления и собираем чек-лист.
В итоговом уроке студент исследует личные карточки задач, точный поиск
заметок и короткие статусы. Перед каждым разбором он прогнозирует поведение приложения и
выбирает защиту. Автор показывает проявление проблемы, небольшое изменение кода и результат
в исправленной версии. Затем студент использует общий чек-лист, чтобы проверить обычное и
нежелательное действие. Урок заканчивается самостоятельной практикой и тестом с доступными
объяснениями.
Ваши навыки после курса
Кем вы сможете работать
Преподаватель

Jasalmaty ---
Онлайн курсы
Мини - курс Кибер безопасность для начинающих
Основы кибербезопасности, защита данных и устройств, безопасная работа в интернете и предотвращение основных видов киберугроз.
Онлайн
Русский
До одного месяца
Начинающий
Остались вопросы?
Нажимая на кнопку, я соглашаюсь на обработку персональных данных
