Ajankohtainen tilanne: PHP2Shell. Kaksi kriittistä PHP-haavoittuvuutta (CVSS 9.2) sallii haittakoodin suorittamisen ilman kirjautumista. Korjaukset 21.10.2026 alkaen.Mitä nyt on tehtävä →

PHP 8.1 ja vanhemmat: päivitys tuettuun versioon

PHP 8.1:lle ja vanhemmille ei ole enää virallisia päivityksiä. Suunnittelemme ja tuemme päivityksen tuettuun versioon ja suojaamme ajan siihen asti.

Tilanne Lukuaika 3 minPalvelut

Lyhyesti: Joka käyttää yhä PHP 8.1:tä tai vanhempaa, ei saa PHP-projektilta enää virallisia tietoturvapäivityksiä, ei myöskään PHP2Shelliin. PHP 8.1 -päivitys tuettuun versioon ei siksi ole lisäominaisuus vaan varsinainen ratkaisu. Tarkistamme sovelluksenne, testaamme kopiolla, siirrämme hallitusti ja suojaamme ajan siihen asti.

Miksi PHP 8.1 ja vanhemmat ovat nyt akuutti riski

PHP2Shell-haavoittuvuudet CVE-2026-109618 ja CVE-2026-109619 sallivat koodin suorittamisen ilman kirjautumista. Ne on korjattu versioissa PHP 8.5.12, 8.4.27, 8.3.36 ja 8.2.35. PHP 8.1:lle ja vanhemmille ei ole enää virallisia päivityksiä, vain vähäisiä lähdekoodin backporteja versioille 7.4, 8.0 ja 8.1. Ammattilehdistön mukaan haavoittuvia ovat lähes kaikki versiot aina PHP 5.4:ään asti.

Jotkin jakelut ja hosting-yritykset asentavat omia backporteja. Kuuluuko järjestelmänne niihin, toimittajan on vahvistettava juuri teidän pakettitilallenne. Ilman tätä vahvistusta kannattaa lähteä siitä, että palvelin on auki. Mitä se tarkemmin tarkoittaa, kuvataan sivulla PHP 8.1 ja vanhemmat: mitä nyt pätee.

PHP 8.1 -päivitys: mikä tavoiteversio?

Tavoitteena tulisi olla versio, jota PHP-projekti yhä tukee ja jonka sovelluksenne sallii. Tuen ajantasaisen tilan julkaisee php.net tuettujen versioiden sivulla. PHP 8.2 päättyy 31.12.2026; siirtymä 8.2:een olisi siis vain välivaihe, jota seuraisi pian uusi hanke.

Mitä PHP-versiota CMS tai verkkokauppajärjestelmänne tukee, tarkistamme valmistajan järjestelmävaatimuksista, esimerkiksi wordpress.org-, shopware.com- tai typo3.org-sivustolta, emme muistinvaraisesti. Usein ensin on päivitettävä itse CMS. Vanhat verkkokaupat ovat tyypillinen tapaus, katso Shopware 5: vanhat verkkokaupat vanhalla PHP-versiolla.

Miten PHP SOS auttaa konkreettisesti?

  1. Kartoitus ja suojaus: Kokoamme kaikki sovellukset, niiden PHP-version, CMS-tilan, laajennukset ja oman koodin. Samanaikaisesti otamme käyttöön php.netin mukaiset väliaikaiset toimenpiteet, jotta riski pienenee siirtymään asti; yksityiskohdat sivulla WAF ja virtuaalinen korjaus.
  2. Yhteensopivuuden tarkistus: Vertaamme valmistajien järjestelmävaatimuksia, tarkistamme riippuvuudet Composerilla ja etsimme omasta koodista vanhentuneita funktioita. Miltä se näyttää riippuvuuksien osalta, kuvataan sivulla Composer-riippuvuuksien tarkistus haavoittuvuuksien varalta.
  3. Testi kopiolla: Sovellus toimii ensin testiympäristössä uudella PHP-versiolla. Korjaamme virheet siellä tai dokumentoimme ne toimistollenne.
  4. Käyttöönotto paluutiellä: Tuotantoon siirto tehdään sovitussa huoltoikkunassa ajantasaisen varmuuskopion ja määritellyn paluutien kanssa.
  5. Jälkitarkistus: Tarkistamme virhelokit ja keskeiset toiminnot käyttöönoton jälkeen ja poistamme vanhan PHP-version, kun sitä ei enää tarvita.

Vaaraton katsaus siihen, mitkä verkkosivustot käyttävät mitäkin PHP-versiota, onnistuu monella järjestelmällä käynnissä olevien FPM-poolien kautta:

# näytä käynnissä olevat PHP-FPM-masterit ja poolit
ps -eo pid,cmd | grep -E "php-fpm: (master|pool)" | grep -v grep
# asennetut PHP-versiot (Debian/Ubuntu)
ls /etc/php/
Tärkeää

Uuteen PHP-versioon päivittäminen ei poista haittaohjelmaa, joka on lisätty ennen sitä. Jos palvelin on ollut 17.10.2026 alkaen suojaamattomana verkossa, jälkien tarkistus kuuluu asiaan.

Tyypillisiä kompastuskiviä päivityksessä

Useimmat PHP-version vaihdon ongelmat ovat ennakoitavissa, kun tietää, mistä etsiä:

  • Vanhentuneet laajennukset: Lisäosat tai moduulit, joita ei enää ylläpidetä, eivät usein toimi uudemmilla PHP-versioilla. Ne vaativat korvaajan tai mukautuksen.
  • Oma koodi: Funktiot, jotka PHP on sittemmin merkinnyt vanhentuneiksi tai poistanut, johtavat varoituksiin tai keskeytyksiin. Tiukemmat tyyppitarkistukset paljastavat vanhoja ohjelmointivirheitä.
  • Riippuvuudet: Composerilla liitetyt kirjastot vaativat joskus itse uusia versioita ja aiheuttavat lisämuutoksia.
  • Palvelimen PHP-laajennukset: Kaikki vanhaan versioon asennetut laajennukset eivät ole uudessa versiossa automaattisesti mukana.
  • Cron-tehtävät ja komentorivi: Verkkosivusto toimii jo uudella versiolla, mutta ajastetut tehtävät kutsuvat vielä vanhaa PHP-versiota.

Joka tarkistaa nämä kohdat etukäteen, lyhentää käyttöönottoa ja välttää yllätyksiä tuotannossa.

Mitä saatte ja mitä tarvitsemme

Saatte yleiskatsauksen kaikista sovelluksista lähtö- ja tavoiteversioineen, siirtymäsuunnitelman järjestyksineen ja riskeineen, testipöytäkirjan, käyttöönoton dokumentaation sekä luettelon kohdista, jotka toimistonne tai kehittäjänne vielä hoitaa.

Tarvitsemme teiltä:

  • palvelin- tai paneelipääsyn ja pääsyn CMS-ylläpitoon
  • pääsyn lähdekoodiin ja repositorioon omissa kehitystöissä
  • yhteyden toimistoon tai kehittäjään, jotka tuntevat sovelluksen
  • testiympäristön tai luvan luoda sellainen
  • huoltoikkunat ja yhteyshenkilön hyväksyntää varten

Mitä emme lupaa

Emme lupaa, että jokainen vanha sovellus toimii uudella PHP-versiolla ilman muutoksia. Järjestelmissä, joita ei enää kehitetä, voi olla tarpeen suurempi uudistus tai vaihto; kerromme sen avoimesti heti, kun se on näkyvissä. Yhteensopivuutta koskevat lausunnot perustamme valmistajien tietoihin. Ja väliaikaiset toimenpiteet eivät korvaa siirtymää vaan kuromaan umpeen vain ajan. Vanhentuneiden versioiden pitkän aikavälin riskit kuvataan sivulla PHP End of Life: vanhentuneiden versioiden riskit.

Usein kysytyt kysymykset

Koskeeko PHP2Shell PHP 8.1:tä?

Ammattilehdistön mukaan haavoittuvia ovat lähes kaikki versiot aina PHP 5.4:ään asti. PHP 8.1:lle ja vanhemmille PHP-projekti ei enää julkaise virallisia päivityksiä, vain vähäisiä lähdekoodin backporteja versioille 7.4, 8.0 ja 8.1. Jotkin jakelut asentavat omia backporteja, ja sen kunkin toimittajan on vahvistettava.

Mihin PHP-versioon minun pitäisi päivittää?

Versioon, jota PHP-projekti yhä aktiivisesti tukee ja jonka sovelluksenne valmistajan järjestelmävaatimusten mukaan sallii. PHP 8.2:n tuki päättyy 31.12.2026, joten se on tavoitteena vain ehdollisesti järkevä.

Enkö voi vain vaihtaa PHP-versiota hosting-paneelissa?

Teknisesti se onnistuu usein yhdellä napsautuksella. Toimiiko sovellus sen jälkeen, riippuu CMS-versiosta, laajennuksista ja omasta koodista. Ilman testiä riskeeraatte katkoksia tai virheellisiä toimintoja, esimerkiksi verkkokaupan kassalla.

Entä jos CMS:ni ei tue uutta PHP-versiota?

Silloin CMS on päivitettävä ensin, mahdollisesti uuteen pääversioon. Järjestelmissä, joita ei kehitetä enää, vaihto voi olla tarpeen. Siihen asti suojaamme palvelimen väliaikaisilla toimenpiteillä.

Lähteet

Pikayhteys

Jokainen tunti on tärkeä. Kirjoittakaa meille nyt.

Kuvatkaa lyhyesti järjestelmä, PHP-versio ja havainnot. Otamme yhteyttä, selvitämme tilanteen ja työskentelemme etänä, kunnes tapaus on käsitelty loppuun ja dokumentoitu.

Pikaapu