Компьютерная безопасность: тестирование на проникновение. Основное положение
CTF BSUIR CAMPДанный курс будет являться логическим продолжением предыдущего курса "Компьютерная безопасность: Введение в CTF".
Общая информация
В рамках это курса мы будем изучать тестирование на проникновение веб приложений в рамках соревнований CTF и HackTheBox.
Мы пробуем для себя новый формат проведения занятий: комплексное занятие по 5-6 часов раз в 2 недели. Занятия будут проходит по воскресеньям.
На текущий момент мы планируем 3 способа посещения занятий:
- Очный формат
- Дистанционный формат (стрим + предоставление доступа к сети, в которой будет находиться наш vulnbox)
- Для наблюдателей (только стрим)
Гарантировать пункты 2 и 3 мы не можем.
Отбор на курс
На данный момент планируется:
- До 30 человек на очный формат (будет решено по итогам выполнения отборочного задания)
- До 30 человек на дистанционный формат (будет решено по итогам выполнения отборочного задания)
- Неограниченное количество наблюдателей (слушателей)
Отборочные задания - максимум 50 баллов в сумме. Будет выстраиваться рейтинговая система. При равенстве баллов - выбирается кандидат с более ранним временем сдачи (однако мы постараемся избежать такой ситуации).
Члены команды Bulba Hackers проходят по внутренней квоте (в общем отборе не участвуют).
ПРИЁМ ЗАЯВОК ДО 3 МАРТА 23:59
https://forms.gle/Rv2Fbp5983cMMwh19
Почему именно такой формат?
Во время предыдущих занятий мы поняли, что за 2 часа мы не успеваем провести теорию + практику. Помимо этого, проводить занятия раз в неделю - слишком часто для нас и для вас.
Воскресенье - потому что это единственный день, когда нет учебы в университете, следовательно, помещения свободны и интернет полностью в нашем распоряжении.
Программа курса
Планируется всего 5 занятий.
Занятие 1 [Введение]
Теория:
- Кто мы?
- Юридическая сторона тестирования на проникновение (УК РБ)
- Сетевая разведка
* Nmap
* Enumeration
* Dirsearch/Gobuster/Bfac - Что можно делать с полученными данными после сетевой разведки?
- Что такое OWASP 10
И что мы будем изучать в рамках курса - Словари
Практика:
- Учимся использовать Nmap
На примере машин HackTheBox / что-то поднимем своё - Учимся применять Dirsearch и Gobuster
Занятие 2 [Серверные уязвимости]
Теория:
- Local File Inclusion (LFI)
- Remote File Include
- Server Side Template Injection (SSTI)
- Инъекции
* Основной принцип построения инъекций
* SQLInjection
* XXE - SQLMap
- Burp Suite
Практика:
- LFI
- SSTI
- SQLInjection
Занятие 3 [Клиентские уязвимости]
Теория:
- JavaScript
- Cross Site Scripting (XSS)
* Dom XSS
* Reflected XSS
* Stored XSS - Cross Site Request Forgery (CSRF)
Практика:
- JS
- XSS
- SSRF
Занятие 4 [Initial Foothold или группируем полученные знания]
Теория:
- Что такое Remote Code Execution (RCE)
- Различные подходы к получению RCE
* Injections
* LFI
* RFI
* Необычные вещи, которые можно использовать для получения RCE - Получаем консоль
* Reverse Shell
* Bind Shell - Если материала слишком мало - Metasploit
Практика:
- Повторяем полученные навыки и оттачиваем их на задачах
Занятие 5 [Закрепление в системе и повышение привилегий]
Теория:
- Горизонтальное распространение
- Вертикальное распространение
- linpeass
- Основные подходы
* tar
* vim
* исправление /etc/passwd
* crontab - GFTOBins
Практика:
- Примеры с HackTheBox
[Служебная информация] Что нам потребуется для курса
- Помещение
Помещение должно вмещать 20-30 человек. Оснащено проектором / телевизором и доской. Стулья, парты, очевидно. - Компьютеры в помещении
Не менее 10 штук. Каждый должен быть оборудован предустановленной Kali Linux - Сервер для размещения учебных стендов
- Интернет
Достаточно стандартного университетского - Что-то ещё?
[Служебная информация] Дистанционное обучение (удаленный формат занятий)
Если мы его будем делать, нам потребуются:
- Качественная видеокамера
В частности, нужно рассчитывать на онлайн стрим + запись. Зависаний аппаратуры не должно быть - Беспроводная петличка
- Компьютер, через который будет происходить стрим
- Стабильное интернет соединение
Чем нам можно помочь?
Все курсы делаются на нашей инициативе и мы не получаем ни копейки за это.
... если я участник
- Оставлять фидбек
Не важно, хорошо или плохо вы о нас выскажетесь. Если вы оставляете ваше мнение - значит нам есть куда расти - Развиваться самостоятельно
Мы даём только знания для "старта", для более глубоких знаний придется работать самостоятельно - Посещать наши занятия
... если я представляю компанию и/или организацию
Вдруг, нам решат помочь?)
- Можно связаться с ментором/главой курса - Артемом