次のページへSNMPで情報はどのように取得できるのかSNMPで取得できる情報にはどのようなものがあるのだろうか。今回は、ペネトレーションテストの現場でも使用しているツールを用いて取得される情報の中から重要と思われるものを紹介しよう。今回は、「snmpcheck」というツールを紹介する。このツールはPerlで記述されており、基本的にはUNIX系OSでも、Windows系OSでも使用可能である(実行環境によっては適宜モジュールなどをインストールする必要がある)。情報を選択するのに対して、このツールではあらかじめ内部にMIB情報を持っており、その中から取得可能な特定のMIBのみを対象システムから取得するように作成されている。取得を行うMIBは、ペネトレーションテストを行ううえで「貫通」につながる情報、いい換えれば、悪意のあるユーザーがシステムへ侵入するために有益な情報ということになる。ツールの説明に入る前に、このツールで取得できる情報の中でも重要と筆者が判断する情報と、その取得例をいくつか紹介しよう。accountsシステム内に存在するユーザーアカウントである。Windows系OS標準のSNMPではデフォルトでこの情報が開示されるようになっている。Windows系OSでの取得例としては以下のとおりである。accountsの取得例いままでの記事でユーザー名を知られるということの脅威について触れたが、SNMPからもこのようにユーザー名を知られてしまう可能性があるのだ。ユーザー名を知られることで顕在化する脅威については、過去の記事を参照してほしい。Processes情報取得時にシステム上で稼働しているプロセスのリストである。通信する、しないにかかわらず、そのシステム上でリアルタイムにどのようなアプリケーションが動作しているかということが分かる。portsシステムのTCP、UDPのポートの状態である。通常、ペネトレーションテストにおいて、オープンポートの状態を外部から知るには、「nmap」などを用いて、ポートスキャンを行う。ポートは、TCP、UDPで、それぞれ0〜65535番が存在する。これらを調査するためには、それなりの時間を要することは、容易に想像がつくだろう。この情報を取得することができれば、ローカルでコマンドを実行するようにシステムのオープンポートを正確に知ることができるのである。この情報を効率よく入手できることは、悪意のあるユーザーにとって有益であると考えられる。componentsシステムにインストールされているコンポーネントのリストである。取得例にも示すとおり、Windows系OSでは、修正プログラムの適用状況を知ることが可能である。UNIX系OSでも、現在インストールされているパッケージの種類、バージョンを知ることが可能である。componentsの取得例この情報を基に、インターネットを利用し、情報を検索することでそのシステム内に存在する既知の脆弱性を洗い出すことも可能である。今回は、脆弱性情報の検索サイト、「SecurityFocus」を紹介しよう。この記事をご覧になっている方の中にもご存じの方は多いと思うが、SecurityFocusはセキュリティ情報の提供を行うサイトの中でもかなり老舗の部類に入るサイトである。SecurityFocusが提供している「bugtraq」などのメーリングリストは、さまざまな意見交換や脆弱性情報が公表されたりということから世界的にも有名である。このサイトの提供するサービスの中には、「Vulnerabilities」というものがあり、そこから、Vendor(提供者)Title(製品名)Version(バージョン)といった項目からSecurityFocusに登録されている脆弱性情報を検索することが可能である。SecurityFocusに登録されている脆弱性情報の例これにより、知り得たOSやソフトウェアの名称、バージョン情報を利用して、そのシステム内に存在する脆弱性を調査することが可能となる。下図は、「ImageMagick」のバージョン「6.2.2」の脆弱性を検索した結果である。Mountpointsマウントとはディスクなどの外部デバイスをコンピュータに認識させ、そのコンピュータ上で操作を行えるようにすることを指し、マウントポイントとは、マウントされたデバイスがどの場所を参照することで操作することができるかを示すものである。このマウントポイントから思わぬ情報が取得できる場合がある。上記の取得例の1行目「/home/tsuji」に注目してほしい。このマウントポイントが示すパス(path)からは、システム内に「tsuji」というユーザーが存在するのではないか、といった推測を行うことができる。このパスから「tsuji」というユーザーの存在が推測できることから発生し得る脅威については、第7回の記事を参照してほしい。余談ではあるが、過去にペネトレーションテストで、脆弱性スキャナの結果から非常に堅牢ではないかと思われたシステムが、思われたシステムが、このパス情報から侵入されるに至ったというものもあった。これまで紹介した情報は、確かにシステムを管理するうえでは非常に有用である。裏を返せば、この情報は、一度悪意のあるユーザーに取得されると大きな脅威となり得るのである。セキュリティを考慮し、システムを運用するうえで覚えておいてほしいことは、システムを管理する際、管理者にとって有用な情報は、悪意のあるユーザーに奪われることで、最も危険な凶器となり得るということである。それでは、snmpcheckの使用方法を説明しよう。今回の記事では、詳しい使用方法については割愛させていただき、単純な使用例のみを紹介する。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。