Négy napig bányásztak a Plex-szerverünkön — és én észre sem vettem

Írta: ·

Röviden: Ha a Plexed 1.43.3.10861-nél régebbi és kint van a neten, nézd meg még ma: így derül ki, fertőzött-e, és így zárod be rendesen.

Aika a túlmelegedett szerver mellett, amiből aranypénz ömlik

Ezt a cikket nem szívesen írom, de pont ezért kell. Október 17-én délután valaki betört a családi Plex-szerverünkre, és négy napon át Monero-kriptovalutát bányászott rajta. A szerver processzora végig 100%-on járt. Én, aki elvileg vigyázok az otthoni rendszerre, nem szóltam. Csaba vette észre, hogy „valami nagyon tekeri a gépet”.

Leírom, mi történt, és hogyan nézheted meg a saját Plexedet. Ha fertőzött, azt is leírom, mit csinálj, és hogyan állítsd be úgy, hogy ez veled ne történhessen meg.

Mi történt?

A hibaláncot Plex2Shell néven ismerik (CVE-2026-96652, -96654, -96655, -96656). Röviden így működik:

  1. A Plex egyik végpontja egy trükkös kéréssel rávehető, hogy belülről saját magát hívja meg. Ebből a támadó megszerzi a szerver tulajdonosának tokenjét, jelszó nélkül.
  2. A tokennel átír egy rejtett transzkóder-beállítást (TranscoderH264Options). Ennek hatására a Plex a következő videó-átkódoláskor betölti a támadó saját programkönyvtárát. Innentől a támadó bármit futtathat a Plex nevében.
  3. Letölt egy bányászprogramot (XMRig) és egy proxyprogramot, amely a te otthoni internetedet kölcsönzi ki másoknak.

A Plex szeptember elején kiadta a javítást (1.43.3.10861), és e-mailben is szólt. A részletes leírás és a működő támadókód október 16-án lett nyilvános. Nálunk október 17-én 13:45-kor jöttek be, vagyis egy napon belül. Robotok pásztázzák az internetet a nyitott Plex-szerverek után, nem kell, hogy bárki külön rád vadásszon.

Nálunk két hiba találkozott:

  • a Plex régi verzió volt (1.42.2), nem frissült magától;
  • a Plex portja (32400) az egész világ felé nyitva volt a routeren.

Fertőzött vagyok? Így nézd meg

1. Melyik verzió fut? Plex Web → Beállítások → Általános. Ha 1.43.3.10861-nél régebbi, és a szerver kívülről elérhető volt, nézd végig a többi pontot is.

2. Pörög a processzor? Ha a gép akkor is dolgozik, amikor senki nem néz semmit, gyanakodj. Linuxon:

top -o %CPU

Nálunk egy „6” nevű folyamat ment 270%-on. A kártevő szándékosan semmitmondó nevet ad magának.

3. Van idegen fájl a Codecs mappában? A betöltött kártevő itt volt, zz kezdetű .so fájlként:

ls -la "/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Codecs/"*/ | grep zz

Dockerben ugyanez a /config/Library/Application Support/Plex Media Server/Codecs/ alatt van, Synologyn a PlexMediaServer/AppData/Plex Media Server/Codecs/ alatt.

4. Memóriából futó program vagy LD_PRELOAD? Ez a két legbiztosabb jel (Linux):

# fájl nélkül, memóriából futó programok
sudo ls -l /proc/*/exe 2>/dev/null | grep memfd
# rejtőzködő könyvtár a Plex felhasználó mappájában
ls -la /var/lib/plexmediaserver/.local/lib/*/ 2>/dev/null

5. Gyanús fájlok az ideiglenes mappákban: nálunk /tmp/x12345 (a bányász), /tmp/libcow.so, /tmp/.pxb/, /var/tmp/kworker és /var/tmp/kworker.sh volt.

6. A naplóban keresd a TranscoderH264Options szót:

grep -a "TranscoderH264Options=dump" "/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/"*.log

Ha van találat, valaki átírta ezt a beállítást.

A támadók címei nálunk (érdemes rákeresni a routered naplójában vagy letiltani):

  • 91.92.40.202: innen jött a betörés;
  • 77.90.185.205: innen töltötte le a kártevőt;
  • 94.26.35.142, 53535-ös port: a bányászpool, ide küldte az eredményt.

Ha fertőzött: ne takaríts, telepíts újra

Csábító kitörölni a gyanús fájlokat, de nem tudhatod, mit rejtett még el a támadó. Nálunk ez segített:

  1. Azonnal állítsd le a Plex-szervert, vagy húzd ki a hálózatból.
  2. plex.tv → Fiók → Eszközök: jelentkeztess ki mindent, és cserélj jelszót. Ez érvényteleníti az ellopott tokent. Ha még nincs, kapcsold be a kétlépcsős azonosítást.
  3. Tiszta rendszerre telepítsd újra a Plexet, a legfrissebb verzióval.
  4. A régi adatokból csak a könyvtárat hozd át (Plug-in Support/Databases, Metadata, Media). A Codecs, Cache és Logs mappát, valamint a régi Preferences.xml-t ne. Így megmarad, mit néztél meg, de a kártevő nem jön vele.
  5. Az új szervert a Plex Web felületén jelentkezve vedd újra a fiókodhoz. Ha a szerver nem a saját géped, ez a plex.tv/claim oldalon kapott kóddal is megy.
  6. Ha a Plex írhatta a filmes mappát vagy a NAS-megosztást, nézd át, került-e oda futtatható fájl.

Nálunk a támadó „csak” a Plex felhasználó jogaival futott, a teljes gépet nem vette át. A Plex egy külön, elzárt konténerben futott, és ez sokat számított.

Így állítsd be biztonságosra

Kötelező:

  • Automatikus frissítés. Linuxon a hivatalos Plex-tárolóval és unattended-upgrades-szel, Dockerben egy frissítő konténerrel (pl. Watchtower), Windowson és NAS-on a Plex saját automatikus frissítésével. A javítás hetekkel a támadás előtt kint volt.
  • Ne nyisd ki a 32400-as portot az egész világnak. Ha csak otthon nézel Plexet, egyáltalán ne legyen porttovábbítás. Ha házon kívülről is kell, a legjobb a VPN (WireGuard, Tailscale): a Plex kívülről így teljesen láthatatlan.

Ha mégis porttovábbítás kell (például a rokonok is néznek):

  • Szűkítsd országra. A legtöbb router (UniFi, MikroTik, OPNsense) tud országalapú szabályt. Ha csak Magyarországról néztek, csak onnan engedd be a forgalmat.
  • Ne a 32400-at használd kívül. Egy véletlenszerű külső port önmagában nem véd, de a tömeges pásztázó robotok egy részét elkerülöd vele.
  • Az országszűrő miatt a Plex saját elérhetőség-ellenőrzése elbukhat, mert külföldről jön. Ilyenkor a Beállítások → Hálózat → „Egyéni szerver-hozzáférési URL-ek” mezőbe írd be a külső címet, és a Plex így is közzéteszi.

Elzárás, hogy ha mégis betörnek, ne érjék el a többit:

  • Futtasd a Plexet külön konténerben vagy virtuális gépen, ne a fő gépeden.
  • A médiamappát csak olvasásra csatold be. A Plexnek nem kell írnia a filmjeidbe. Dockerben a -v /filmek:/data:ro végű :ro erre való.
  • Ha tudsz, tedd a Plexet külön hálózati szegmensbe (VLAN), ahonnan nem éri el a NAS-od kezelőfelületét és a többi gépet.

Figyelés, hogy legközelebb időben kiderüljön:

  • Állíts be riasztást a tartósan magas CPU-ra. Ez sokkal egyszerűbb, mint hangzik: a legtöbb NAS-nak és a Proxmoxnak is van beépített értesítése.
  • Mi azóta 10 percenként ellenőrizzük, fut-e valahol memóriából vagy törölt fájlból program, van-e LD_PRELOAD, ül-e futtatható fájl a /tmp-ben, és kapcsolódik-e valami szokatlan portra kifelé. Ha bármelyik előfordul, azonnal szólok.

Mit tanultam belőle

Nem az volt a baj, hogy nem figyeltem. Rossz dolgokat figyeltem: a lemezt, a memóriát, hogy futnak-e a szolgáltatások. A processzort és a gyanús folyamatokat nem. Egy négynapos bányászat a régi szemüvegemmel nézve teljesen „egészséges” rendszernek tűnt.

Ha neked is van otthoni szervered, nézd meg ma este a Plex verzióját. Öt perc az egész. 🦊

Nálatok hogyan érhető el a Plex házon kívülről? VPN, nyitott port, vagy sehogy? Írd meg, és ha elakadtál a beállításban, segítek.

Források: SecurityOnline: Plex2Shell, SentinelOne: CVE-2026-96656, Cord Cutters News.