数百万の制御システムに影響も、組み込みTCP/IPスタック「NicheStack」に脆弱性:IoTセキュリティ
JFrogのセキュリティリサーチチームとForescout Research Labsは、制御システムに広く利用されているTCP/IPネットワークスタック「NicheStack」に14件の脆弱性を発見したと発表。リモートでのコード実行、サービス拒否、情報漏えい、TCPスプーフィング、DNSキャッシュポイズニングなどのサイバー攻撃につながる可能性がある。
JFrogのセキュリティリサーチチーム(旧Vdoo)とForescout Research Labsは2021年8月3日(現地時間)、工場や発電所、水処理プラントなどの制御システムに広く利用されているTCP/IPネットワークスタック「NicheStack」に14件の脆弱性を発見したと発表した。これらの脆弱性により、NicheStackを搭載する機器において、リモートでのコード実行、サービス拒否、情報漏えい、TCPコネクションを横取りするTCPスプーフィング、フィッシングや送信された電子メールの窃盗にもつながるDNS(Domain Name System)キャッシュポイズニングなどのサイバー攻撃につながる可能性がある。
NicheStackは、1996年に米国InterNiche Technologies社により開発された組み込みシステム用のTCP/IPスタックである。2003年にはIPv6に対応するなどアップデートを続けていたが、2016年8月にハンガリーのHCC-Embeddedに買収された。NicheStackは、STマイクロ(STMicroelectronics)、フリースケール(Freescale Semiconductor)、アルテラ(Altera)、マイクロチップ(Microchip Technologies)といった海外半導体ベンダーの制御デバイス製品向けに、各社の仕様に合わせて異なるバージョンが配布された。
NicheStackを搭載するこれらのデバイスは工場などで用いられるOT(制御技術)機器に組み込まれており、例えばシーメンス(Siemens)の汎用PLCである「Siemens S7 PLC」もNicheStackを利用している。JFrogの調査によれば、産業用オートメーションのトップ企業を含む約200社のベンダーがNicheStackを使用しているという。また、IoT(モノのインターネット)機器検索エンジンとして知られる「Shodan」の検索結果では、約6400デバイスのインスタンスでNicheStackが実行されていることが分かった。
今回発見した14件の脆弱性は、重要な社会インフラを停止させ得ることから「INFRA:HALT」と名付けられた。JFrogとForescout Research Labsが、NicheStackのバージョン4.0.1のバイナリサンプルとバージョン3のソースコードを解析して発見した。14件のうち、脆弱性の深刻度を示すCVSSスコアが10〜9で「緊急」に位置付けられる脆弱性2件が含まれており、早急な対処が必要だ(表1)。
CVE ID | ベンダー ID | 説明 | 影響を受けるコンポーネント | 潜在的な影響 | CVSSv3.1 スコア |
---|---|---|---|---|---|
2020-25928 | HCCSEC-000002* HCCSEC-000010 |
DNS応答を解析するルーティンでは、個々のDNS応答の「応答データ長」フィールドをチェックしないため、OOB-R/Wが発生することがある | DNSv4 クライアント | RCE | 9.8 |
2021-31226 | HCCSEC-000003 | HTTP POSTリクエストを解析するコードに、サイズ検証が行われていないことによるヒープバッファーオーバーフロー脆弱性が存在する | HTTPサーバ | RCE | 9.1 |
2020-25767 | HCCSEC-000007 | DNSドメイン名を解析するルーティンでは、圧縮ポインタがパケットの境界内を指しているかどうかをチェックしないため、OOB-Rが発生する | DNSv4 クライアント | DoS インフォリーク |
7.5 |
2020-25927 | HCCSEC-000009 | DNSレスポンスを解析するルーティンでは、パケットヘッダで指定されたクエリ/レスポンスの数が、DNSパケットで利用可能なクエリ/レスポンスデータと一致するかどうかをチェックしないため、OOB-Rが発生する | DNSv4 クライアント | DoS | 8.2 |
2021-31227 | HCCSEC-000004 | HTTP POSTリクエストを解析するコードに、誤った符号付き整数の比較によるヒープバッファーオーバーフロー脆弱性が存在する | HTTPサーバ | DoS | 7.5 |
2021-31400 | HCCSEC-000014 | TCP帯域外緊急データ処理機能は、帯域外緊急データの終端へのポインタがTCPセグメントのデータ外を指していた場合、パニック関数を起動し、DoS(NicheStackのバージョンによっては無限ループまたは割り込みが発生)が成功する可能性がある | TCP | DoS | 7.5 |
2021-31401 | HCCSEC-000015 | TCPヘッダ処理コードは、IP長(ヘッダ+データ)の長さをサニタイズしない。これは、IPパケットの長さからヘッダの長さを引いてIPデータの長さを計算する際に、細工されたIPパケットでは整数のオーバーフローが発生する | TCP | アプリ依存 | 7.5 |
2020-35683 | HCCSEC-000011 | ICMPパケットを解析するコードは、ICMPチェックサムを計算するために、(IPヘッダから抽出された)IPペイロードサイズのチェックされていない値に依存している。IPペイロードサイズがIPヘッダのサイズよりも小さく設定されている場合、ICMPチェックサムの計算関数が境界を越えてメモリを読む可能性がある | ICMP | DoS | 7.5 |
2020-35684 | HCCSEC-000012 | TCPパケットを解析するコードは、TCPチェックサム計算関数内でTCPペイロードの長さを計算するために、(IPヘッダから抽出された)IPペイロードサイズのチェックされていない値に依存している。IPペイロードサイズがIPヘッダのサイズよりも小さく設定されている場合、TCPチェックサム計算関数が境界を越えてメモリを読み込む可能性がある。影響の少ないライトアウトオブバウンズの可能もある | TCP | DoS | 7.5 |
2020-35685 | HCCSEC-000013 | TCPのISNは予測可能な方法で生成される | TCP | TCP スプーフィング | 7.5 |
2020-27565 | HCCSEC-000017 | 未知のHTTPリクエストを受信すると、パニックが発生する | HTTP | DoS | 7.5 |
2021-36762 | HCCSEC-000016 | TFTPパケット処理関数は、ファイル名がヌル終端であることを保証していないため、ファイルについてstrlen()を呼び出すと、プロトコルパケットバッファーの境界を超えてメモリが読み込まれる可能性がある | TFTP | DoS | 7.5 |
2020-25926 | HCCSEC-000005 HCCSEC-000008 |
DNSクライアントは、十分にランダムなトランザクションIDを設定しない | DNSv4 クライアント | DNS キャッシュポイズニング | 4 |
2021-31228 | HCCSEC-000006 | 攻撃者は、DNSクエリのソースポートを予測して、DNSクライアントの要求に対する有効な回答として受け入れられるような偽のDNS応答パケットを送信することができる | DNSv4 クライアント | DNS キャッシュポイズニング | 4 |
表1 「INFRA:HALT」の14件の脆弱性 出典:JFrog |
INFRA:HALTへの対策としては、NicheStackの最新版であるNicheStackのバージョン4.3にアップグレードすることが最善の方法となる。ただし、デバイスメーカーからのパッチが提供されていないなどの場合には、NicheStackを実行しているデバイスを検出するとともに、他のネットワークから隔離する必要がある。なお、NicheStackデバイスの検出には、Forescout Research Labsが提供するオープンソースのスクリプトを活用できる。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- VxWorksの脆弱性「URGENT/11」が浮き彫りにしたTCP/IPスタックの“残念な実装”
20億個以上のデバイスに用いられている、ウインドリバーのRTOS「VxWorks」のTCP/IPスタック「IPnet」で発見された11個の脆弱性「URGENT/11」。URGENT/11を発見したIoTセキュリティベンダーのアーミスのリサーチャーが「Black Hat USA 2019」で講演し、URGENT/11やTCP/IPスタックの実装問題について説明した。 - 「VxWorks」にゼロデイ脆弱性、「URGENT/11」は2億個のデバイスに影響
米国のIoTセキュリティベンダーであるアーミスは、ウインドリバーのRTOS「VxWorks」のゼロデイ脆弱性を発見したと発表。バージョン6.5以降のVxWorksで、IPnetスタックを用いるものが対象となる。 - あなたのラズパイは穴だらけ? ユーザーが検討すべき脅威への対策
インターネットに接続されている世界のRaspberry Piは、どれほどセキュリティリスクにさらされているのか。また、Raspberry Piをサイバー攻撃の呼び水にしないためにどのような対策を施せば良いのか、トレンドマイクロでセキュリティエバンジェリストを務める岡本勝之氏の分析概要を聞いた。 - 東芝が制御システム向け脆弱性評価ツールを開発、オープンソース化で展開拡大へ
東芝と米国のPeraton Labsは、発電所や受変電設備、上下水道や交通、工場・ビル施設などで稼働する産業制御システムへのサイバー攻撃に対する脆弱性評価ツール「Automated Attack Path Planning and Validation(A2P2V)」を開発。「Black Hat USA 2021 Arsenal」で発表するとともに、オープンソースソフトウェアとして公開する。 - 負荷を最小限にとどめる、産業PC向けセキュリティソリューション発売
トレンドマイクロは、産業制御システム向けエンドポイントセキュリティソリューション「TXOne StellarProtect」の提供を開始した。産業用PCのパフォーマンス低下を最小限にとどめながら、外部からのマルウェア感染などを防げる。 - 日立のサイバー防衛訓練サービスがリモートワークに対応「オンラインNxSeTa」へ
日立製作所は、同社の大みか事業所(茨城県日立市)や顧客の拠点などで実施してきたサイバー防衛訓練サービス「NxSeTA(Nx Security Training Arena)」について、リモート環境からの参加が可能な「オンラインNxSeTA」を2021年6月1日から提供すると発表した。