注目★★★★★GitHub Advisory
LMDeploy 0.10.2未満、RPC経由のpickleでRCE
30秒で把握
- 1LMDeploy 0.9.1以降で未検証pickleによりRPC経由RCE
- 2攻撃者は到達可能なRPCポートへ悪意あるpayloadを送信
- 30.10.2でbind先をlocalhostへ変更し外部攻撃面を除去
要約
LMDeploy 0.9.1以降のAsyncRPCServerに、未検証のpickle.loads()でZMQ RPCメッセージを復元するリモートコード実行脆弱性がある。攻撃者は到達可能なRPCポートを探し、悪意のあるpickleペイロードを送って任意のコマンドを実行できる。0.10.2でRPCサーバーのbind先をlocalhostへ変更し、ネットワーク越しの攻撃面を除去した。ただしRPCプロトコルは内部でpickleを使うため、信頼できないローカルプロセスからもループバック endpoint を保護する必要がある。
あなたへの影響
LMDeployを利用する日本の開発・運用チームは、0.10.2未満の環境を更新し、RPCポートへの外部到達性と信頼できないローカルプロセスからの接続を直ちに確認してください。
推奨:pickleは任意コード実行につながり得るデシリアライズ方式です。