図5 クラッカが弱いサーバーを見定めるまでの流れ
まず,稼働中のサーバー・マシンのIPアドレスを調べる。マシンを特定したら,そのマシンで動作しているサービスを調べる。最後に,そのサービスのソフトウエアの名前やバージョンを調べる。この3段階を踏む。
 クラッカが侵入しようとするサーバーを決めるまでにすることは前調査。クラッカはサーバーに関するさまざまな情報を入手し,セキュリティの弱そうな部分を絞り込んでいく。「サーバーをクラックできるかどうかは事前の情報収集がすべて」(ジェイエムシーの土門仁志セキュリティ・エージェント)なのだ。

 裏を返せば,クラッカはセキュリティの高いサーバーへあえて侵入しようとしない。ねらうのは,より簡単に侵入できそうなセキュリティの弱いサーバーである。

3段階でふるいにかける

 クラッカが侵入できそうなサーバーを絞り込んでいくまでの前調査は,3段階に分かれる(図5[拡大表示])。

 第1段階は,稼働しているサーバー・マシンのIPアドレスを取得する「アドレス・スキャン」の作業である。マシンがネットワークにつながっていて稼働中でないと侵入できないから,当然の絞り込み作業である。この段階では,インターネットで自由に手に入れられるツールを使ってマシン群をスキャンして,稼働しているマシンを効率的に調べる。

 第2段階は,稼働しているサーバー・マシンで動作しているサービス(サーバー・ソフト)を調べる作業だ。一般に「ポート・スキャン」と呼ばれる。1台のサーバー・マシンで多数のサーバー・ソフトが動いているほど,侵入できる可能性が高いと判断する。ここでもクラッカは,スキャン・ツールを使って,マシン上で動いているサービスを調べる。

 第3段階は,サーバー・マシンで動いているサーバー・ソフトの名称やバージョンを調べる作業である。これは,「バナー・チェック」と呼ばれる。

 ソフト名とバージョンがわかれば,そのソフトにバグがあるかは,インターネット上の公開情報だけで簡単に調べられる。クラッカはメーカーなどが公開しているセキュリティ情報を逆手にとって,悪用するのである。そして,バグをそのままにして運用しているサーバーがあれば,そこを突いた攻撃が有効であると判断するのだ。