要約

  • Dan FarmerとWietse Venemaの1993年論文は、侵入者の視点でネットワークサービスを調べる考えを示し、SATANは管理者向けの反復可能な監査にした。
  • CERTはSATANをテストと報告のツールと説明する一方、探索モードが明示されていないホスト、場合によっては管理者の管理域外を調べる可能性を警告した。
  • スキャン結果が示すのは、特定の対象と時間に実行された検査の観測内容である。許可、侵害、意図、または未検査システムの安全性を単独で証明するものではない。

外部からの視点を管理者の手に

「攻撃者のように考える」という助言は広く知られている。しかし、実際のシステムで何をどう確認するのかが曖昧なままでは、実務にならない。Dan FarmerとWietse Venemaは1993年の論文「Improving the Security of Your Site by Breaking Into It」で、ネットワーク越しに見えるサービスを検査し、自分たちのサイトの弱点を確かめる考え方を提示した。各ホストの内側だけを点検する方法では、外から接続したときの露出を捉えにくいからだ。

SATANの名称には資料ごとの差がある。1993年論文では「Security Analysis Tool for Auditing Networks」と展開され、1995年のCERT勧告は「Security Administrator Tool for Analyzing Networks」と記している。表記の変化を整理することは重要だが、もう一つの事実も見落とせない。SATANをめぐる初期の論文はFarmerとWietse Venemaの共著だった。Farmerは2014年のUSENIXインタビューで、論文にSATANと記したところ予想以上の反響があり、実際に作る方法を考え始めたと振り返っている。これは本人による後年の回想であり、特定の導入や利用を裏づける証拠ではない。

CERTはSATANを、ネットワークホストから情報を集めるテスト・報告ツールとして説明した。finger、NFS、NIS、FTP、rexdなどのサービスを調べ、結果を要約したり、単純なルールで潜在的な問題を探したりできた。説明にはパッチや回避策への手がかりも含まれ、ネットワーク構成、利用サービス、ハードウェアやソフトウェアの情報も集めた。個々の管理者が手作業で行っていた確認を、広い範囲で反復できる形にした。

ただし、レポートは判定そのものではない。潜在的な問題が示されたら確認と修正が必要だが、それだけで誰かがその弱点を悪用したとは言えない。何も報告されない場合も、安全の証明にはならない。結果は、検査対象、対象サービス、ルールと実行時点に依存する。ツールが観測していない部分について、レポートは答えを持たない。

スキャン範囲も設計の一部

CERTのCA-1995-06勧告は1995年4月3日付で、当初はベータ版0.51の検証に基づき、正式リリース後に1.1.1に合わせて更新された。勧告によれば、SATANの探索モードは明示的に指定されていないホストも調べることがあり、そのホストが運用者の管理範囲外にある可能性もあった。CERTは、脆弱なホストを探す悪用だけでなく、正当な管理者が意図せず別のサイトをスキャンする状況にも触れている。

境界を決めるのは善意だけではない。開始時の対象、そこから探索される範囲、後続の検査がどこまで進むかを追わなければ、実際のスコープはわからない。共有サービス、外部委託先、隣接ネットワークは、管理者が想定した対象でなくてもプローブを受けることがある。「自社ネットワークを調べる」という説明だけでは、探索が広がる場合の挙動を表せない。

CERTは別の問題を別の勧告に分けた。SATAN 1.0の公開後、ソフトウェア自体の脆弱性をCA-95.07aとして告知している。対象範囲を越えた探索と、スキャナー自身の欠陥は別々のリスクである。歴史資料もこの二つを分けて読む必要がある。

根拠から言えるのは、SATANがネットワーク監査を実行しやすくし、探索モードには指定外まで届く可能性があったということだ。特定の不正スキャンや侵入事件が起きたこと、あるいはFarmerや特定の利用者に悪意があったことまでは立証していない。Heng LuのNote 65「Running-Code Primacy」は、稼働中のテストが実際に行ったことだけを根拠とすべきだという編集上の視点としてのみ用いる。Farmer、Venema、SATANについての史料ではない。

出典