OSSを介したサプライチェーン攻撃、どうすれば防げるのか:パッケージ管理システムには要注意
オープンソースソフトウェアを介したサプライチェーン攻撃には十分な危険性がある。ソフトウェア開発者向けにどのような対策があるのか、WhiteSourceが解説した。
オープンソースセキュリティとライセンスコンプライアンス管理プラットフォームを手掛けるWhiteSourceは2021年6月10日(ポーランド時間)、オープンソースソフトウェア(OSS)を介したサプライチェーン攻撃の危険性に警鐘を鳴らし、ソフトウェア開発者がこうした攻撃を防ぐための9個の対策を紹介した。これがDevSecOpsの第一歩となるのだという。
ソフトウェア開発者がオープンソースソフトウェアを使用する際に特に注意しなければならない点がある。「npm」「PyPI」「RubyGems」といったパッケージ管理システムやソフトウェアリポジトリを用いてパッケージやライブラリをインストールしようとすると、それだけで悪意あるコードが仕込まれてしまう恐れがあるという。
ソフトウェア開発者がオープンソースソフトウェアを介したサプライチェーン攻撃を防ぐためには、次のようなコツがあるとした。
(1)確認済みのパッケージソースのみを使う
タイポスクワッティングやブランドジャッキングは、最もよく使われる攻撃手法だ。タイポスクワッティングとは紛らわしいつづり(タイプミス)を利用して、ユーザーが意図したのとは異なるURLに誘導する攻撃手法。
下図に挙げたのはさらに面倒なIDN(Internationalized Domain Names )ホモグラフ攻撃の一例だ。あるローマ字とよく似た非ローマ字を含むドメイン名を使うため、目視ではなかなか見分けることができない。
(2)使用するパッケージのオープンソースライセンスを調べる
多くのパッケージレジストリは、パッケージのライセンス情報を提供している。パッケージの新版では、オープンソースライセンスが変わっている可能性がある。
(3) 放棄されたパッケージの利用を中止する
メンテナーがおらず放棄されたパッケージは、サイバー攻撃者に乗っ取られる可能性が高い。十分な注意が払われていないソフトウェアを使っている場合は、使うのをやめるか、別のパッケージに乗り換えるか、開発を引き継ぐことを考えるとよい。
(4)公開直後のパッケージを使わない
公開されてから30日未満のパッケージには注意が必要だ。コミュニティーに属するセキュリティ研究者によって安全が確認されるまで、使わないようにしよう。WhiteSourceによれば、悪意のあるパッケージをさまざまなレジストリに公開しようとする試みが何度かあったという。
関連記事
- Google、OSSパッケージの依存関係を可視化した実験的サービスを発表
Googleはオープンソースプロジェクトの依存関係などを可視化した実験的サービス「Open Source Insights」を提供開始した。「変更のペースが速く、ついていくのが難しい場合がある」「大きなプロジェクトが依存するソフトウェアパッケージが頻繁にアップデートされ、明確な現状把握ができない場合がある」といったOSSの課題を解消するのが目的だ。 - サプライチェーン攻撃とは何か
サイバー攻撃の深化はとどまるところを知らない。2019年は企業に対する「サプライチェーン攻撃」が話題となっている。サプライチェーン攻撃とは何か、何が狙われるのか、どのような対策が考えられるのだろうか。 - 君のコンパイラや開発環境は侵害されていないか?――開発者が「サプライチェーン攻撃」に加担しないためにすべきこと
セキュアな開発やコードスキャンに取り組むだけでは防ぎ切れないリスクとして「サプライチェーン攻撃」がある。Kaspersky Labは、2019年4月9〜10日に開催した「Security Analyst Summit 2019」で、その実態を紹介した。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.