# Craft CMS biztonság a PHP2Shell után: ügynökségi weboldalak védelme

> Craft CMS védelme a PHP2Shell után: PHP ellenőrzése a rendszerjelentésben, .env és Security Key védelme, devMode kikapcsolása, Project Config egyeztetése.

Forrás: https://phpsos.de/hu/plattformen/craft-cms/  
Állapot: 2026. 10. 25.  
Szolgáltató: PHP SOS, PHP-vészhelyzeti segítség és szerverbiztonság. Azonnali segítség WhatsAppon: https://wa.me/491736494914?text=%C3%9Cdv%C3%B6zl%C3%B6m%2C%20PHP%20SOS%21%20Seg%C3%ADts%C3%A9gre%20van%20sz%C3%BCks%C3%A9g%C3%BCnk%20a%20PHP-szerver%C3%BCnkkel.%20C%C3%A9g%3A%20%E2%80%A6%20Weboldal%3A%20%E2%80%A6

**Röviden:** A Craft CMS biztonsága a PHP2Shell után a szerver PHP-jától függ, nem a Crafttól. Éppen a sok Craft-weboldalt kezelő ügynökségek ellenőrizzenek most minden szervert egyenként. A javítás és az újraindítás után a `.env`, a Security Key, a `devMode`, a dokumentumgyökér és a Project Config egyeztetése kerüljön vizsgálat alá.

## Mit jelent a PHP2Shell a Craft-weboldalak számára

A Craft CMS az ügynökségek körében népszerű, mert rugalmas tartalommodelleket és tiszta sablonokat kínál. Ennek megfelelően sok ügynökség több tucat Craft-weboldalt gondoz különböző szervereken és tárhelycsomagokon. A CVE-2026-109618 és a CVE-2026-109619 PHP-rések a PHP-csapat szerint lehetővé teszik kártékony kód távoli futtatását bejelentkezés nélkül, a Craft-verziótól függetlenül.

Az ügynökségeknek a legfontosabb kérdés ezért szervezeti: melyik weboldal hol fut, milyen PHP-val, és ki felel a frissítésért? Az összes telepítés listája a tárhelyszolgáltatóval, a PHP-állapottal és a kapcsolattartóval az első lépés. Hogyan támogatjuk ebben az ügynökségeket, azt a [Biztonsági partner ügynökségeknek](https://phpsos.de/hu/branchen/agenturen-white-label/) írja le.

## Craft CMS biztonság: a PHP-verzió ellenőrzése

A Control Panelben az **Eszközök > Rendszerjelentés** megmutatja a PHP-verziót, az adatbázist és a telepített bővítményeket. Ez az a verzió, amellyel a weboldal a weben fut. A `php craft` Craft-konzol, a queue-feldolgozás és a cron-feladatok ezzel szemben a parancssori PHP-t használják. Mindkettőnek javítottnak kell lennie.

A javított upstream verziók: 8.5.12, 8.4.27, 8.3.36 és 8.2.35. Sok tárhelyszolgáltató backportként juttatja be a javításokat; a szám ilyenkor ugyanaz marad. Hogy mely verziók érintettek, azt a [Mely PHP-verziók érintettek?](https://phpsos.de/hu/php2shell/betroffene-php-versionen/) oldal mutatja. Hogy a Craft-verziója mely PHP-verziókat támogatja, azt a rendszerkövetelmények szerint a craftcms.com dokumentációjában ellenőrizheti.

A Craft a háttérfeladatokat egy várakozási sorban dolgozza fel. Ha ez egy folyamatkezelő alatt tartósan futó folyamatként működik, azt is újra kell indítani a PHP-frissítés után.

## Könyvtárak és konfiguráció a Craftban

| Hely | Tartalom | Ellenőrzési pont |
|---|---|---|
| `.env` | adatbázis-hozzáférés, `CRAFT_SECURITY_KEY`, további kulcsok | gyanú esetén az értékeket megújítani |
| `config/general.php` | `devMode`, `allowAdminChanges`, a Control Panel útvonala | beszúrt PHP-kód |
| `config/project/` | Project Config YAML-ként | egyeztetés a Gittel |
| `web/` | dokumentumgyökér az `index.php`-vel, a `cpresources/`-szal, gyakran feltöltésekkel | további PHP-fájlok |
| `storage/` | naplók, futásidejű fájlok, gyakran adatbázis-mentések | a weben át nem elérhető |
| `templates/` | Twig-sablonok | idegen JavaScript |
| `modules/`, `vendor/` | saját modulok és bővítmények | módosított fájlok, `composer audit` |

Gyakran elnézett pont a `storage/backups/`. A Craft ide teszi az adatbázis-mentéseket, amelyek teljes ügyfél- és űrlapadatokat tartalmazhatnak. Ez a mappa soha nem lehet a dokumentumgyökér alatt.

Veszélytelen ellenőrzések a parancssorban:

```bash
# A Project Config és az adatbázis közötti különbségek megjelenítése
php craft project-config/diff
# PHP-fájlok a dokumentumgyökérben az index.php kivételével
find web -type f -name "*.php" ! -name "index.php"
composer audit
```

> **Fontos:**
> Éles üzemben a `devMode` értékének `false`-nak kell lennie. Bekapcsolt `devMode` mellett a Craft részletes hibaüzeneteket mutat útvonalakkal és kódrészletekkel, amelyek megkönnyítik a támadók munkáját.

## Control Panel, felhasználók és bővítmények

A Control Panel alapértelmezetten az `/admin` alatt található. Ellenőrizze, mely felhasználóknak vannak adminisztrátori jogaik, és távolítsa el a volt munkatársak és szabadúszók hozzáféréseit. A Craft támogatja a kétfaktoros bejelentkezést; használja minden emelt jogú fiókhoz.

Éles üzemben állítsa az `allowAdminChanges` értékét `false`-ra. Ekkor a mezők, szekciók és bővítménybeállítások csak a verziókezelt Project Configon át módosíthatók, és minden eltérés feltűnik a Gittel való egyeztetéskor. A Plugin Store bővítményei saját PHP-kódot hoznak; ellenőrizze, hogy mindegyiket gondozzák-e még, és illeszkednek-e a célzott PHP-verzióhoz.

```php
// config/general.php, részlet az éles környezethez
'devMode' => false,
'allowAdminChanges' => false,
```

## Mit tud egy Craft-frissítés, és mit nem

A Craft vagy egy bővítmény frissítése lezárja az ebben a kódban lévő hibákat, és lehetővé tehet újabb PHP-verziókat. A PHP-t nem javítja, sem a PHP-FPM-et, sem a várakozási sort nem indítja újra, az elszivárgott Security Key-t nem újítja meg, és a `web/` vagy a `storage/` mappából idegen fájlokat nem távolít el.

A sok Craft-telepítéssel rendelkező ügynökségeknél a javítás után főként az ismételhetőség számít. Weboldalanként jegyezze fel, melyik PHP-verzió fut a weben és a parancssorban, mikor lett megerősítve az újraindítás, és feltűnőek voltak-e az ellenőrzések. Ez az áttekintés segít az ügyfelek kérdéseinél és a későbbi közleményeknél. Gondoljon a nyilvánosan elérhető staging- és fejlesztői környezetekre is. Gyakran `devMode`-dal, régebbi állapotokkal és valódi ügyféladatokkal futnak, és a frissítéseknél szívesen megfeledkeznek róluk. Ha kétség van, hogy érintett-e egy ügyfél-weboldal, tájékoztassa az ügyfelet tárgyilagosan, ahelyett hogy várna.

## Hogyan segít konkrétan a PHP SOS?

- Önnel együtt felmérjük az összes Craft-telepítést a tárhelyszolgáltatóval, a PHP-állapottal és az illetékességgel.
- Szerverenként megerősíttetjük a javítást és az újraindítást, és mentjük a naplókat 2026. 10. 20-tól.
- Ellenőrizzük a dokumentumgyökeret, a `storage` mappát, a konfigurációt, a felhasználókat és a Project Config egyeztetését.
- Kívánságra átvesszük az ügyfél-weboldalak folyamatos biztonsági gondozását a [biztonsági karbantartási szerződés](https://phpsos.de/hu/leistungen/security-wartungsvertrag/) keretében, az Ön neve alatt is.


## Gyakori kérdések

**Érinti a Craft CMS-t a PHP2Shell?**  
A Craft CMS-nek nincs új rése. PHP-n fut, és a PHP2Shell a PHP-ben van. Minden javítatlan szerveren futó Craft-telepítés ezért potenciálisan támadható, a Craft-verziótól függetlenül.

**Hol mutatja a Craft a PHP-verziót?**  
A Control Panelben az Eszközök > Rendszerjelentés alatt. Ott van a PHP-verzió, az adatbázis és a telepített bővítmények. A bejuttatott backport a számból nem ismerhető fel; ezt a tárhelyszolgáltatója erősíti meg.

**Mi a Security Key a Craftban, és miért kell megújítani?**  
A .env fájlban lévő Security Key adatok aláírására és titkosítására szolgál. Aki ismeri, bizonyos körülmények között munkameneteket vagy űrlapadatokat hamisíthat. Gyanú esetén az ügynökségével egyeztetve újítsa meg.

**Mit hoz az allowAdminChanges false értéke?**  
Ezzel a mezők, szekciók és bővítménybeállítások éles üzemben már nem módosíthatók a Control Panelen át. A változtatások csak a verziókezelt Project Configon keresztül érkeznek, ami a manipulációt nehezebbé és láthatóbbá teszi.

## Források

- [php.net: biztonsági közlemények](https://www.php.net/)
- [Craft CMS](https://craftcms.com/)
- [OWASP Cheat Sheets](https://cheatsheetseries.owasp.org/)
- [Támogatott PHP-verziók](https://www.php.net/supported-versions.php)
