iconLogo
Published:2025/12/16 4:40:36

LEXO爆誕!LLMでサプライチェーンを最強防衛🛡️✨

超要約: LLMで悪意あるコードをバイバイ👋!安全なソフトを作るシステム、LEXO!

✨ギャル的キラキラポイント✨ ● 悪者コード(わるものこーど)を直接見つけないで、安全なコードを生成するって斬新(ざんしん)じゃない? ● LLM(大規模言語モデル)のおかげで、いろんな言語(げんご)のソフトに対応できるのがスゴくない? ● コード生成の品質(ひんしつ)管理もバッチリで、安心して使えるって最高~!

詳細解説 ● 背景 ソフトウェアのサプライチェーン攻撃、怖いよね😭 オープンソースとか使ってると、悪意のあるコードが紛れ込んで、大変なことになる可能性が…!従来の対策じゃ、見つけにくいステルス攻撃とかは、なかなか防げなかったの。

● 方法 LEXOは、コンポーネントの「振る舞い」に着目! 入力と出力のデータから、安全なコードをLLMで生成するんだって✨ 悪意のあるコードを直接見つけるんじゃなくて、安全なコードを作るから、すごい!

続きは「らくらく論文」アプリで

Lexo: Eliminating Stealthy Supply-Chain Attacks via LLM-Assisted Program Regeneration

Evangelos Lamprou / Julian Dai / Grigoris Ntousakis / Martin C. Rinard / Nikos Vasilakis

Software supply-chain attacks are an important and ongoing concern in the open source software ecosystem. These attacks maintain the standard functionality that a component implements, but additionally hide malicious functionality activated only when the component reaches its target environment. Lexo addresses such stealthy attacks by automatically learning and regenerating vulnerability-free versions of potentially malicious components. Lexo first generates a set of input-output pairs to model a component's full observable behavior, which it then uses to synthesize a new version of the original component. The new component implements the original functionality but avoids stealthy malicious behavior. Throughout this regeneration process, Lexo consults several distinct instances of Large Language Models (LLMs), uses correctness and coverage metrics to shepherd these instances, and guardrails their results. An evaluation on 100+ real-world packages, including high-profile stealthy supply-chain attacks, indicates that Lexo scales across multiple domains, regenerates code efficiently (<30m on average), maintains compatibility, and succeeds in eliminating malicious code in several real-world supply-chain-attacks, even in cases when a state-of-the-art LLM fails to eliminate malicious code when given the source code of the component and prompted to do so.

cs / cs.CR