House of Lore | Small bin Attack
Last updated
Last updated
Вивчайте та практикуйте хакінг AWS:Навчання AWS Red Team Expert (ARTE) від HackTricks Вивчайте та практикуйте хакінг GCP: Навчання GCP Red Team Expert (GRTE) від HackTricks
Це не працює
Це також не працює, навіть якщо спробує обійти деякі перевірки, отримає помилку: malloc(): unaligned tcache chunk detected
Цей приклад все ще працює: https://guyinatuxedo.github.io/40-house_of_lore/house_lore_exp/index.html
Вставити фальшивий малий чанк в small bin, щоб його можна було виділити. Зверніть увагу, що доданий малий чанк є фальшивим, створеним зловмисником, а не фальшивим у довільному положенні.
Створіть 2 фальшивих чанки та зв'яжіть їх разом та з легітним чанком у small bin:
fake0.bk
-> fake1
fake1.fd
-> fake0
fake0.fd
-> legit
(потрібно змінити вказівник у вивільненому малому чанку через якусь іншу уразливість)
legit.bk
-> fake0
Після цього ви зможете виділити fake0
.
Виділяється малий чанк (legit
), потім виділяється ще один, щоб уникнути об'єднання з верхнім чанком. Потім legit
вивільняється (переміщаючи його до списку неупорядкованих чанків) і виділяється більший чанк, переміщаючи legit
до small bin.
Зловмисник генерує кілька фальшивих малих чанків та робить необхідне зв'язування для обходу перевірок на відповідність:
fake0.bk
-> fake1
fake1.fd
-> fake0
fake0.fd
-> legit
(потрібно змінити вказівник у вивільненому малому чанку через якусь іншу уразливість)
legit.bk
-> fake0
Виділяється малий чанк, щоб отримати legit
, роблячи fake0
верхнім у списку малих чанків
Виділяється ще один малий чанк, отримуючи fake0
як чанк, що потенційно дозволяє читати/писати вказівники всередині нього.
Вивчайте та практикуйте хакінг AWS:Навчання AWS Red Team Expert (ARTE) від HackTricks Вивчайте та практикуйте хакінг GCP: Навчання GCP Red Team Expert (GRTE) від HackTricks