Plex Media Serverを1.43.3.10861以降に|悪用中の脆弱性4件と、乗っ取られていないかの確かめ方

Plex Media Serverの脆弱性4件で、乗っ取られていないか確かめることを示す図。今日のうちにバージョンを確かめる。バージョンを確かめて更新する、乗っ取りのしるしを確かめる、外から使わないならリモートアクセスを切るの3つ

Plexは10月19日(日本時間10月20日)、Plex Media Server 1.43.3.10861より古い版にある脆弱性4件について、広く悪用されていると公式フォーラムで発表しました。そうした古い版をインターネットから届く状態で動かしている場合、Plexは「乗っ取られているかもしれないと考えてほしい」としています。

自宅のPCやNASでPlexを動かし、外出先からも見られるようにしている人は、今日のうちにバージョンを確かめ、乗っ取りのしるしがないかを見てください。

目次

対象になる人

  • Plex Media Serverのバージョンが1.43.3.10861より古い
  • そのサーバーにインターネットから届く(リモートアクセスを有効にしている、ルーターで32400番のポートを開けている など)

Plexによると、1.43.3.10861以降は影響を受けません。外から届かないサーバーでも、古い版のままなら更新は必要です。

Plexが公表した内容

Plex Media Server 1.43.3.10861は、8月4日(日本時間8月5日)にすべての利用者向けに公開されています。Plexは9月1日(日本時間9月2日)の公式フォーラムの告知で、セキュリティの問題を直したPlex Media Server 1.43.3とPlex Desktop 1.115.0を出したと知らせ、すべての利用者に更新を勧めていました。10月19日の追記で、1.43.3で直した脆弱性のCVE番号を公表しています。

CVE番号 Plexの説明(要約)
CVE-2026-96652 ログインなしで使えるサーバーサイドリクエストフォージェリ(SSRF)
CVE-2026-96654 ループバック経由で内部のエージェント機能を呼び出せる
CVE-2026-96655 サーバー所有者の管理用トークンが漏れる
CVE-2026-96656 トランスコーダーの設定を通じて、Codecsフォルダーに任意のファイルを書き込める

Plexの説明では、この4件を組み合わせると、ログインしていない外部の攻撃者がPlex Media Serverのプロセスの権限でコードを実行できます。10月16日に攻撃コードが公開され、それ以降、更新していないインターネット向けのサーバーへの攻撃が広く起きています。乗っ取られたサーバーは、暗号資産の採掘(マイニング)や、他人の通信を被害者の回線に通すプロキシソフトの実行に使われていました。

米国のCISAも10月20日(米国時間)、この4件を「実際に悪用されている脆弱性」の一覧(KEV)に加えています。

1. バージョンを確かめて更新する

Plex Webを開き、「設定 → 一般」に表示されるバージョンを見ます。1.43.3.10861以降であれば、この脆弱性の対象ではありません。

Linuxでパッケージから入れている場合は、コマンドでも確かめられます。Debian・Ubuntuでは次のとおりです。

dpkg -s plexmediaserver | grep '^Version'

Fedora・CentOSでは次のとおりです。

rpm -q plexmediaserver

更新方法は環境ごとに違います。Plexの告知では次のように案内しています。

  • Windows・Mac:自動更新を有効にしている場合も、最新版になっているかを確かめます。手動で更新する場合は、Plexのダウンロードページから最新版を入れます。
  • Linux:ダウンロードページから.deb(Debian・Ubuntu)または.rpm(Fedora・CentOS)のパッケージを取得して入れます。下のコマンドの「<version>」の部分は、実際にダウンロードしたファイル名に合わせて置き換えます。
sudo dpkg -i plexmediaserver_<version>_amd64.deb
sudo dnf install plexmediaserver-<version>.x86_64.rpm
  • Docker:Plex公式のpms-dockerのREADMEに従います。
  • NAS:NASのパッケージ管理にはまだ新しい版が来ていないことがあります。その場合は、ダウンロードページからNAS用のパッケージを取得し、各メーカーの手順で手動インストールします。メーカーごとの手順は、QNAP、Synology、TerraMaster、WD、Netgearの各ページにあります。
  • NVIDIA Shield:Google Playストアで保留中の更新を入れます。

2. 乗っ取られていないか確かめる

Plexは、次の3つを乗っ取りのしるしとして挙げています。1.43.3.10861より古い版を外から届く状態で動かしていた場合は、更新したあとにも確かめます。

  • Plex Media Serverが起動した、見覚えのないプロセスがある。特に「myawesomeproxy」「mylovelyminer」「x12345」という名前
  • PlexのCodecsフォルダーに、見覚えのない.soや.dllのファイルがある
  • proxystream.stへの外向きの通信がある。または、何も再生していないのにCPU使用率が高い状態が続いている

プロセスを確かめる

Linuxでは、まず名前で探します。何も表示されなければ、その名前のプロセスは動いていません。

pgrep -a -f 'myawesomeproxy|mylovelyminer|x12345'

Ubuntu・Fedora・CentOSのパッケージで入れた場合、Plexは「plex」というユーザーで動きます(Plexのサポート記事Linux Permissions Guide)。そのユーザーで動いているプロセスを一覧にし、見覚えのないものがないかを見ます。

ps -u plex -o pid,ppid,etime,cmd

Macでは次のコマンドで名前を探せます。

pgrep -l -f 'myawesomeproxy|mylovelyminer|x12345'

Windowsでは、PowerShellで名前を探せます。

Get-Process | Where-Object { $_.ProcessName -match 'myawesomeproxy|mylovelyminer|x12345' }

Plex Media Serverが起動したプロセスの一覧は、次のコマンドで出せます。

$plex = (Get-Process 'Plex Media Server').Id
Get-CimInstance Win32_Process | Where-Object { $plex -contains $_.ParentProcessId } | Select-Object ProcessId, Name, CommandLine

Dockerでは、コンテナー内のプロセスを一覧にします。「plex」の部分は自分のコンテナー名に置き換えます。

docker top plex

Codecsフォルダーを確かめる

Codecsフォルダーは、Plex Media Serverのデータフォルダーの中にあります。データフォルダーの場所はOSやNASによって違うので、Plexのサポート記事Where is the Plex Media Server data directory located?で確かめます。主な場所は次のとおりです。

  • Windows:%LOCALAPPDATA%\Plex Media Server
  • Mac:~/Library/Application Support/Plex Media Server/
  • Debian・Fedora・CentOS・Ubuntu:/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/
  • Docker:コンテナーを作るときに /config に割り当てたフォルダーの中

Linuxでは、Codecsフォルダー内の.soファイルを更新日時の順に並べると、最近増えたファイルに気づきやすくなります。

sudo find "/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Codecs" -type f -name '*.so' -printf '%TY-%Tm-%Td %TH:%TM %p\n' | sort

Macでは次のコマンドで一覧にできます。

ls -lRt ~/Library/Application\ Support/Plex\ Media\ Server/Codecs

WindowsではPowerShellで.dllファイルを更新日時の順に並べます。

Get-ChildItem "$env:LOCALAPPDATA\Plex Media Server\Codecs" -Recurse -Filter *.dll | Sort-Object LastWriteTime | Format-Table LastWriteTime, FullName

CPUの使い方を確かめる

何も再生していない時間に、Plexのプロセスや見覚えのないプロセスがCPUを使い続けていないかを見ます。Windowsはタスクマネージャー、Macはアクティビティモニタで確かめられます。Linuxでは次のコマンドを使えます。

top -u plex

3. しるしが見つかったとき、または乗っ取りを否定できないとき

Plexは次の対応を求めています。

  • 古いPlexのデータフォルダーを使い回さず、クリーンな状態からサーバーを作り直す。最低でも、Codecsフォルダーの中身をすべて削除し、Preferences.xmlに自分で設定していないトランスコーダーの項目がないかを確かめる
  • Plexアカウントの設定から、すべての端末をサインアウトさせ、Plexのパスワードを変更する
  • Plexのサービス用アカウントが触れられたものは、漏れた可能性があるものとして扱う。たとえば、マウントしている共有フォルダーや、同じマシン・仮想マシンに保存している認証情報

4. 外から使わないならリモートアクセスを切る

外出先から見る必要がない場合、Plexは「設定 → リモートアクセス」でリモートアクセスを無効にするよう勧めています。また、必要がない限り、32400番のポートを直接ポートフォワードしないよう求めています。リモートアクセスの設定は、Plexのサポート記事Remote Streaming (Setting Up Remote Access)にあります。

ルーターでポートを開けると外から何が届くようになるかは、ポートフォワードの記事を参照してください。

今日の作業の確認リスト

  • Plex Media Serverが1.43.3.10861以降になっている
  • myawesomeproxy・mylovelyminer・x12345などの見覚えのないプロセスがない
  • Codecsフォルダーに見覚えのない.so・.dllがない
  • 何も再生していないときにCPU使用率が高いままになっていない
  • 外から使わないなら、リモートアクセスを無効にし、32400番を直接開けていない

参考にした公式情報

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

社内エンジニアとして、SREとセキュリティの仕事をしています。サーバーの構築や運用、クラウド環境の設計にも関わってきました。趣味はゲームと漫画・アニメ。

コメント

コメントする

目次