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ä →

Joomlan haavoittuvuus PHP2Shell: Joomla-sivustojen suojaus

PHP2Shell koskee Joomlaa palvelimen PHP:n kautta. Korjauksen ja uudelleenkäynnistyksen jälkeen tarkistakaa configuration.php, mallipohjien ylikirjoitukset, laajennukset ja Super User -tilit.

Tilanne Lukuaika 3 minAlustat

Lyhyesti: Joomlan haavoittuvuus, josta nyt puhutaan, on nimeltään PHP2Shell ja se on palvelimen PHP:ssä, ei Joomlassa. Joomla-päivitys ei sulje sitä. PHP-korjauksen ja uudelleenkäynnistyksen jälkeen tarkistakaa configuration.php, mallipohjien ylikirjoitukset, laajennukset ja Super User -tilien luettelo.

Mitä PHP2Shell tarkoittaa Joomlalle

Joomla on PHP-pohjainen sisällönhallintajärjestelmä ja perii jokaisen alla olevan PHP:n heikkouden. PHP-tiimin mukaan haavoittuvuudet CVE-2026-109618 ja CVE-2026-109619 sallivat haittakoodin suorittamisen ilman kirjautumista. Ne koskevat tavallisia ajotapoja: PHP-FPM, Apache mod_php:llä, php-cgi, FrankenPHP ja LiteSpeed.

Erityisesti yhdistysten, käsityöyritysten tai järjestöjen pienemmät Joomla-sivustot toimivat usein jaetussa hostingissa, eikä niitä juuri ylläpidetä. Siellä PHP-päivitys on hosting-palveluntarjoajan vastuulla. Teidän tehtävänne on kysyä tila ja tarkistaa sivusto jälkien varalta. Mitkä versiot ovat haavoittuvia, näyttää sivu Mitkä PHP-versiot ovat haavoittuvia?.

Joomlan haavoittuvuus: PHP-version tarkistus

Ylläpitäjän alueella Järjestelmä > Järjestelmätiedot näyttää PHP-version ja tärkeimmät PHP-asetukset. Se on versio, jolla Joomla todella toimii verkossa. Korjatut upstream-versiot ovat 8.5.12, 8.4.27, 8.3.36 ja 8.2.35. Jos Joomla näyttää vanhemman numeron, backport voi silti olla asennettu; sen vahvistaa hosting-palveluntarjoajanne.

Jaetussa hostingissa PHP-version voi usein vaihtaa palveluntarjoajan asiakasvalikossa verkkotunnuskohtaisesti. Se vaihtaa kuitenkin vain palveluntarjoajan tarjoamien versioiden välillä; ovatko ne korjattuja, ratkaisee palveluntarjoaja. Siirtyminen uudempaan pääversioon voi silti olla järkevää, jos Joomla-versionne ja kaikki laajennukset tukevat sitä. Testatkaa se ensin, sillä vanhemmat laajennukset kaatuvat uusilla PHP-versioilla usein virheilmoituksiin.

Joomla ilmoittaa itse PHP:n vähimmäisvaatimukset pääversioittain. Mitä PHP-versioita teidän Joomla-versionne tukee, tarkistatte järjestelmävaatimuksista osoitteessa joomla.org. Hyvin vanhoissa Joomla-versioissa PHP-vaihto voi edellyttää ensin Joomla-päivitystä.

Haittakoodin tyypilliset piilopaikat Joomlassa

Paikka Sisältö Mihin kiinnittää huomiota
configuration.php Tietokantatunnukset, $secret, lokien ja temp-kansion polut Muutospäivä, sisään ujutettu koodi
images/, media/ Kuvat ja media PHP-tiedostot ovat epäilyttäviä
tmp/ väliaikaistiedostot, myös asennuksista vieraiden pakettien jäänteet
templates/<nimi>/html/ Mallipohjien ylikirjoitukset PHP-koodilla tuntemattomat tai muutetut ylikirjoitukset
plugins/system/ Järjestelmäliitännäiset, jotka latautuvat joka kutsulla tuntemattomat liitännäiset
administrator/logs/ Lokit talteen ennen muutoksia
.htaccess Uudelleenohjaukset, rewrite-säännöt uudelleenohjaukset vain hakukoneille

Järjestelmäliitännäiset ovat erityisen suosittuja, koska ne suoritetaan jokaisella sivunlatauksella. Tuntemattoman liitännäisen tässä kansiossa pitäisi aina pystyä selittämään.

Vaarattomat tarkistukset komentorivillä (Joomla 4 ja uudemmat tuovat mukanaan oman konsolin):

# PHP-tiedostot media- ja temp-kansioissa
find images media tmp -type f -name "*.php"
# Listataan käyttäjät ja laajennukset
php cli/joomla.php user:list
php cli/joomla.php extension:list
Tärkeää

Jos Joomla-sivustonne ohjaa kävijät Googlesta vieraille sivuille tai Google näyttää varoituksen, palvelin on hyvin todennäköisesti jo vaarantunut. Silloin päivitys ei riitä, vaan tarvitaan puhdistus ja sen jälkeen tarkistus Search Consolessa.

Ylläpitäjän pääsy ja laajennukset

Ylläpitäjän alue on osoitteessa /administrator. Tarkistakaa käyttäjäryhmä ”Super Users” tuntemattomien tilien ja entisten palveluntarjoajien tilien varalta. Ottakaa käyttöön Joomlan mukana tuleva kaksivaiheinen tunnistautuminen ja käyttäkää henkilökohtaisia tilejä jaettujen sijaan.

Joomla Extensions Directoryn ja kolmansien osapuolten laajennuksia on monilla sivustoilla runsaasti: lomakkeita, galleriota, sivurakentajia, uutiskirjeitä. Jokainen tuo mukanaan omaa PHP-koodia ja usein omat latausominaisuudet. Laajennukset, joiden valmistaja ei enää julkaise päivityksiä, ovat pysyvä riski ja vaikeuttavat jokaista PHP-päivitystä. Poistakaa käyttämättömät kokonaan.

Mihin Joomla-päivitys pystyy ja mihin ei

Joomla-päivitys korvaa ydintiedostot ja sulkee Joomlan tunnetut aukot. Se ei korjaa PHP:tä, ei koske mallipohjien ylikirjoituksiin eikä kolmansien osapuolten laajennuksiin eikä poista tiedostoja, jotka eivät kuulu ytimeen. Myös tietokantamerkinnät, kuten uudet Super Userit, säilyvät.

Jos sivustoanne on jo muutettu, apua tarjoaa sivun Verkkosivusto murrettu? Etähätäapu kuvaama kulku. Takaovien etsintään sopii opas Web shellien tunnistaminen ja poisto.

Jos Joomla-sivustonne on pystyttänyt toimisto tai freelancer, kysykää heiltä, mitä laajennuksia ja mallipohjia on räätälöity. Räätälöityjä tiedostoja ei voi vain verrata alkuperäispakettiin, vaan ne vaativat yksittäisen tarkistuksen.

Miten PHP SOS auttaa konkreettisesti?

  • Kysymme PHP:n tilan hosting-palveluntarjoajaltanne tai tarkistamme sen palvelimeltanne, uudelleenkäynnistys mukaan lukien.
  • Varmuuskopioimme lokit, tiedostot ja tietokannan ennen jokaista muutosta.
  • Vertaamme ytimen alkuperäispakettiin ja tarkistamme ylikirjoitukset, järjestelmäliitännäiset, mediakansiot ja Super Userit.
  • Löydösten yhteydessä puhdistamme sivuston, uusimme tunnukset ja autamme Google-varoitusten poistamisessa.

Usein kysytyt kysymykset

Koskeeko PHP2Shell Joomlaa?

Joomlassa itsessään ei ole uutta aukkoa, mutta se toimii PHP:llä. Jos palvelimen PHP ei ole korjattu, hyökkääjä voi PHP-tiimin mukaan suorittaa koodia ilman kirjautumista. Joomla-päivitys ei muuta sitä.

Mistä löydän Joomlasta PHP-version?

Ylläpitäjän alueella kohdassa Järjestelmä > Järjestelmätiedot. Siellä näette myös PHP-asetukset. Onko backport asennettu, ei näy numerosta; sen vahvistaa hosting-palveluntarjoajanne.

Miksi mallipohjien ylikirjoitukset (template override) ovat riski?

Ylikirjoitukset ovat mallipohjakansiossa ja sisältävät PHP-koodia, joka korvaa komponenttien ja moduulien tulosteen. Sisään ujutettu koodi jää siellä tuskin huomaamatta, koska Joomla-päivitykset eivät korvaa ylikirjoituksia.

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