CISA

CISAとFBIは22日、ソフトウェア会社各社に対し、出荷前に製品を見直し、パスOSコマンド・インジェクションの脆弱性を排除するよう促した。

この勧告は、複数のOSコマンドインジェクションのセキュリティ欠陥(CVE-2024-20399CVE-2024-3400CVE-2024-21887)を悪用してCiscoPalo AltoIvantiのネットワークエッジデバイスを侵害する最近の攻撃を受けて発表された。

これらの攻撃をコーディネートした中国国家に支援された脅威行為者であるVelvet Antは、サイバースパイキャンペーンの一環として、ハッキングされたデバイス上で永続性を得るためにカスタムマルウェアを展開しました。

「OSコマンド・インジェクションの脆弱性は、メーカーがOS上で実行するコマンドを作成する際に、ユーザー入力を適切に検証し、サニタイズしない場合に発生する」と、本日の共同勧告は説明している。

「適切な検証やサニタイズなしにユーザー入力を信頼するソフトウェアを設計・開発することは、脅威行為者に悪意のあるコマンドを実行させる可能性があり、顧客を危険にさらすことになる。

CISAは、開発者に対し、ソフトウェア製品を設計・開発する際に、OSコマンドインジェクションの脆弱性を大規模に防止するためのよく知られた緩和策を実装するよう助言している:

  • 汎用システム・コマンドに入力される生の文字列を構築する代わりに、可能な限りコマンドと引数を分離する組み込みライブラリ関数を使用する。
  • 入力パラメタリゼーションを使用して、コマンドからデータを分離する。
  • ユーザー入力によって構成されるコマンドの部分を、必要なものだけに限定する。

技術リーダーは、ソフトウェア開発プロセスに積極的に関与すべきである。そのためには、ソフトウェアが、コマンドの意図した構文と引数を保持しながら、安全にコマンドを生成する関数を使用するようにする。

さらに、脅威モデルの見直し、最新のコンポーネント・ライブラリの使用、コード・レビューの実施、厳格な製品テストの実施などを行い、開発ライフサイクル全体を通じてコードの品質とセキュリティを確保する必要がある。

CISA OS command injection tweet

「OSコマンド・インジェクションの脆弱性は、ユーザー入力をコマンドの内容から明確に分離することで、長い間防ぐことが可能であった。この発見にもかかわらず、OSコマンドインジェクションの脆弱性は、その多くがCWE-78に起因するものであり、依然として蔓延している脆弱性の一種である」とCISAとFBIは付け加えている。

「CISAとFBIは、技術メーカーのCEOやその他のビジネスリーダーに対し、このクラスの欠陥が過去に発生した事例を分析し、将来的に排除するための計画を策定するよう、技術リーダーに要請するよう求めている。

OSコマンドインジェクションのセキュリティバグは、MITREの最も危険なソフトウェアの弱点トップ25において、out-of-bounds write、クロスサイトスクリプティング、SQLインジェクション、use-after-freeの欠陥に次ぐ5位を占めた。

5月と3月にも、「セキュア・バイ・デザイン(Secure by Design)」警告が2件出され、技術幹部とソフトウェア開発者に対し、パス・トラバーサルと SQLインジェクション(SQLi)のセキュリティ脆弱性を排除するよう促している。