House of Rabbit
Last updated
Last updated
Вивчайте та практикуйте взлом AWS: Навчання HackTricks AWS Red Team Expert (ARTE) Вивчайте та практикуйте взлом GCP: Навчання HackTricks GCP Red Team Expert (GRTE)
Можливість змінювати вказівник fd або розмір fast bin: Це означає, що ви можете змінити впередній вказівник шматка в fastbin або його розмір.
Можливість викликати malloc_consolidate
: Це можна зробити або виділивши великий шматок, або об'єднавши верхній шматок, що змушує купу об'єднувати шматки.
Створення перекриваючихся шматків: Мати один шматок, який перекривається з іншим, що дозволяє подальші маніпуляції купою.
Фальшиві шматки: Обманути алокатор, щоб він розглядав фальшивий шматок як законний під час операцій з купою.
Мета: Створення перекриваючого шматка шляхом маніпулювання розміром шматка fastbin.
Крок 1: Виділення шматків
Крок 2: Звільнення чанків
Крок 3: Змінити Розмір Частини
Ми змінюємо метадані розміру chunk1
на 0xa1. Це ключовий крок для обману алокатора під час консолідації.
Крок 4: Викликати malloc_consolidate
Виділення великого фрагмента спричиняє виклик функції malloc_consolidate
, яка об'єднує невеликі фрагменти у швидкому блоці. Змінений розмір chunk1
призводить до перекриття з chunk2
.
Після консолідації chunk1
перекривається з chunk2
, що дозволяє подальшу експлуатацію.
fd
Мета: Створення фальшивого фрагмента шляхом маніпулювання вказівником fd
швидкого блоку.
Крок 1: Виділення фрагментів
Пояснення: Ми виділяємо два блоки, один менший і один більший, щоб налаштувати купу для фальшивого блоку.
Крок 2: Створення фальшивого блоку
Крок 3: Звільнення chunk1
Пояснення: Ми вивільняємо chunk1
, додаючи його до списку fastbin.
Крок 4: Змінюємо fd
chunk1
Пояснення: Ми змінюємо вказівник вперед (fd
) chunk1
, щоб він вказував на наш фальшивий чанк всередині chunk2
.
Крок 5: Викликати malloc_consolidate
Виділення великого шматка знову спричинює виклик malloc_consolidate
, який обробляє фейковий шматок.
Фейковий шматок стає частиною списку fastbin, роблячи його законним шматком для подальшої експлуатації.
Техніка House of Rabbit включає в себе зміну розміру шматка fast bin для створення перекриваючихся шматків або маніпулювання вказівником fd
для створення фейкових шматків. Це дозволяє зловмисникам фальшивити законні шматки в купі, що дозволяє різноманітні форми експлуатації. Розуміння та практика цих кроків покращить ваші навички експлуатації купи.
Вивчайте та практикуйте Хакінг AWS:Навчання HackTricks AWS Red Team Expert (ARTE) Вивчайте та практикуйте Хакінг GCP: Навчання HackTricks GCP Red Team Expert (GRTE)