ハッカー・クラッカーによる伝統的システム侵入手法
省庁のHP改ざん事件が頻発している。前回はWindowsの重要なDATABASEであるレジストリ書き換え機能を利用したシステム侵入を検討したが、今回はハッカー、クラッカーによるバッファオーバーフローとよぶ伝統的システム侵入手法を検討してみよう。省庁のHP改ざん事件の多くはこの手法の利用が指摘されている。
UNIX上で動作するFTPD、POPD等のサービスプログラムのバッファオーバーフローバグを利用し侵入、ルート権限を奪うのだが、この手法の原理はターゲットサーバーのスタック領域に確保されたバッファに長い文字列など大容量のデータを送信し、送信データのなかにサーバーに対しコマンド操作を可能にするプログラムを呼び出すコードを組み込み、故意にオーバーフローさせデータ処理領域から溢れた部分に含まれたコードがサーバー上で実行され、コマンド操作の可能なプログラムが呼び出され侵入、ルート権限奪取を可能としてしまう。Windows95、98はUNIXのようにシェルサービスを持たないが、膨大な長さの情報を送信し、その情報の中にプログラムの流れを制御するRETアドレスを書き換える仕掛けを組み込み故意にオーバーフローさせプログラムの制御を奪い攻撃コードを実行させてしまう。
これらの侵入対策として異常な大容量のデータをサーバー側で取り込まないように設定されたり、エラーをクライアントに返すなどのバウンドチェックの処理で防御可能なはずだが適切なシステム管理がなされてないと深刻な被害をこうむる。
■関連記事
オフィス需要と在宅勤務制度