己を知り、敵を知る――Nmapで見つめ直す自分の姿:セキュリティ対策の「ある視点」(6)(3/3 ページ)
ポートスキャンは正義の管理者には関係ない? いいえ、己の姿を客観的に見るためには、的確なポートスキャン術が必要なのです。
オープンポートから見えてくるものとは
さて、Nmapの使い方についてはおおよそ理解していただけたことだろう。それらと初めに述べた経路の話を踏まえて実際に自身の管理するネットワーク、サーバに対してスキャンを行ってみてほしい。
例えば、インターネットやDMZ内から、
nmap -sS -P0 -T4 -p 1-65535 -oN result.txt -r -v -A 管理しているサーバのアドレス
と実行してみるとどういう結果が得られるだろうか。外部に提供していると認識できているものはオープンポートとして検出されるだろう。
しかし、それ以外にはないだろうか。
認識していないポートが発見された場合、それは何のためにオープンされているのだろうか。そのポートを使用しているアプリケーションには脆弱性は存在しないのだろうか。
このように、ポートスキャンの結果から、普段の運用からは見えてこないものが見えてきたのではないかと思う。ファイアウォールやルータなどのネットワーク機器にしても、サーバなどにしても、認識できていないオープンポートは、認識されていないだけにセキュリティを考慮されずに運用されている場合が多いためそれが命取りとなってしまう可能性が高いのである。
実録・オープンポートから見えたもの
以下に、筆者が経験した検査での例を紹介しよう。
検査を行ったサーバはWebサーバとして運用しているという情報のみだった。まずは、ポートスキャンを行ったのだが、そこでのNmapの結果は以下のようなものだった。
80/tcp open http?
443/tcp open ssl OpenSSL
3306/tcp open mysql MySQL (unauthorized)
8888/tcp open http?
事前に得ていた「Webサーバとして運用」という言葉からは上記結果の「80」「443」は予想されていた。しかし、結果としては「3306」「8888」のオープンも確認されたわけである。
「3306」はNmapも教えてくれているとおり、オープンソースのデータベースソフト、MySQLが使用するポートであるため、クライアントソフトを用いて接続を試みたが、データベースへの接続は限定されたIPアドレスのみの許可となっていたため接続することはできなかった。
次に、「8888」に対してブラウザにて接続を試みた結果、接続することはできるのだがコンテンツは表示されず、ブラウザは真っ白だった。
ほかのディレクトリが存在する可能性があるので、慣習的に使用されるディレクトリ名や特定のアプリケーションが使用するようなディレクトリ名に対してアクセスを試みた。その結果、とあるデータベースの管理ツールがインストールされていることが判明したのである。
さらにそのバージョンを調査すると既知の脆弱性を抱えていることが判明した。その既知の脆弱性とはファイルやフォルダの構成など、サーバ内の情報が外部から取得可能というものであった。
筆者はその脆弱性を利用して、システム内の調査を行い、最終的には、データベースへアクセスするためのアカウントとそのパスワードが記述されたファイルを発見するに至ったのである。そして、入手したアカウント、パスワードを使用して、データベース管理ツールにログインし、データベース内に保存された情報へアクセスできたことはいうまでもないだろう。
事件はファイアウォールの内側でも起こり得る
さまざまなアクセス制御を施していたとしてもたった1つの未制御により、甚大な被害を生むということがお分かりいただけただろうか。このような例は、決してまれではなく、どこのネットワークにも起こり得ることなのである。
ネットワーク機器やサーバなどで管理用にオープンされているポートが発見されることは意外と多いだろう。ネットワーク機器やサーバ類ではHTTP、SSH、TELNETなどが管理用にオープンされている場合が多い(ポート番号は任意に変更されている可能性がある)。
そのような場合は、本当に必要な管理方法(プロトコル)のみを有効にし、さらに、不特定多数にそのサービスを開放する必要があるのかどうかを再検討することをお勧めする。もちろん、必要ない場合は停止することが望ましい。必要である場合でも、必要最小限のアクセス元からのみ許可するといったアクセス制御ルールへと変更を行うべきである。
今回の記事で、想定する脅威によって調査を行う経路を選択すべきであるということ、その経路において、攻撃を行う側の視点からどのような突破口が存在するのかということを把握する大切さ、そして、たった1つの見落としが命取りになる可能性があるということをご理解いただければ幸いである。
読者の皆さんも機会があれば、さまざまな経路からオープンポートの確認を行ってほしい。思わぬ結果が得られるのではないだろうか。自身の目で一度、確かめることをお勧めする。
著者紹介
辻 伸弘(つじ のぶひろ)
セキュリティエンジニアとして、主にペネトレーション検査などに従事している。
民間企業、官公庁問わず多くの検査実績を持つ。
自宅では、趣味としてのハニーポットの運用、IDSによる監視などを行っている。
- Q.E.D.――セキュリティ問題を解決するのは「人」
- たった1つの脆弱性がもたらすシステムの“破れ”
- 報告、それは脆弱性検査の「序章」
- ASV検査、ペネトレテスターの思考を追う
- プレイバックPart.II:シフトした脅威の中で
- プレイバックPart.I:ウイルスのかたち、脅威のかたち
- ハニーポットによるウイルス捕獲から見えてくるもの
- SNMPコミュニティ名、そのデフォルトの価値は
- 人の造りしもの――“パスワード”の破られ方と守り方
- 魂、奪われた後――弱いパスワードの罪と罰
- 魂まで支配されかねない「名前を知られる」という事件
- 己を知り、敵を知る――Nmapで見つめ直す自分の姿
- DNS、管理者として見るか? 攻撃者として見るか?
- メールサーバ防御でも忘れてはならない「アリの一穴」
- 「Forbidden」「サンプル」をセキュリティ的に翻訳せよ
- ディレクトリ非表示の意味をもう一度見つめ直す
- たった2行でできるWebサーバ防御の「心理戦」
Copyright © ITmedia, Inc. All Rights Reserved.