После использования glibc 2.27 многие баги UAF не могут использовать
Я китаец, так что извините, мой английский плохой; Но сейчас у меня есть серьезные проблемы. После использования glibc 2.27 я не могу использовать много ошибок для изучения. Например, UAF (use-after-free) для утечки адреса libc. Изменяет ли glibc использование несортированного bin? Почему я не могу использовать UAF для утечки адреса libc в несортированном бине? Извините, пожалуйста, дайте мне объяснить, введите описание изображения здесь
Подобным образом, в прошлом я мог распределять порцию по блокировке, а затем блокировать порцию с тем же размером, которая была бы установлена в несортированном контейнере и отображалась в main_arena, чтобы я мог видеть адрес libc. Но сейчас пусто. Так что я не могу достичь своей темы конкурса. Это 32-битный Кали Линукс. https://pwnable.tw/challenge/ Вот тема конкурса. Это pwn из ctf. Название - hacknote http://www.freebuf.com/articles/rookie/155971.html Это рецензия на ctf, но она китайская.
1 ответ
Последние версии glibc добавили кеш потока в malloc
функция:
- кэш-память malloc для каждого потока: тесты
- Glibc включает кэш для каждого потока для Malloc - выигрыш большой производительности
Это меняет структуру кучи, и некоторые методы эксплуатации перестали работать, в то время как другие (которые раньше снова работали с fastbins) теперь снова работают с чанками в кеше потока.
Вы можете установить glibc.malloc.tcache_count
Настраивается, чтобы отключить кэш потоков, так что многие старые демонстрационные эксплойты будут работать снова. Переменные задаются в командной строке при запуске приложения.