江藤博明
詳細情報
- 所属
- IBM東京基礎研究所
- 代表的な業績
- ProPolice(Stack-Smashing Protector)
GCCの -fstack-protector となったコンパイラ防御、ProPolice を生んだIBMの日本人研究者。
2000年頃、依田一和(Kunikazu Yoda)とともに ProPolice を書いた。ローカル変数とリターンアドレスの間にガード値を置き、関数から戻る前に検査するGCCのパッチである。発想は Crispin Cowan の StackGuard にあったが、ProPolice はさらに踏み込み、ローカル変数を並べ替えて、バッファがポインタより上に来るようにし、ポインタを上書きできないようにした。
OpenBSD は2003年にこれを標準で有効にした。GCC 4.1 は2006年に書き直した版を -fstack-protector として搭載し、今では大半のLinuxディストリビューションが全面的に有効にしている。多くのプログラマが長年その恩恵に預かりながら、誰が書いたのかを知らない、数少ないセキュリティ機能の一つである。