Компьютерная безопасность NTU, осень 2019 г. - Компьютерная безопасность Национального университета Тайваня
Работал ассистентом преподавателя в Национальном Тайваньском университете и лектором на трехнедельном курсе Pwn.
Содержание курса
Неделя 1: Использование двоичных данных – основы
- Слайд:peakerdeck.com/yuawn/binary-exploitation-basic
- Видео: youtu.be/U8N6aE-Nq-Q
- Лаборатория:
- боф
- переполнение буфера стека, перезапись адреса возврата
- Ору
- системный вызов фильтра seccomp, шеллкод
- Домашнее задание:
- Казино
- доступ к массиву oob, перехват GOT, шеллкод
Неделя 2: Использование двоичных данных
- Слайд:peakerdeck.com/yuawn/binary-exploitation
- Видео: youtu.be/5D7tvxpSUUM
- Лаборатория:
- РОП
- ret2plt
- Практика использования функций plt
- ret2libc
- утечка информации, обход ASLR, практика техники ret2libc
- Домашнее задание:
- Казино++
- доступ к массиву oob, перехват GOT, утечка libc, ret2libc перехват функции plt в system()
Неделя 3: Эксплуатация кучи
- Слайд:peakerdeck.com/yuawn/heap-exploitation
- Видео: youtu.be/rMqvL9j0QaM
- Лаборатория:
- ВСУ
- Попрактикуйтесь в использовании UAF для утечки адреса и эксплойта.
- Примечание
- двойное бесплатное, атака fastbin
- Т-нота
- Домашнее задание:
- Выборы
- поворот стека, гаджет ret2csu csu
- Примечание++
- переполнение нулевого байта на один, дублирование fastbin, подделка размера фрагмента для утечки libc, перезапись __malloc_hook, один гаджет
Проблемы с названием курса
- Под
src
каждой недели находится исходный код вопроса - Ниже
exp
за каждую неделю приведены ответы и способы решения проблемы.
окружающая среда
- ОС: Ubuntu 18.04.
- GCC: gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
Строить
cd week1 # week2 week3
docker-compose up -d
Скомпилируйте (если вам нужно повторно отредактировать двоичный файл заголовка)
sudo apt install libseccomp-dev
make