💻 Программирование в кибербезе
📖 Описание модуля
Модуль знакомит обучающихся с основами программирования на Python в контексте решения задач информационной безопасности. Школьники изучают, как создавать простые программы для автоматизации повседневных задач безопасности, учатся работать с файлами и данными, осваивают основы веб-программирования и создают свои первые криптографические инструменты. Модуль развивает алгоритмическое мышление и показывает, как программирование может помочь в обеспечении личной и семейной кибербезопасности.
Продолжительность:
Целевая аудитория: обучающиеся 7-8 классов
Методологический подход: проектное обучение с элементами игрового программирования
🎯 Планируемые образовательные результаты
Предметные результаты:
1Основы программирования:
2- Понимание базовых концепций программирования (переменные, циклы, функции)
3- Знание основных типов данных и структур в Python
4- Умение читать и понимать простые программы
5- Навыки отладки и исправления ошибок в коде
6
7Применение в безопасности:
8- Способность создавать простые инструменты для проверки паролей
9- Умение автоматизировать проверку файлов и папок
10- Навыки работы с зашифрованными данными
11- Понимание того, как программы могут помочь в обеспечении безопасности
Метапредметные результаты:
1Логическое мышление:
2- Разложение сложных задач на простые части
3- Пошаговое планирование решения проблем
4- Поиск и исправление ошибок в логике
5- Систематический подход к решению задач
6
7Творческие навыки:
8- Придумывание новых способов решения задач
9- Создание пользовательских интерфейсов для программ
10- Адаптация готовых решений под свои нужды
11- Презентация своих программных проектов
Личностные результаты:
1Самостоятельность:
2- Способность самостоятельно изучать новые возможности Python
3- Уверенность в решении технических проблем
4- Готовность экспериментировать и пробовать новое
5- Понимание важности практики для освоения программирования
6
7Ответственность:
8- Понимание этических аспектов создания программ
9- Ответственное отношение к данным других людей
10- Готовность помогать семье и друзьям с техническими задачами
📋 Содержательная структура модуля
Урок 29. Python - язык киберзащитников
1Первый час: Знакомство с Python
2
3Введение в Python:
4- Почему Python популярен в кибербезопасности?
5- Установка Python и настройка среды разработки
6- Знакомство с IDLE или простыми онлайн-редакторами
7- Первая программа: "Привет, кибербезопасность!"
8
9Основы языка:
10- Переменные и их типы (строки, числа, логические значения)
11- Ввод данных от пользователя с помощью input()
12- Вывод информации с помощью print()
13- Простые математические операции
14
15Второй час: Первые программы безопасности
16
17Условные конструкции:
18- Оператор if и принятие решений в программе
19- Сравнение значений и логические операторы
20- Практика: программа проверки силы пароля
21
22Циклы и повторения:
23- Цикл for для повторения действий
24- Практика: генератор случайных паролей
25- Простая программа шифрования методом Цезаря
26
27Домашнее задание:
28- Создать программу "Семейный генератор паролей"
29- Добавить возможность выбора длины и сложности
Урок 30. Структуры данных для анализа угроз
1Первый час: Работа со списками и словарями
2
3Структуры данных:
4- Списки для хранения множества данных
5- Словари для организации связанной информации
6- Поиск и фильтрация данных
7- Сортировка информации по различным критериям
8
9Практические задачи:
10- Анализатор частоты символов (основа криптоанализа)
11- Программа для учета паролей (безопасная версия)
12- Счетчик использования различных типов файлов
13
14Второй час: Обработка текстовых данных
15
16Анализ текста для безопасности:
17- Разбор строк и поиск паттернов
18- Подсчет частоты символов
19- Фильтрация и очистка данных
20- Простые примеры поиска email-адресов
21
22Практические проекты:
23- Анализатор логов (простая учебная версия)
24- Программа поиска подозрительных файлов по расширению
25- Проверка текста на потенциально опасные ссылки
26
27Мини-проект:
28- Создание базы данных семейных паролей (зашифрованной)
Урок 31. Файловый детектив
1Первый час: Основы работы с файлами
2
3Файловые операции:
4- Открытие, чтение и закрытие файлов
5- Запись данных в файлы
6- Режимы работы с файлами (чтение, запись, добавление)
7- Безопасная работа с файлами (использование with)
8
9Практические программы:
10- Программа для ведения журнала безопасности
11- Создание списка важных файлов для резервного копирования
12- Автоматическое создание отчетов о работе компьютера
13
14Второй час: Анализ файловой системы
15
16Исследование файлов:
17- Получение информации о файлах (размер, дата создания)
18- Проверка расширений файлов
19- Поиск дубликатов файлов
20- Создание отчетов о состоянии папок
21
22Проекты безопасности:
23- Программа мониторинга изменений в важных папках
24- Автоматическая проверка файлов на подозрительные расширения
25- Генератор отчетов о цифровой активности семьи
26
27Домашнее задание:
28- Создать "Семейного цифрового помощника" для учета файлов
Урок 32. Метаданные и цифровые отпечатки (2 часа)
1Первый час: Работа с метаданными
2
3Понятие метаданных:
4- Что такое метаданные и зачем они нужны
5- Извлечение информации о файлах
6- Анализ времени создания и изменения файлов
7- Определение типа файла по содержимому
8
9Практические задачи:
10- Программа анализа фотографий (базовые метаданные)
11- Создание каталога файлов с подробной информацией
12- Поиск файлов по дате создания или изменения
13
14Второй час: Цифровые отпечатки и целостность
15
16Хеширование для безопасности:
17- Что такое хеш-функции и зачем они нужны
18- Создание контрольных сумм файлов
19- Проверка целостности данных
20- Обнаружение изменений в файлах
21
22Практические проекты:
23- Программа для создания "цифровых отпечатков" важных файлов
24- Система мониторинга изменений в документах
25- Простая программа для проверки целостности резервных копий
26
27Итоговый проект урока:
28- Создание системы контроля версий для школьных проектов
Урок 33. Сетевой программист (2 часа)
1Первый час: Основы работы с сетью
2
3Введение в сетевое программирование:
4- Библиотека requests для работы с веб-сайтами
5- Получение информации с веб-страниц
6- Проверка доступности сайтов
7- Простой анализ заголовков HTTP
8
9Безопасность сетевых соединений:
10- Проверка SSL-сертификатов сайтов
11- Анализ безопасности соединения
12- Обнаружение подозрительных редиректов
13
14Второй час: Мониторинг сетевой безопасности
15
16Практические программы:
17- Монитор доступности любимых сайтов
18- Проверка SSL-сертификатов школьного сайта
19- Простой анализатор безопасности веб-страниц
20- Уведомления о проблемах с интернет-соединением
21
22Автоматизация сетевых задач:
23- Регулярная проверка состояния сайтов
24- Сбор информации о сетевых ресурсах
25- Создание отчетов о сетевой активности
26
27Домашнее задание:
28- Создать программу мониторинга домашней сети
29- Добавить уведомления о подозрительной активности
Урок 34. Веб-разведчик
1Первый час: Создание веб-приложений
2
3Основы Flask:
4- Создание простейшего веб-сайта
5- Формы для ввода данных
6- Обработка пользовательских запросов
7- Безопасная передача данных между страницами
8
9Веб-интерфейсы для безопасности:
10- Онлайн-генератор паролей для семьи
11- Веб-интерфейс для проверки силы паролей
12- Простая система уведомлений о безопасности
13
14Второй час: Веб-безопасность на практике
15
16Основы веб-безопасности:
17- Проверка пользовательского ввода
18- Защита от простых атак
19- Безопасное хранение данных
20- Принципы создания безопасных веб-форм
21
22Практические проекты:
23- Семейная панель мониторинга интернет-безопасности
24- Веб-приложение для образовательных викторин по безопасности
25- Система советов по безопасному поведению в интернете
26
27Итоговый проект:
28- Создание семейного портала безопасности
29- Интеграция всех изученных функций
30- Красивый интерфейс с помощью HTML и CSS
Урок 35. Криптографические эксперименты
1Первый час: Классические шифры в Python
2
3Реализация классических шифров:
4- Программирование шифра Цезаря с настраиваемым сдвигом
5- Создание шифра замены с собственным алфавитом
6- Программа для шифра Виженера
7- Анализ частоты букв в тексте (основа криптоанализа)
8
9Криптоанализ:
10- Программа для взлома шифра Цезаря
11- Статистический анализ зашифрованного текста
12- Поиск ключевых слов в зашифрованных сообщениях
13
14Второй час: Современная криптография
15
16Библиотека cryptography:
17- Симметричное шифрование файлов
18- Генерация криптографически стойких паролей
19- Создание цифровых отпечатков файлов
20- Безопасное хранение зашифрованных данных
21
22Практические криптографические инструменты:
23- Программа для безопасного хранения заметок
24- Шифровальщик файлов с паролем
25- Генератор QR-кодов с зашифрованной информацией
26- Простая система обмена зашифрованными сообщениями
27
28Этические аспекты:
29- Когда можно и нельзя использовать шифрование
30- Ответственность при создании криптографических программ
31- Важность использования проверенных алгоритмов
Урок 36. Проект - персональный помощник безопасности
1Первый час: Планирование и архитектура
2
3Планирование итогового проекта:
4- Выбор функций для персонального помощника
5- Определение целевой аудитории (семья, друзья, одноклассники)
6- Создание технического задания
7- Проектирование интерфейса пользователя
8
9Возможные компоненты помощника:
10- Модуль генерации и проверки паролей
11- Система напоминаний о цифровой безопасности
12- Мониторинг безопасности домашней сети
13- Образовательные викторины по кибербезопасности
14- Система советов по безопасному поведению в интернете
15
16Второй час: Разработка и презентация
17
18Разработка проекта:
19- Создание основной программы с меню
20- Интеграция различных модулей безопасности
21- Добавление пользовательского интерфейса
22- Тестирование всех функций
23
24Презентация и защита:
25- Демонстрация работы программы
26- Объяснение выбранных технических решений
27- Обсуждение возможных улучшений
28- Планирование дальнейшего развития проекта
29
30Рефлексия и планы:
31- Что было самым сложным в изучении программирования?
32- Какие проекты понравились больше всего?
33- Как программирование может помочь в кибербезопасности?
34- Планы на дальнейшее изучение Python и ИТ-технологий
📊 Система оценивания
Формирующее оценивание:
1Практические навыки (50%):
2- Правильность написания программ
3- Способность отлаживать и исправлять ошибки
4- Креативность в решении задач
5- Качество оформления кода и комментариев
6
7Понимание концепций (30%):
8- Объяснение принципов работы программ
9- Понимание связи программирования и безопасности
10- Способность модифицировать готовые программы
11- Применение изученного к новым задачам
12
13Проектная работа (20%):
14- Качество итогового проекта
15- Презентация и защита решений
16- Работа в команде при групповых заданиях
17- Помощь одноклассникам в решении задач
Критерии оценивания проектов:
1Отлично:
2- Программа работает без ошибок и выполняет все заявленные функции
3- Код написан понятно и содержит осмысленные комментарии
4- Проект решает реальную задачу безопасности
5- Ученик может объяснить каждую строчку своего кода
6
7Хорошо:
8- Программа работает с незначительными недочетами
9- Основные функции реализованы правильно
10- Ученик понимает принципы работы своего кода
11- Проект имеет практическую ценность
12
13Удовлетворительно:
14- Программа работает при помощи учителя
15- Основные концепции программирования усвоены
16- Ученик может создавать простые программы по образцу
17- Понимает важность программирования для безопасности
🔬 Методологические особенности
Педагогические принципы:
- Принцип практической направленности: каждая программа решает реальную задачу
- Принцип постепенного усложнения: от простых скриптов к сложным проектам
- Принцип наглядности: использование примеров из повседневной жизни
- Принцип сотрудничества: взаимопомощь и программирование в парах
Методы обучения:
- Программирование в парах: студенты работают вместе над одним компьютером
- Объяснение “резиновой уточке”: проговаривание кода вслух для поиска ошибок
- Проектное обучение: создание законченных программных продуктов
- Геймификация: элементы игры и соревнования в изучении программирования
Технические требования:
1Программное обеспечение:
2- Python 3.8+ (бесплатный и доступный)
3- IDLE, Thonny или VS Code (простые среды разработки)
4- Онлайн-альтернативы: Repl.it, Trinket для начинающих
5- Браузер для веб-разработки и тестирования
6
7Библиотеки Python:
8- Стандартная библиотека (random, datetime, os, hashlib)
9- requests для работы с интернетом
10- Flask для веб-разработки (базовые возможности)
11- cryptography для шифрования (с методическими оговорками)
📈 Ожидаемые результаты модуля
Технические навыки:
- Способность писать простые программы на Python для решения повседневных задач
- Понимание основных принципов программирования и алгоритмизации
- Навыки работы с файлами, данными и интернет-ресурсами
- Базовые знания веб-разработки и практической криптографии
Развитие мышления:
- Алгоритмический подход к решению проблем
- Умение разбивать сложные задачи на простые части
- Систематический поиск и исправление ошибок
- Творческий подход к программированию и автоматизации
Практическая польза:
- Способность создавать полезные инструменты для семьи и школы
- Понимание того, как работают программы безопасности
- Готовность к изучению более сложных языков программирования
- Мотивация к продолжению изучения информатики и ИТ-технологий
🎓 Связь с другими модулями курса
Интеграция знаний:
- Модуль 1 (Цифровая этика): этичное использование программных инструментов
- Модуль 2 (Компьютерные системы): автоматизация системных задач
- Модуль 3 (Криптография): программная реализация шифров и алгоритмов
- Модуль 4 (OSINT): автоматизация поиска и анализа информации
- Модуль 5 (Веб-безопасность): создание безопасных веб-приложений
Подготовка к будущему:
- Модуль 7 (CTF): программирование как ключевой инструмент решения соревновательных задач
- Профильное обучение: основа для углубленного изучения информатики
- Профориентация: понимание роли программиста в команде кибербезопасности
- Жизненные навыки: автоматизация повседневных задач и цифровая грамотность