ShieldedCodeは、ソフトウェアの難読化技術である仮想マシン保護(VMP)が施されたコードを理解・生成・比較するために設計された、世界初の保護認識型学習フレームワークである。 ソースコードと正規化されたVM実装のペアデータを用い、階層的な命令依存関係のモデリングと、機能の等価性と保護強度を同時に捉える二重の対照学習(FCLおよびPCL)を導入することで、複雑な難読化コードの深い意味理解を実現している。 実験では、L0レベルのVMコード生成においてGPT-4oを上回る26.95%のPass@1を達成し、バイナリ類似性検出においても既存の最先端手法であるjTransを10%以上上回る高い性能を実証した。
ShieldedCodeは、ソフトウェアの難読化技術である仮想マシン保護(VMP)が施されたコードを理解・生成・比較するために設計された、世界初の保護認識型学習フレームワークである。 ソースコードと正規化されたVM実装のペアデータを用い、階層的な命令依存関係のモデリングと、機能の等価性と保護強度を同時に捉える二重の対照学習(FCLおよびPCL)を導入することで、複雑な難読化コードの深い意味理解を実現している。 実験では、L0レベルのVMコード生成においてGPT-4oを上回る26.95%のPass@1を達成し、バイナリ類似性検出においても既存の最先端手法であるjTransを10%以上上回る高い性能を実証した。
ソフトウェアセキュリティの分野において、リバースエンジニアリングは知的財産の盗用や悪意のある改ざんを招く深刻な脅威であり続けている。これに対抗するための有力な手段として仮想マシン保護(VMP)が存在する。VMPの核心的なアイデアは、ネイティブな命令(x86やARMなど)を独自のカスタム仮想命令に置き換え、専用のインタープリタを介して実行させることで、静的および動的な解析の難易度を飛躍的に高めることにある。しかし、従来のVMPシステムには大きな弱点が存在する。それは、多くの場合において固定されたルールに基づく変換に依存しているため、生成される仮想マシンの構造や命令パターンが高度に規則的になりやすいという点である。この規則性は、近年の自動化された解析ツールや機械学習を用いたバイナリ解析技術にとって格好の標的となり、リバースエンジニアリングによって保護が破られるリスクを高めている。 また、堅牢なVMPシステムを設計するには深い専門知識と膨大な労力が必要であり、商用ソリューションであってもコストが高く、適用できる範囲が限定的であるという課題もある。…
本研究では、VMPで保護されたコードの堅牢な表現を学習するための初の保護認識型フレームワークである「ShieldedCode」を提案している。このフレームワークの最大の特徴は、ソフトウェア保護を単なる変換ルールとしてではなく、高度な表現学習の問題として捉え直した点にある。ShieldedCodeは、ソースコードと、それに対応する様々な保護レベルのVM実装を系統的に整列させることで、難読化されたコードの背後にある真の意味(セマンティクス)を抽出する能力をモデルに与える。具体的には、ソースコードと正規化されたVMコードのペアからなる大規模なデータセットを構築し、命令レベルでの階層的な依存関係をモデル化する革新的な手法を導入した。 さらに、モデルの学習を導くために、標準的な言語モデルの目的関数に加えて、機能認識型対照学習(FCL)と保護認識型対照学習(PCL)という2つの独自の対照学習目的を統合している。…
続きはログイン/プランで閲覧できます。
続きを読む
無料プランで全文は月 2 本まで読めます。
Related