House of Lore | Small bin Attack

Reading time: 3 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

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

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

Код

Мета

  • Вставити фальшивий малий шматок у малий бін, щоб потім його можна було виділити.
    Зверніть увагу, що доданий малий шматок є фальшивим, який створює зловмисник, а не фальшивим у довільній позиції.

Вимоги

  • Створити 2 фальшивих шматки та зв'язати їх разом і з легітимним шматком у малому біні:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (вам потрібно змінити вказівник у звільненому малому бін шматку через якусь іншу уразливість)
  • legit.bk -> fake0

Тоді ви зможете виділити fake0.

Атака

  • Малий шматок (legit) виділяється, потім виділяється ще один, щоб запобігти консолідації з верхнім шматком. Потім legit звільняється (переміщуючи його в список незасортованих бінів), і виділяється більший шматок, переміщуючи legit у малий бін.
  • Зловмисник генерує пару фальшивих малих шматків і робить необхідне зв'язування, щоб обійти перевірки:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (вам потрібно змінити вказівник у звільненому малому бін шматку через якусь іншу уразливість)
  • legit.bk -> fake0
  • Виділяється малий шматок, щоб отримати легітимний, роблячи fake0 верхнім у списку малих бінів
  • Виділяється ще один малий шматок, отримуючи fake0 як шматок, що потенційно дозволяє читати/записувати вказівники всередині нього.

Посилання

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

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