Grunnleggende konsepter
提案されたDONAPIは、静的および動的分析技術を組み合わせて悪意のあるNPMパッケージを検出し、自動的にカテゴリ分類することで開発者を支援する。
Sammendrag
この論文では、npmのセキュリティリスクに焦点を当て、3.4百万以上のパッケージからなるローカルパッケージキャッシュを使用して、悪意のあるnpmパッケージを検出する手法が提案されています。以下は内容の詳細です。
Abstract:
- npmは2百万以上のサードパーティオープンソースパッケージをホストしており、コード構築プロセスを大幅に簡素化している。
- しかし、このオープン性は多くのパッケージ毒物事件につながっている。
- DONAPIは静的および動的分析技術を組み合わせた自動悪意のあるnpmパッケージ検出器であり、325個の悪意のあるサンプルと2つの異常なAPI呼び出しと246個のAPI呼び出しシーケンスを特定した。
Introduction:
- JavaScriptが人気急上昇しており、多くの開発者がサードパーティオープンソースライブラリを使用している。
- npmはJavaScriptランタイムNode.js用のデフォルトパッケージマネージャであり、1.3百万以上のパッケージと月間1000億回以上ダウンロードされている。
Methods:
- コード依存関係再構築器はAST技術を使用して実行コードを単一ファイルにマージする。
- 悪意シェルコマンドディテクターはYARA規則を使用してURL情報から悪意性判断。
- 隠蔽コードディテクターは25種類の特徴量ベースでランダムフォレスト(RF)モデルを採用。
Results:
- DONAPI全体では98.88%の精度と91.63%の再現率が達成された。
- 階層分類フレームワークでは各カテゴリごとに再現率が高かったが、「Suspicious command execution」カテゴリで68.75%だった。
Statistikk
ローカルパッケージキャッシュに3.4百万以上のパッケージが含まれている。
325個の新しい悪意サンプルと2つの異常なAPI呼び出しと246個のAPI呼び出しシーケンスが特定された。
Sitater
"npm remains the most widely recognized and used package registry in the JavaScript community."
"In this paper, we propose DONAPI, an automatic malicious npm packages detector that combines static and dynamic analysis."