Key points are not available for this paper at this time.
セキュリティ脆弱性を検出するためにコードプロパティグラフ(CPG)に依存する静的分析ツールは効果的であることが証明されていますが、グラフにどれだけの情報を含めるかを決定することは依然として課題です。情報を少なく含めると、よりスケーラブルな分析が可能になりますが、脆弱性パターンの特定の効果が低下し、分類エラーが発生する可能性があります。一方で、グラフに多くの情報を含めることで、より効果的な分析が可能になりますが、スケーラビリティに影響を与えるかもしれません。例えば、Node.jsの脆弱性を検出するための最先端のCPGベースのツールであるODGenでは、最近スケーラビリティの問題が指摘されています。本論文では、JavaScriptの脆弱性検出のためのCPG設計空間の新たなポイントを検討します。オブジェクトとそのプロパティの状態変化をプログラム実行中にキャプチャする新しいグラフベースのデータ構造であるマルチバージョン依存関係グラフ(MDG)を紹介します。ODGenで使用されるグラフと比較して、MDGは脆弱性検出に必要な重要な情報を失うことなく、はるかにシンプルです。npmパッケージを分析し、汚染スタイルおよびプロトタイプ汚染の脆弱性を検出することに特化した新しいMDGベースの静的脆弱性スキャナーであるGraph.jsを実装しました。評価の結果、Graph.jsは誤検出率と分析時間の両方を大幅に削減することでODGenを上回ることが示されました。さらに、npmパッケージにおいて49の未発見の脆弱性を特定しました。
Ferreira et al. (Thu,) はこの問題を研究しました。