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をサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
基本情報
コード
- https://ctf-wiki.mahaloz.re/pwn/linux/glibc-heap/house_of_lore/ のものを確認してください
- これは動作しません
- または: https://github.com/shellphish/how2heap/blob/master/glibc_2.39/house_of_lore.c
- これは、
malloc(): unaligned tcache chunk detected
というエラーを取得しながらいくつかのチェックをバイパスしようとしても動作しません - この例はまだ動作します: https://guyinatuxedo.github.io/40-house_of_lore/house_lore_exp/index.html
目標
- 小さなビンに偽の小さなチャンクを挿入して、それを割り当て可能にすること。
追加された小さなチャンクは攻撃者が作成した偽のものであり、任意の位置にある偽のものではないことに注意してください。
要件
- 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
がチャンクとして取得され、内部のポインタを読み書きする可能性を許可します。
参考文献
- https://ctf-wiki.mahaloz.re/pwn/linux/glibc-heap/house_of_lore/
- https://heap-exploitation.dhavalkapil.com/attacks/house_of_lore
- https://guyinatuxedo.github.io/40-house_of_lore/house_lore_exp/index.html
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をサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。