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

Contaon tietoturva PHP2Shellin jälkeen: verkkosivustojen oikea suojaus

Contao toimii PHP:llä ja Symfonylla. PHP2Shellin jälkeen ratkaisevat web- ja komentorivi-PHP:n korjaus, suojattu Contao Manager sekä files- ja templates-kansioiden tarkistus.

Tilanne Lukuaika 3 minAlustat

Lyhyesti: Contaon tietoturva riippuu PHP2Shellin osalta palvelimen PHP:stä, ei Contaosta. Huolehtikaa, että sekä web-PHP että Contao Managerin komentorivi-PHP on korjattu. Sen jälkeen tarkistakaa .env, omat mallipohjat, kansio files sekä hallinnan ja Managerin tunnukset.

Contao ja PHP2Shell: mistä on kyse

Contao on saksankielisellä alueella yleinen sisällönhallintajärjestelmä, joka on perustunut Symfony-kehykseen versiosta 4 lähtien. PHP-tiimin mukaan PHP-haavoittuvuudet CVE-2026-109618 ja CVE-2026-109619 sallivat haittakoodin suorittamisen etänä ilman kirjautumista. Ne koskevat itse PHP:tä, siis myös jokaista Contao-asennusta korjaamattomalla palvelimella.

Monet Contao-sivustot kuuluvat keskisuurille yrityksille, yhdistyksille ja kunnille, ja niitä ylläpitävät toimistot. Selvittäkää siksi ensin, kuka vastaa PHP:stä: hosting-palveluntarjoaja, toimisto vai oma IT.

Yleinen harhakäsitys koskee huoltotilaa. Contao voi sulkea sivuston kävijöiltä, mutta tämän sulun tarjoaa itse PHP. Jokainen pyyntö saavuttaa siis edelleen PHP-tulkin. Huoltotila ei siksi suojaa PHP2Shellilta. Kun BSI (Saksan liittovaltion tietoturvavirasto) suosittelee ottamaan verkkopalvelimet pois verkosta päivitykseen asti, tarkoitetaan estoa palvelin- tai hosting-tasolla, ei CMS:n asetusta.

Contaon tietoturva alkaa kahdesta PHP-versiosta

Contao käyttää PHP:tä kahta reittiä. Verkkopalvelin käsittelee sivupyynnöt yleensä PHP-FPM:n kautta. Contao Manager ja Contao-konsoli toimivat lisäksi komentorivi-PHP:llä, esimerkiksi asennuksissa, päivityksissä ja cron-ajoissa. Hosting-paketeissa, joissa on useita PHP-versioita, nämä voivat olla kaksi eri ohjelmaa.

Contao Manager näyttää palvelinasetuksissaan, mitä PHP-ohjelmatiedostoa se käyttää. Web-version näette hosting-paneelista. Korjatut upstream-versiot ovat 8.5.12, 8.4.27, 8.3.36 ja 8.2.35; backportit voivat kantaa vanhempia numeroita. Molempien reittien on oltava korjattuja ja kaikkien prosessien käynnistettyinä uudelleen. Mitä PHP-versioita teidän Contao-versionne tukee, tarkistatte järjestelmävaatimuksista osoitteessa contao.org. Lisää tarkistuksesta sivulla PHP-version ja korjaustilan tarkistaminen oikein.

Contaon hakemistot ja tiedostot

Paikka Sisältö Tarkistuskohde
.env, .env.local Tietokantatunnukset, APP_SECRET uusittava epäilyn jälkeen
config/config.yaml Asennuksen asetukset odottamattomat muutokset
public/ (vanhemmissa versioissa web/) Dokumenttijuuri: index.php, Contao Manager -tiedosto, assetit ylimääräiset PHP-tiedostot
files/ Toimittajien tiedostonhallinta ei PHP-tiedostoja
templates/ omat mallipohjat, klassisesti .html5 PHP:llä tuntemattomat tai muutetut mallipohjat
system/config/localconfig.php vanhemmat asetukset sisään ujutettu koodi
var/ välimuisti ja lokit lokit talteen, välimuisti luodaan uudelleen

Juuri templates/ aliarvioidaan: klassiset .html5-päätteiset Contao-mallipohjat ovat PHP-tiedostoja. Omaan mallipohjaan ujutettu komento suoritetaan jokaisella sivunkäsittelyllä ja säilyy Contao-päivityksissä.

Vaarattomat ensitarkistukset:

# PHP-tiedostot tiedostonhallinnassa
find files -type f -name "*.php"
# Mallipohjat, jotka ovat muuttuneet 17.10.2026 jälkeen
find templates -type f -newermt "2026-10-17"
# Tarkistetaan käytettävissä olevat Contao-komennot ja riippuvuudet
vendor/bin/contao-console list contao
composer audit
Tärkeää

Contao Manager voi asentaa paketteja ja siten tuoda palvelimelle mitä tahansa koodia. Tarkistakaa epäilyn jälkeen sen käyttäjätilit, antakaa uudet salasanat ja poistakaa entisten palveluntarjoajien tunnukset.

Hallinta, Manager ja laajennukset

Hallinta on osoitteessa /contao. Tarkistakaa ylläpitäjäoikeuksilla varustetut käyttäjät ja käyttäjäryhmät, joilla on laajat oikeudet, esimerkiksi tiedostonhallintaan, mallipohjiin tai käyttäjähallintaan. Contao tarjoaa kaksivaiheisen tunnistautumisen; käyttäkää sitä kaikilla korotetuilla oikeuksilla varustetuilla tileillä.

Laajennukset asennetaan Composerilla tai Contao Managerin kautta. Jokainen tuo mukanaan PHP-koodia, ja vanhemmat ylläpitämättömät laajennukset hidastavat PHP-päivityksiä. Palvelimilla, joilla on useita verkkosivustoja, jokaisen asennuksen pitäisi toimia erillään, jotta tapaus ei leviä naapurisivustoille; lisää aiheesta sivulla open_basedir ja eristys sivustokohtaisesti.

Mihin Contao-päivitys pystyy ja mihin ei

Contao-päivitys Managerin tai Composerin kautta sulkee Contaon ja laajennusten tunnetut virheet. Se ei korjaa PHP:tä eikä käynnistä PHP-FPM:ää tai taustaprosesseja uudelleen. Omat mallipohjat, files/-kansion tiedostot ja vieraat käyttäjätilit säilyvät muuttumattomina. PHP:n pääversion vaihdon jälkeen välimuisti tulisi luoda uudelleen ja sivusto tarkistaa testiympäristössä.

Sivustoilla, joilla on paljon toimittajia, hallinnan oikeudet kannattaa tarkistaa korjauksen jälkeen. Kuka saa muokata mallipohjia, voi tallentaa PHP-koodia klassisiin .html5-mallipohjiin. Tämä oikeus kuuluu vain harvoille, teknisesti taitaville henkilöille. Sama koskee tiedostonhallinnan pääsyä, jossa on latausoikeus julkisesti saavutettaviin kansioihin.

Miten PHP SOS auttaa konkreettisesti?

  • Selvitämme Contao-asennuksenne web- ja CLI-PHP:n ja varmennamme korjauksen ja uudelleenkäynnistyksen.
  • Varmuuskopioimme lokit, tiedostot ja tietokannan, ennen kuin muutamme mitään.
  • Tarkistamme mallipohjat, files/-kansion, dokumenttijuuren sekä hallinnan ja Managerin tilit.
  • PHP-vaihdon todisteineen hoitaa pyynnöstä PHP-korjauspalvelumme yhteistyössä toimistonne kanssa.

Usein kysytyt kysymykset

Koskeeko PHP2Shell Contaota?

Contaossa itsessään ei ole uutta aukkoa. Jos sivusto toimii korjaamattomalla PHP:llä, se on kuitenkin haavoittuva kuten mikä tahansa PHP-sovellus. Contao-päivitys ei sulje PHP-aukkoa.

Miksi Contao Manager on tietoturvan kannalta tärkeä?

Contao Manager voi asentaa, päivittää ja poistaa paketteja. Sen käyttöoikeuden haltija voi tuoda palvelimelle mitä tahansa koodia. Pääsyyn tarvitaan siksi vahva salasana ja vain harvoja käyttäjiä.

Sisältävätkö Contaon mallipohjat PHP-koodia?

Klassiset .html5-päätteiset mallipohjat ovat PHP-mallipohjia. Kansion templates omat mallipohjat voivat siksi sisältää PHP:tä. Tuntemattomat tai äskettäin muutetut mallipohjat teidän pitäisi pystyä selittämään.

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