Факультет Информационной безопасности. Годовая программа. 2018-2019 [GeekUniversity]

300

1) четверть
Веб-технологии: уязвимости и безопасность
1 месяц, 2 раза в неделю

  • URL. Из чего состоит, security-related фичи. URL Parsers. URL encode
  • HTTP. Синтаксис, заголовки, HTTPS
  • HTML. HTML Parser. HTML-эскейпинг. Формы, фреймы
  • JavaScript. Script Processing Model
  • Другие типы файлов. XML, аудио/видео/картинки
  • Изоляция страниц. Same Origin Policy: DOM, XHR, Web storage
  • Наследование Origin в браузерах
  • CORS, PostMessage, WebSocket. Применение, как сделать безопасно

Client-Side-уязвимости
1 месяц, 2 раза в неделю

  • XSS. Основы: причины возникновения, базовые механизмы защиты (эскейпинг, CSP)
  • XSS. Reflected XSS, Stored XSS, Blind XSS, Self XSS
  • XSS. Эксплуатация
  • WAF. Обходы WAF при XSS
  • CSRF. Причины возникновения, способы защиты, JWT
  • CSP in depth
  • Прочие уязвимости на клиенте: clickjacking, HTML injection, Open Redirect

Безопасность мобильных приложений
1 месяц, 2 раза в неделю

  • OWASP TOP 10 Mobile
  • Незащищенность двоичного файла
  • Недостаточная защита на транспортном уровне
  • Непреднамеренная утечка информации
  • Защита In-App покупок
  • LvL лицензия и DRM защита
  • Certificate Pinning

Компьютерные сети
2 месяца, 1 раз в неделю

  • Стек TCP/IP и модель OSI/ISO
  • Навыки работы в Cisco CLI
  • Работа с сетевыми утилитами
  • L1 и L2 на примере Ethernet
  • L3: IPv4, IPX, IPv6, статическая и динамическая маршрутизация
  • L4: TCP, UDP.
  • NAT, DHCP, DNS, WiFi
  • SMTP, HTTP, HTTPS, TLS, RSA

Видеокурс «Основы баз данных»
Видеокурс

  • Реляционные базы данных
  • Установка СУБД MySql и графического приложения Mysql Workbench.
  • Проектирование базы данных, нормальные формы
  • SQL-команда CREATE
  • SQL-команда INSERT
  • SQL-команды SELECT и WHERE
  • SQL-команды DISTINCT, ORDER BY, LIMIT
  • SQL-команды DELETE и UPDATE
  • Понятие согласованности или консистентности данных.
  • Понятие внешнего ключа и ограничений на значения столбцов; FOREIGN KEY CONSTRAINTS.
  • Создание таблиц с отношением “многие ко многим”
  • Использование составного первичного ключа при проектировании таблицы с отношением “многие ко многим”.
  • Получение данных из нескольких взаимосвязанных таблиц; несостоятельность подхода с использованием нескольких SELECT-ов.
  • Объединение данных из нескольких таблиц с помощью оператора INNER Объединение данных из нескольких таблиц с помощью операторов LEFT JOIN и RIGHT JOIN.
  • Объединение результатов нескольких SQL-запросов с помощью оператора Агрегирующие функции COUNT, SUM, MIN, MAX.
  • Группировка выбранного набора строк с использованием оператора GROUP
  • Индексы. Фильтрация в GROUP BY с использованием HAVING; увеличение скорости выполнения запросов с использованием индексов.
  • Понятие транзакции; оператор TRANSACTION; требования ACID к транзакционной системе.

2) четверть
Server-Side: Часть 1
1 месяц, 2 раза в неделю

  • Атаки на хранилища данных (SQLi). Как искать, эксплуатировать и защищаться
  • Основы PHP
  • RCE (удаленное исполнение кода)
  • Уязвимости в логике работы приложения
  • Уязвимости связанные с ACL (контролем доступа). IDOR
  • brutforce, captcha
  • burp intruder

Server-Side: Часть 2
1 месяц, 2 раза в неделю

  • SQLi эксплуатация (обычная; blind; sqlmap)
  • RCE эксплуатация
  • Race Condition
  • OAuth уязвимости
  • XXE
  • Path Traversal, LFI, RFI
  • SSRF
  • Методы эксплуатации (xss, port scan, internal api, …)
  • SSTI
  • subdomain takeover

Безопасность мобильных приложений
1 месяц, 2 раза в неделю

  • OWASP TOP 10 Mobile
  • Незащищенность двоичного файла
  • Недостаточная защита на транспортном уровне
  • Непреднамеренная утечка информации
  • Защита In-App покупок
  • LvL лицензия и DRM защита
  • Certificate Pinning

Программирование на Python
2 месяца, 1 раз в неделю

  • Знакомство с Python
  • Встроенные типы и операции с ними
  • Функции.
  • Работа с файлами
  • Полезные инструменты
  • Модули и библиотеки

BugBounty, CTF
1 месяц, 2 раза в неделю

  • Что такое BugBounty, основные платформы, правила и подводные камни
  • Существующие подходы к багхантингу (поиску уязвимостей на BugBounty)
  • Разбор популярных кейсов с BugBounty платформ
  • CTF — что такое, какие бывают. Примеры CTF для начинающих
  • Разбор нескольких задач с CTF

3) четверть
Безопасность в сети
1 месяц, 2 раза в неделю

  • Сниффинг и спуффинг
  • Захват трафика с помощью Wireshark и tcpdump
  • Исследование трафика в Wireshark
  • Kali Linux, DVL
  • Уязвимости сетевых протоколов
  • Пассивные сетевые атаки
  • Активные сетевые атаки
  • Эксплуатация уязвимостей, metasploit
  • Технологии беспроводных сетей и методология их взлома.
  • Инструменты хакинга беспроводных сетей.
  • Атаки на Bluetooth. Меры противодействия атакам на беспроводные сети.
  • Инструменты защиты. Тестирование на проникновение в сеть.
  • Практическая работа: обнаружение точек доступа, сниффинг, деаутентификация, взлом ключей WEP, WPA, WPA2 и расшифровывание Wi-Fi трафика.

Операционные системы
1 месяц, 2 раза в неделю

  • Машинный код, ассемблер, дизассемблер
  • Потоки, процессы
  • Устройство ОС Linux
  • Управление памятью
  • Файловые системы
  • Виртуализация

Компьютерные сети – факультатив от МГТУ им. Баумана (компьютерные сети 2)
2 месяца, 1 раз в неделю

  • Подготовка рабочей среды. Cisco packet tracer 7.1.1. Wireshark. Построение WAN логической и физической топологии.
  • Технология WAN. Динамическая маршрутизация. BGP.
  • Технология WAN. Система DNS. Root servers. DNS-зоны.
  • Технологии локальных сетей. STP. Агрегирование каналов. LACP. Построение топологии сети провайдера.
  • Технология VLAN. Протокол 802.1Q.
  • Динамическая маршрутизация. OSPF. DHCP. DHCP-relay. Настройка офисной сети. RIPv2. NAT.
  • Технологии VPN. GRE. RIPv2 over GRE.

Linux 2 Сервер
1 месяц, 1 раз в неделю

  • GNU/Linux
  • Основы устройства Linux
  • Работа со строками и файлами
  • Написание скриптов
  • GNU/Linux
  • Сеть и безопасность
  • Веб-сервер Apache2
  • Прикладное ПО

4) четверть
Криптография
1 месяц, 2 раза в неделю

  • Шифры: симметричные (блочные и потоковые), асимметричные
  • Хеширование: sha2, sha3, md5, sha1 (sha0)
  • Криптография с открытым ключом
  • Атаки на криптографические схемы
  • Устройство криптографических алгоритмов
  • Уязвимости при использовании криптографических средств
  • Хеши для паролей: Argon2, bcrypt, scrypt

Бинарные уязвимости, reverse engineering
1 месяц, 2 раза в неделю

  • Внутреннее устройство и принципы процессора и памяти
  • Переполнение буфера. Механизм атаки, эксплуатация, защита
  • Уязвимость форматной строки
  • Return to libc attack
  • Integer overflow
  • IDA, применение для реверса приложений

Социальная инженерия, стандарты информационной безопасности
1 месяц, 2 раза в неделю

  • Социальная инженерия. Методы, кейсы, способы применения полученных результатов при дальнейшем аудите
  • RFC и криптографические стандарты
  • ГОСТы по ИБ. Зачем нужны, как применять и не умереть

Факультатив: методология аудита веб-сервисов
2 месяца, 1 раз в неделю

  • Разведка при аудите. Способы, как каждый из способов работает, программы для автоматизации
  • Разведка на сетевом уровне и уровне доменов. Nmap, subbrute, sublist3r
  • Разведка на уровне приложения. Web-spiders, eye-witness, dirsearch
  • Сбор отпечатков сервисов, поиск известных уязвимостей для них
  • Поиск уязвимостей руками, сбор всех полученных ранее знаний в единый процесс исследования
  • Эксплуатация уязвимостей, поиск максимального импакта от уязвимости

Подготовка к собеседованию
1 месяц, 2 раза в неделю

  • Подготовка к собеседованию на должность специалиста по информационной безопасности
  • Задачи и вопросы на собеседованиях