House of Lore | Small bin Attack

Reading time: 5 minutes

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

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ハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする