出典:Cigdem Simsek(Alamy Stock Photoより)
人工知能(AI)はバイナリコード解析を向上させ、結果としてソフトウェアサプライチェーンのセキュリティを強化するのに役立ちます。
サプライチェーンリスクが高まる中、効果的なバイナリコード解析は極めて重要です。過去2年間で導入されたベンダーや政府主導の取り組み、たとえばCybersecurity and Infrastructure Security Agency(CISA)の「Secure by Design」誓約などは、ソフトウェアサプライチェーンのセキュリティ脅威がいかに広がっているかを強調しています。これは、デジタルで相互接続された組織が増えた結果です。しかし、チェーンのすべてのリンクを考慮するのは難しく、セキュリティを優先するところもあれば、危険な欠陥を抱えるところもあります。
課題が山積
バイナリコード解析は、ソースコードへのアクセスが制限されている、またはまったくない場合に重要です。これは、サードパーティ製品、レガシーアプリケーション、組み込みファームウェアで一般的です。脅威やオープンソースコンポーネント、侵害につながる脆弱性をテストするためのツールは、ベンダーだけでなく顧客にも利用可能です。一部のツールは、ベンダーの関与やリバースエンジニアリングなしで、企業がバイナリコードを解析するのに役立ちます。そして今、予想通り、解析ツールにはAIが組み込まれつつあります。
バイナリ解析は、すべての1と0を調べる作業ですが、この手法にも課題があります。アプリケーションの構築方法が多様なため、偽陰性や偽陽性が発生する可能性があると、Black Duckのシニアセキュリティソリューションマネージャー、マイク・マグワイア氏は述べています。不正確な解析は、無関係なリスクが浮上したり、実際のリスクが見逃されたりすることを意味すると、マグワイア氏は警告します。
ツールのデータベースが弱い場合、ソフトウェア部品表(SBOM)に重大な欠落がある場合もあり、課題はさらに大きくなります。SBOMは、ソフトウェアアプリケーション内のオープンソースおよびサードパーティコンポーネントの可視性を企業にもたらします。
「すべてのバイナリ解析ツールに共通するもう一つの課題は、データベースがどれほど成熟していても、検出されたコンポーネントの正確なバージョンを特定することです。これは、特定のバージョンに影響する脆弱性を特定するために不可欠です」とマグワイア氏は言います。「簡単に言えば、バイナリ解析はサプライチェーンの可視性を確立するための強力なツールですが、結果を確認するために手作業が必要な場合もあり、可能な限りサードパーティのSBOMと組み合わせるべきです。」
AIの登場
RevEng.aiは、AIモデルを使ってバイナリを直接解析し、組織が隠れたバックドアマルウェア、ゼロデイ脆弱性、サードパーティソフトウェア内に潜むサプライチェーン脅威を検出できるよう支援しているスタートアップの一つです。現在、組織は自分たちの環境で動作しているソフトウェアが安全であると信じるしかありません。しかし、それがほぼ防ぐことができない多くの大規模な攻撃を引き起こしてきたと、RevEng.aiのCEO、ジェームズ・パトリック=エバンズ氏は述べています。
新しいAI搭載のバイナリ解析プラットフォームは、組織がサードパーティを信頼するのではなく、自らのソフトウェアサプライチェーンを検証できるようにすることを目指していると、パトリック=エバンズ氏は付け加えます。このプラットフォームは「BinNet」と呼ばれるAIを使い、ソースコードの有無にかかわらず、組織のソフトウェアサプライチェーンのどこかで発生した悪意ある改変を検出します。
「現在、バイナリレベルでソフトウェアを解析するのは非常に困難です」とパトリック=エバンズ氏は説明します。「ソフトウェアが作成された後に、何が含まれているのかを知るのはほとんど不可能です。」
AIは解析の課題を解決できるか?
AIは、バイナリ解析によって得られる結果の精度と忠実度の両方を向上させることができると、マグワイア氏は述べています。この技術はパターン認識を強化し、曖昧な一致を区別し、コードの多様なバリエーションから学習することで、バイナリ解析に関連する多くの課題に対処できる可能性があります。
「例えば、AIは何百万ものバイナリからパターンを学習できるため、コンパイラの挙動の変化やコードの難読化、その他の変数の影響を受けにくくなります」とマグワイア氏は言います。「また、異なるプロジェクト間でコードの類似性を調べて、正確なバージョン情報がなくても推定できる可能性があります。AIが“通常の”オープンソースライブラリの特徴を学習し、悪意のあるコードやパッケージを示す異常を検出できるのではないかという議論もあります。」