Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 469

Heap Feng Shui

Heap Feng Shui とは何ですか?

Heap Feng Shui2007 年に Alexander Sotirov が紹介した決定論的ヒープ整形手法。アロケーションを巧妙に配置して脆弱オブジェクトの隣に攻撃者制御オブジェクトを置く。


Alexander Sotirov は 2007 年の Black Hat Europe で Heap Feng Shui を提案しました。確率的なヒープスプレーと異なり、Feng Shui は JavaScript からの確保・解放・再確保を綿密に行い、ブラウザのヒープを形作って、メモリ破壊発火後に脆弱オブジェクトが攻撃者制御バイトと確実に重なるよう配置します。freelist の枯渇、サイズクラスごとの bin の活用、長寿命アロケーションをアンカーとして使うことで、ASLR やランダム化アロケータの下でも決定的なレイアウトを実現します。発想はカーネルヒープ(Linux SLUB、Windows Pool Feng Shui)や JavaScript エンジン(V8、SpiderMonkey)の悪用にも拡張されました。対策は強化アロケータ(PartitionAlloc、scudo)、ARM MTE、GWP-ASan、機密メタデータの分離ヒープなどです。

  1. 01

    JavaScript で精密にアロケーションを起こし、脆弱な JIT オブジェクトと攻撃者制御 ArrayBuffer を隣接させる。

  2. 02

    Linux カーネルの SLUB Feng Shui で UAF オブジェクトを cred 構造体に揃え、root を奪取する。

よくある質問

Heap Feng Shui とは何ですか?

2007 年に Alexander Sotirov が紹介した決定論的ヒープ整形手法。アロケーションを巧妙に配置して脆弱オブジェクトの隣に攻撃者制御オブジェクトを置く。 サイバーセキュリティの 攻撃と脅威 カテゴリに属します。

Heap Feng Shui とはどういう意味ですか?

2007 年に Alexander Sotirov が紹介した決定論的ヒープ整形手法。アロケーションを巧妙に配置して脆弱オブジェクトの隣に攻撃者制御オブジェクトを置く。

Heap Feng Shui はどのように機能しますか?

Alexander Sotirov は 2007 年の Black Hat Europe で Heap Feng Shui を提案しました。確率的なヒープスプレーと異なり、Feng Shui は JavaScript からの確保・解放・再確保を綿密に行い、ブラウザのヒープを形作って、メモリ破壊発火後に脆弱オブジェクトが攻撃者制御バイトと確実に重なるよう配置します。freelist の枯渇、サイズクラスごとの bin の活用、長寿命アロケーションをアンカーとして使うことで、ASLR やランダム化アロケータの下でも決定的なレイアウトを実現します。発想はカーネルヒープ(Linux SLUB、Windows Pool Feng Shui)や JavaScript エンジン(V8、SpiderMonkey)の悪用にも拡張されました。対策は強化アロケータ(PartitionAlloc、scudo)、ARM MTE、GWP-ASan、機密メタデータの分離ヒープなどです。

Heap Feng Shui からどのように防御しますか?

Heap Feng Shui に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。

Heap Feng Shui の別名は何ですか?

一般的な別名: ヒープグルーミング。

関連用語