Large Bin Attack
Last updated
Last updated
Вивчайте та практикуйте хакінг AWS: Навчання AWS Red Team Expert (ARTE) від HackTricks Вивчайте та практикуйте хакінг GCP: Навчання GCP Red Team Expert (GRTE) від HackTricks
Для отримання додаткової інформації про те, що таке великий бін, перегляньте цю сторінку:
Bins & Memory AllocationsМожна знайти відмінний приклад у how2heap - атака на великий бін.
Основна ідея полягає в тому, що в останній "поточній" версії glibc (2.35) не перевіряється: P->bk_nextsize
, що дозволяє змінювати довільну адресу значенням великого бін-чанку, якщо виконані певні умови.
У цьому прикладі можна знайти наступні умови:
Виділяється великий чанк
Виділяється великий чанк, менший за перший, але в тому ж індексі
Має бути меншим, щоб йти першим у біні
(Створюється чанк для запобігання злиттю з верхнім чанком)
Потім перший великий чанк звільняється, і виділяється новий чанк, більший за нього -> Чанк1 переходить до великого біну
Потім другий великий чанк звільняється
Тепер уразливість: Атакуючий може змінити chunk1->bk_nextsize
на [ціль-0x20]
Потім виділяється більший чанк, ніж chunk 2, тому chunk2 вставляється в великий бін, перезаписуючи адресу chunk1->bk_nextsize->fd_nextsize
адресою chunk2
Є інші потенційні сценарії, суть у тому, щоб додати до великого біну чанк, який є меншим за поточний X чанк у біні, тому його потрібно вставити саме перед ним у біні, і ми повинні мати можливість змінити bk_nextsize
X, оскільки саме там буде записана адреса меншого чанку.
Ось відповідний код з malloc. Додані коментарі для кращого розуміння того, як була перезаписана адреса:
Це можна використати для перезапису глобальної змінної global_max_fast
бібліотеки libc, щоб потім використовувати атаку на швидкий бін з більшими частинами.
Ви можете знайти ще одне відмінне пояснення цієї атаки на guyinatuxedo.
Атака на великий бін в тій же ситуації, як в how2heap.
Примітив запису є складнішим, оскільки global_max_fast
тут некорисний.
Для завершення експлойту потрібна FSOP.
Вивчайте та практикуйте взлом AWS:Навчання HackTricks AWS Red Team Expert (ARTE) Вивчайте та практикуйте взлом GCP: Навчання HackTricks GCP Red Team Expert (GRTE)