Подготовка курса Информационная безопасность
Подготовка курса Информационная безопасность.
Содержание
1 Структура
1.1 Разделы
- Р1: Основы безопасности сетевых информационных технологий
- Р2: Защита информации в современных операционных системах
- Р3: Программная защита
1.2 Темы
- Т1: Общая проблематика информационной безопасности
- Т2: Хакерские атаки
- Т3: Угрозы сетевой безопасности
- Т4: Административная защита сетей
- Т5: Критерии безопасности информационных систем
- Т6: Формальные модели безопасности ОС
- Т7: Основы криптографии
- Т8: Программные уязвимости
2 Темы лекций
- Общая проблематика информационной безопасности
- Социальная инженерия.
- Вредоносные программы.
- Вирусы.
- Черви.
- Троянские программы.
- Хакерские атаки
- Угрозы сетевой безопасности
- Административная защита сетей
- Межсетевые экраны.
- Виртуальные частные сети.
- IDS.
- DSP.
- Критерии безопасности информационных систем
- Формальные модели безопасности ОС
- Дискреционные модели доступа. Списки управления доступом.
- Мандатные модели доступа.
- Ролевые модели доступа.
- SELinux.
- Криптография
- Общие вопросы шифрования.
- Симметричное шифрование.
- Ассиметричное шифрование.
- Хеш-функции.
- Цифровая подпись.
- PKI.
- Квантовое шифрование.
- Программные уязвимости
- Переполнение буфера.
3 БРС
- 8 лабораторных работ по 0–7 баллов за каждую, суммарно 0–56 баллов;
- доклад по теме — 0–14 баллов;
- индивидуальный проект — 0–20 баллов;
- итоговый контроль знаний (тест) — 0–10 баллов;
- внешний курс — 0–24 балла.
4 Активности
4.1 Лабораторные работы
- Предлагаются к выполнению 8 лабораторных работ.
- Отчёты по лабораторным работам выполняются студентом самостоятельно, на лабораторном занятии студент может получить консультацию и методические указания от преподавателя.
4.1.1 Лабораторная работа № 1. Установка и конфигурация операционной системы на виртуальную машину
- Пользуяся методическими указаниями установить и сконфигурировать операционную систему на виртуальную машину.
- Использование vagrant. Установка Rocky Linux
4.1.2 Лабораторная работа № 2. Дискреционное разграничение прав в Linux. Основные атрибуты
Цель работы
- Получение практических навыков работы в консоли с атрибутами файлов, закрепление теоретических основ дискреционного разграничения доступа в современных системах с открытым кодом на базе ОС Linux
4.1.3 Лабораторная работа № 3. Дискреционное разграничение прав в Linux. Два пользователя
Цель работы
- Получение практических навыков работы в консоли с атрибутами файлов для групп пользователей.
4.1.4 Лабораторная работа № 4. Дискреционное разграничение прав в Linux. Расширенные атрибуты
Цель работы
- Получение практических навыков работы в консоли с расширенными атрибутами файлов.
4.1.5 Лабораторная работа № 5. Дискреционное разграничение прав в Linux. Исследование влияния дополнительных атрибутов
Цель работы
- Изучение механизмов изменения идентификаторов, применения SetUID- и Sticky-битов.
- Получение практических навыков работы в консоли с дополнительными атрибутами.
- Рассмотрение работы механизма смены идентификатора процессов пользователей, а также влияние бита Sticky на запись и удаление файлов.
4.1.6 Лабораторная работа № 6. Мандатное разграничение прав в Linux
Цели работы
- Развить навыки администрирования ОС Linux.
- Получить первое практическое знакомство с технологией SELinux.
- Проверить работу SELinx на практике совместно с веб-сервером Apache.
4.1.7 Лабораторная работа № 7. Элементы криптографии. Однократное гаммирование
Цель работы
- Освоить на практике применение режима однократного гаммирования.
4.1.8 Лабораторная работа № 8. Элементы криптографии. Шифрование (кодирование) различных исходных текстов одним ключом
Цель работы
- Освоить на практике применение режима однократного гаммирования на примере кодирования различных исходных текстов одним ключом.
4.2 Темы докладов
- Общая проблематика информационной безопасности.
- Основные информационные угрозы современности.
- Ключевые принципы информационной безопасности: конфиденциальность, целостность, доступность, невозможность отказа.
- Нормативные документы в области информационной безопасности.
- Органы, обеспечивающие информационную безопасность.
- Программно-аппаратные средства системы обеспечения информационной безопасности.
- Организационная защита объектов информатизации.
- Информационная безопасность предприятия.
- Доктрина информационной безопасности Российской Федерации.
- Хакерские атаки.
- Социальная инженерия.
- Вредоносные программы. Вирусы и антивирусы.
- Вредоносные программы. Черви.
- Вредоносные программы. Троянские программы.
- Вредоносные программы. Руткиты.
- Фишинг.
- Угрозы сетевой безопасности.
- Безопасность физического и канального уровней модели OSI. Сетевые анализаторы и «снифферы».
- DoS: методы обнаружения DoS-атак и средства защиты от них.
- Безопасность ARP. ARP-spoofing.
- Безопасность сетевого уровня модели OSI и меры его защиты.
- Безопасность транспортного уровня модели OSI и меры его защиты.
- Безопасность прикладного уровня модели OSI и меры его защиты.
- Характеристика и механизмы удалённых атак на распределенные вычислительные системы.
- Характеристика и механизмы удаленных атак на хосты Internet.
- Способы атак на DNS-сервер.
- Классы угроз информационной безопасности.
- Административная защита сетей.
- Межсетевые экраны.
- Виртуальные частные сети.
- IDS системы. Обзор, сравнение, отечественные лидеры, мировые лидеры.
- Система обнаружения атак Snort.
- Применение межсетевых экранов для защиты корпоративных сетей.
- Пакетный фильтр на базе ОС Linux.
- Шлюзы прикладного уровня. Противодействие сетевым атакам при помощи межсетевых экранов.
- Фильтрация пакетов: параметры и правила фильтрации.
- DLP системы. Обзор, сравнение, отечественные лидеры, мировые лидеры.
- Системы резервного копирования.
- Критерии безопасности информационных систем.
- Обеспечение высокой доступности (нейтрализация отказов и обслуживаемости).
- Законодательный уровень информационной безопасности.
- Информация как ценность. Понятие об информационных угрозах.
- Информационное право и информационная безопасность.
- Защита компьютерной информации и компьютерных систем от вредоносных программ.
- Концепция (политика) безопасности.
- Государственная система защиты информации.
- Защита персональных данных в социальных сетях.
- Защита государственной и коммерческой тайны.
- Государственная система лицензирования. Система лицензирования деятельности в области защиты государственной тайны.
- Цели и задачи защиты информации. Организация защиты конфиденциальной информации.
- Политика безопасности предприятия и ее содержание.
- Создание и функции службы безопасности на предприятии.
- Формальные модели безопасности ОС.
- Модели безопасности ОС.
- Дискреционные модели доступа. Списки управления доступом.
- Мандатные модели доступа.
- Ролевые модели доступа.
- SELinux.
- Методы разграничения доступа. Общий обзор.
- Режим секретности и конфиденциального делопроизводства.
- Защита электронного документооборота на предприятии.
- Криптография.
- Общие вопросы шифрования.
- Хеш-функции.
- Цифровая подпись.
- Квантовое шифрование. Квантовая передача информации.
- Система PGP.
- Электронные цифровые подписи. Механизмы цифровой подписи.
- Протокол Kerberos.
- Инфраструктура открытых ключей.
- Техники управления ключами. Основные концепции. Жизненный цикл управления ключами.
- Идентификация и аутентификация, управление доступом.
- Протоколирование и аудит, шифрование, контроль целостности.
- Биометрия.
- Технология единого входа (OpenID и т.п.).
- Контрольные суммы.
- Ассиметричные криптосистемы. Обзор, виды, применение.
- Симметричные криптосистемы. Обзор, виды, применение.
- Программные уязвимости.
- Переполнение буфера.
- Нарушения безопасности доступа к памяти: переполнения буфера, висячие указатели.
- Ошибки проверки вводимых данных: ошибки форматирующей строки, неверная поддержка интерпретации метасимволов командной оболочки.
- Ошибки проверки вводимых данных: SQL-инъекция.
- Ошибки проверки вводимых данных: инъекция кода.
- Ошибки проверки вводимых данных: инъекция E-mail.
- Ошибки проверки вводимых данных: межсайтовый скриптинг в веб-приложениях, межсайтовый скриптинг при наличии SQL-инъекции.
- Состояния гонки: ошибки времени-проверки-ко-времени-использования, гонки символьных ссылок.
- Ошибки путаницы привилегий: подделка межсайтовых запросов в веб-приложениях.
- Эскалация привилегий. Shatter attack.
- Уязвимость нулевого дня.
4.3 Индивидуальный проект
4.3.1 Общая информация
- Проба работы с уязвимостями.
- В дальнейшем возможно перенести в лабораторные работы.
4.3.2 Тестирование веб-приложений
Общая информация
Цель работы
- Научиться основным способам тестирования веб приложений
Введение
- Ищутся уязвимости в специально предназначенном для этого веб приложении под названием Damn Vulnerable Web Application (DVWA).
- Назначение DVWA — попрактиковаться в некоторых самых распространённых веб уязвимостях.
- Предлагается попробовать и обнаружить так много уязвимостей, как сможете.
Задачи
- Найти максимальное количество уязвимостей различных типов.
- Реализовать успешную эксплуатацию каждой уязвимости.
Рекомендуемая литература [1].
Инструменты
- Для тестирования должен использоваться дистрибутив Kali Linux.
- Можно пользоваться любыми инструментами дистрибутива.
Вопросы
- Перечислите основные уязвимости, касающиеся веб приложений.
- Можно ли ставить DVWA на свой публичный веб сервер?
- Чем отличается тестирование DVWA от тестирования публичного сервера?
- Что представляет собой дистрибутив Kali Linux?
- Перечислите и опишите вкратце несколько компонентов, входящих в состав Kali Linux.
Этап 1. Установка Kali Linux
- Установите дистрибутив Kali Linux в виртуальную машину.
- В качестве среды виртуализации предлагается использовать VirtualBox.
- Сайт Kali Linux: https://www.kali.org/
- Учётные данные по умолчанию:
- логин:
root
; - пароль:
toor
.
- логин:
Этап 2. Установка DVWA
- Установите DVWA в гостевую систему к Kali Linux.
- Репозиторий: https://github.com/digininja/DVWA.
- Некоторые из уязвимостей веб приложений, который содержит DVWA:
- Брутфорс: Брутфорс HTTP формы страницы входа - используется для тестирования инструментов по атаке на пароль методом грубой силы и показывает небезопасность слабых паролей.
- Исполнение (внедрение) команд: Выполнение команд уровня операционной системы.
- Межсайтовая подделка запроса (CSRF): Позволяет «атакующему» изменить пароль администратора приложений.
- Внедрение (инклуд) файлов: Позволяет «атакующему» присоединить удалённые/локальные файлы в веб приложение.
- SQL внедрение: Позволяет «атакующему» внедрить SQL выражения в HTTP из поля ввода, DVWA включает слепое и основанное на ошибке SQL внедрение.
- Небезопасная выгрузка файлов: Позволяет «атакующему» выгрузить вредоносные файлы на веб сервер.
- Межсайтовый скриптинг (XSS): «Атакующий» может внедрить свои скрипты в веб приложение/базу данных. DVWA включает отражённую и хранимую XSS.
- Пасхальные яйца: раскрытие полных путей, обход аутентификации и некоторые другие.
- DVWA имеет три уровня безопасности, они меняют уровень безопасности каждого веб приложения в DVWA:
- Невозможный — этот уровень должен быть безопасным от всех уязвимостей. Он используется для сравнения уязвимого исходного кода с безопасным исходным кодом.
- Высокий — это расширение среднего уровня сложности, со смесью более сложных или альтернативных плохих практик в попытке обезопасить код. Уязвимости не позволяют такой простор эксплуатации как на других уровнях.
- Средний — этот уровень безопасности предназначен главным образом для того, чтобы дать пользователю пример плохих практик безопасности, где разработчик попытался сделать приложение безопасным, но потерпел неудачу.
- Низкий — этот уровень безопасности совершенно уязвим и совсем не имеет защиты. Его предназначение быть примером среди уязвимых веб приложений, примером плохих практик программирования и служить платформой обучения базовым техникам эксплуатации.
Этап 3. Использование Hydra
- Hydra используется для подбора или взлома имени пользователя и пароля.
- Поддерживает подбор для большого набора приложений.
Пример работы:
- Исходные данные:
- IP сервера 178.72.90.181;
- Сервис http на стандартном 80 порту;
- Для авторизации используется html форма, которая отправляет по адресу http://178.72.90.181/cgi-bin/luci методом POST запрос вида username=root&password=test_password;
- В случае не удачной аутентификации пользователь наблюдает сообщение
Invalid username and/or password! Please try again.
- Запрос к Hydra будет выглядеть примерно так:
1hydra -l root -P ~/pass_lists/dedik_passes.txt -o ./hydra_result.log -f -V -s 80 178.72.90.181 http-post-form "/cgi-bin/luci:username=^USER^&password=^PASS^:Invalid username"
- Используется
http-post-form
потому, что авторизация происходит по http методом post. - После указания этого модуля идёт строка
/cgi-bin/luci:username=^USER^&password=^PASS^:Invalid username
, у которой через двоеточие (:
) указывается:- путь до скрипта, который обрабатывает процесс аутентификации (
/cgi-bin/luci
); - строка, которая передаётся методом
POST
, в которой логин и пароль заменены на^USER^
и^PASS^
соответственно (username=^USER^&password=^PASS^
); - строка, которая присутствует на странице при неудачной аутентификации; при её отсутствии Hydra поймёт, что мы успешно вошли (
Invalid username
).
- путь до скрипта, который обрабатывает процесс аутентификации (
- Исходные данные:
Этап 4. Использование nikto
nikto
— базовый сканер безопасности веб-сервера. Он сканирует и обнаруживает уязвимости в веб-приложениях, обычно вызванные неправильной конфигурацией на самом сервере, файлами, установленными по умолчанию, и небезопасными файлами, а также устаревшими серверными приложениями.
Этап 5. Использование Burp Suite
- Burp Suite представляет собой набор мощных инструментов безопасности веб-приложений, которые демонстрируют реальные возможности злоумышленника, проникающего в веб-приложения
Библиография
Литература
4.4 Внешние курсы
4.4.1 Общая информация
- В список показателей внесено количество студентов, прошедших внешние курсы.
- Внешний курс должен либо подменять локальный, либо давать определённые балы на локальном курсе.
4.4.2 Рекомендованные платформы для внешних курсов
- Список платформ, на которых можно рекомендовать для записи студентов на внешние курсы:
- Открытое образование: https://openedu.ru/.
- Stepik: https://stepik.org/.
- Универсариум: https://universarium.org/.
- Лекториум: https://www.lektorium.tv/mooc.
4.4.3 Курс
- Основы кибербезопасности: https://stepik.org/course/111512
4.4.4 Необходимо для прохождения
- Пройти курс.
- Получить сертификат.
- Записать видео (с записью камерой лица) по прохождению контрольных мероприятий (тесты и задания) по каждому разделу.
- Написать отчёт по прохождению контрольных мероприятий (тесты и задания) по каждому разделу.
- Сертификат выкладывается на личный сайт научного работника.
- На личном сайте научного работника создаётся проект по прохождению внешнего курса.
- Отчёты по прохождению внешнего курса выкладываются на сайт научного работника, объединённые в проект.
4.4.5 Требования к оформлению отчёта по прохождению внешнего курса
- Отчёт должен соответсвовать следующим требованиям:
- должен быть оформлен в Markdown с использованием шаблона для оформления лабораторных работ (https://github.com/yamadharma/academic-laboratory-report-template);
- должен содержать описание всех заданий, выполненных при прохождении внешнего курса.
- Для каждого тестового вопроса в отчет должны быть включены:
- скриншоты с формулировкой вопроса и подтверждающие прохождение теста;
- пояснения по выбору ответа на вопрос теста.
- Для каждого интерактивного задания в отчет должны быть включены:
- скриншоты с формулировкой задания и подтверждающие его прохождение;
- пояснения по выполнению интерактивного задания.
- Отчёт считается неполным, если в нём отсутствуют какие-либо элементы:
- скриншоты с формулировкой;
- скриншоты, подтверждающие прохождение;
- пояснения по выполнению активности.
4.4.6 Критерии оценки
- Максимальная оценка за внешний курс — 24 балла.
Разделы | 0 | 2 | 4 | 8 |
---|---|---|---|---|
Раздел 1. Безопасность сети | Нет сертификата или нет (видео + отчёт) | Сертификат + (видео или отчёт) | Сертификат + видео + отчёт | Сертификат + видео + отчёт + сайт |
Раздел 2. Защита ПК (телефона) | Нет сертификата или нет (видео + отчёт) | Сертификат + (видео или отчёт) | Сертификат + видео + отчёт | Сертификат + видео + отчёт + сайт |
Раздел 3. Криптография на практике | Нет сертификата или нет (видео + отчёт) | Сертификат + (видео или отчёт) | Сертификат + видео + отчёт | Сертификат + видео + отчёт + сайт |