脆弱性に関するニュースは、ほぼ毎日のように発表されます。公表された脆弱性はインターネット上で話題になり、開発者がパッチをリリースしていったん収まります。これで万事OK、問題は解決されたように見えるかもしれませんが、そうではありません。更新作業は手間がかかるため、管理者全員がパッチを適用しているとは限りません。ネットワーク機器用ソフトウェアの場合は、特にそういった傾向があります。
システム管理者の中には、自分たちの業務が犯罪者の標的にならないと考える人がいます。また、公式セキュリティアドバイザリの中に「実環境での悪用の兆候は見られていない」という意味の言葉を探し、そういったことが書かれていれば、その脆弱性は単に理論上のものだと考えて安堵してしまう人もいます。
昨年、Cisco社製品の重大な脆弱性が複数報告されました。その一つは「SNMP Remote Code Execution Vulnerabilities in Cisco IOS and IOS XE Software(アドバイザリID: cisco-sa-20170629-snmp)」で、攻撃者が該当システムを完全にコントロール可能となる可能性があると指摘されています。攻撃者が必要とするのは、読み取り専用のSNMPコミュニティ 名(ユーザーIDまたはパスワードのようなもの)だけです。この問題は2017年6月29日に公開されましたが、Ciscoはこの脆弱性を重く受け止め、迅速にパッチをリリースしました。これまでにこのエクスプロイトによる脆弱性の悪用は確認されていません。
Kaspersky Labのペネトレーションテストスペシャリスト、アルチョム・コンドラチェンコ(Artem Kondratenko)は外部ペネトレーションテストを実施し、既定のSNMPコミュニティ名を使用しているCisco社ルーターを発見しました。この脆弱性の危険度を調査することにしたコンドラチェンコは、そのルーターを介して内部ネットワークへアクセスすることを目標に設定しました。なお、彼の発見は特別なことではなく、Shodanの検索結果によれば、既定のコミュニティ名を使用している同一モデルのデバイスは3,313台に上ります。
コンドラチェンコが実施した調査について、詳しくはChaos Communication Congress(34C3)での講演(英語)をご覧ください。技術的な詳細はそちらへ譲るとして、ここで重要なのは最終結果です。講演の中では、この脆弱性を利用し、Cisco IOSの特権レベルとしては最高のレベル15でシステムへアクセス可能であることが実演されました。このエクスプロイトが実環境で利用された例は今のところないとはいえ、無視するのは賢明ではありません。コンドラチェンコがこの脆弱性を持つデバイスを発見してから、cisco-sa-20170629-snmpを悪用した概念実証を作成するまで、わずか4週間でした。
お使いのルーターがこの脆弱性の最初の犠牲にならないようにするため、以下の対策をお勧めします。
- ネットワーク機器のソフトウェアを、確実に最新のものにする。
- 外部ネットワークに接続するルーターで、既定のコミュニティ名を使用しない(そもそも既定のコミュニティ名を一切使用しないのが賢明です) 。
- お使いのネットワークデバイスに関するサポート終了の発表に注意しましょう。サポート終了日以降は、デバイスのメーカーサポート対象外となり、アップデート通知を受けとれなくなる可能性が大です。