House of Lore | Small bin Attack

Підтримайте HackTricks

Основна інформація

Код

Мета

  • Вставити фальшивий малий чанк в 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 як чанк, що потенційно дозволяє читати/писати вказівники всередині нього.

Посилання

Підтримайте HackTricks

Last updated