公開された LM Studio サーバーの隠れたリスク
英語からの翻訳です。原文は English.
問題
LM Studio は画面付きのアプリで、ローカルモデルを簡単に動かせます。さらに ローカルサーバー を備えていて、ポート 1234 で OpenAI 互換の API を出します。
このサーバーがあれば他のアプリから自分のモデルを使えますし、ローカルネットワークで共有もできます。多くの開発ツールと同じで、既定値は安全性より手軽さを選びます。サーバーをオンにして、ファイアウォールもなしに “Serve on Local Network” を有効にすると、インターネットへの扉を開けたことになります。
何が起きるか
LM Studio のサーバーは既定では認証を求めません。マシンがインターネットに直結している、あるいはルーターがポート 1234 を転送していると、攻撃者にこれができます。
- モデルを使われる。 他の誰かがあなたの GPU でテキストやコードを生成します。
- 料金が発生する。 レンタルマシンでの継続的な推論は、頼んでいない作業の請求書です。
- 会話の中身が読まれる。 セッションが前の会話を引き継いでいれば、そこにあった内容が読める可能性があります。
どうやって見つけたか
手軽さを優先した設計が、他のツールで何度も見てきたのと同じ事故を起こしているのか知りたくなりました。LM Studio は画面のスイッチひとつでサーバーが動きます。
そこで FOFA で探しました。FOFA はサイバースペースの検索エンジンです。
ポート 1234 が開いていて、LM Studio のサーバーの応答に特有の文字列を含むマシンを探しました。クエリは port="1234" && body="LM Studio" です。
3,000 台以上が公開されていました。
空のサーバーではありません。プロンプトに応答する、動いている API です。
LM Studio を守る方法
サーバー機能を使うなら、安全を保つ手順は 3 つです。
1. localhost にだけ束縛する
他の端末から届く必要がないなら、サーバーを 0.0.0.0 ではなく 127.0.0.1 に束縛します。スイッチは画面のサーバー設定にあります。
2. ファイアウォールを使う
どうしても “Serve on Local Network” が必要なら、OS のファイアウォールかルーターで外からのポート 1234 を止め、使うローカルアドレスだけ許可します。
3. 使わないときは止める
終わったら切りましょう。作業するときに立ち上げ、終わったら閉じます。
まとめ
LM Studio はデスクトップにモデルサーバーを置きます。クラウドのマシンと同じネットワーク責任が付いてくるということです。GPU とインターネットの間にあるのはチェックボックスひとつだけです。サーバーのスイッチを入れっぱなしにする前に、何を待ち受けているのか確認してください。