Lyhyesti: Kuinka monta palvelinta PHP2Shell koskee, voidaan vain arvioida. Unit 42 laski TechTargetin mukaan yli 22,6 miljoonaa altistunutta instanssia, CybelAngel mainitsee noin 2,24 miljoonaa PHP-isäntää, BleepingComputer kertoo VirusTotaliin vedoten yli 5,1 miljoonasta. Luvut mittaavat eri asioita eivätkä siksi ole ristiriidassa. Yrityksellenne ratkaisee toinen luku: kuinka moni omista PHP-järjestelmistänne on tavoitettavissa ja kuinka moni niistä on todistettavasti päivitetty.
Lähtökohta: yksi luku nousee otsikoihin
”22 miljoonaa palvelinta vaarassa” luki monissa otsikoissa 21. lokakuuta 2026. Luku on peräisin Unit 42:lta, Palo Alto Networksin tutkimusosastolta, ja sen raportoi muun muassa TechTarget. Pian sen jälkeen liikkeellä oli muita lukuja, osin kymmenesosan suuruisia.
Lukijalle syntyy vaikutelma, ettei kukaan tiedä. Todellisuudessa toimittajat vain laskevat eri asioita eri menetelmillä. Joka ymmärtää tämän, voi käyttää lukuja sen sijaan, että antaisi niiden hämmentää.
Kuinka monta palvelinta PHP2Shell koskee? Luvut yleiskuvana
| Lähde | Luku | Mitä laskettiin |
|---|---|---|
| Unit 42 (Palo Alto Networks), TechTargetin mukaan | yli 22,6 milj. | altistuneet, mahdollisesti haavoittuvat instanssit; menetelmää ei selitetty raportissa |
| VirusTotal, BleepingComputerin mukaan | yli 5,1 milj. | internetistä tavoitettavat PHP-isännät |
| CybelAngel, Shodan-tietojen pohjalta | noin 2,24 milj. | isännät, jotka ilmoittavat PHP:n tunnisteissaan |
| CybelAngel | 59 % noin 1,5 milj.:sta | osuus isännistä, joilla näkyvä versio on haaroilla ilman virallista päivitystä |
| CybelAngel | noin 740 000 | isännät, jotka ilmoittavat PHP:n mutta piilottavat versionsa |
Kaikki luvut viittaavat tilanteeseen 20. ja 21. lokakuuta tienoilla. Ne ovat tilannekuvia ja muuttuvat jokaisen asennetun päivityksen myötä.
Miksi laskelmat ovat niin kaukana toisistaan
Kolme vaikutusta selittää suurimman osan eroista.
Instanssi, isäntä, verkkosivusto. Isäntä on yleensä IP-osoite tai palvelin. Instanssi voi olla yksittäinen palvelu tai yksittäinen verkkosivusto. Jaetun verkkohotellin palvelimella toimii usein satoja verkkosivustoja. CybelAngel huomauttaa itse: lasketaan isäntiä, ei organisaatioita tai verkkosivustoja, ja tavoitettavissa olevien sovellusten todellinen määrä lienee suurempi.
Piilotetut versiot. Monet palvelimet eivät paljasta PHP-versiotaan, esimerkiksi koska expose_php on poistettu käytöstä. Ne puuttuvat versioon perustuvista tilastoista. Miksi piilottaminen on järkevää mutta ei korvaa suojausta, selittää artikkeli versiotiedoista ja expose_php:stä.
Backportit. Jakelut ja hosting-yritykset asentavat korjauksia osin muuttamatta versionumeroa. Palvelin, joka näyttää ulospäin vanhaa numeroa, voi siis olla päivitetty. Näytettyyn versioon perustuvat laskelmat yliarvioivat siksi päivittämättömien järjestelmien määrän. Miten tarkistatte oikean tilan omissa järjestelmissänne, kerrotaan kohdassa PHP-version ja korjaustilan tarkistaminen.
Miten tällaiset laskelmat syntyvät
Useimmat luvut perustuvat hakupalveluihin, jotka kyselevät internetiä jatkuvasti ja tallentavat sen, mitä palvelimet kertovat itsestään. Verkkopalvelin ilmoittaa vastauksissaan usein ohjelmiston ja version, esimerkiksi otsikkorivillä X-Powered-By. CybelAngel nojaa oman kuvauksensa mukaan tällaisiin Shodan-tietojen tunnisteisiin. Mitään ei hyökätä, vain luetaan se, mikä on joka tapauksessa julkisesti näkyvissä.
Tästä seuraa yksinkertainen lukusääntö jokaiselle uudelle medioiden luvulle. Kysykää: Mitä laskettiin, isäntiä, instansseja vai verkkosivustoja? Milloin mitattiin, ennen 21. lokakuuta vai sen jälkeen? Ja miten versio määritettiin, näytetyn numeron avulla vai todellisella testillä? Joka ei osaa vastata näihin kolmeen kysymykseen, kohdelkoon lukua karkeana suuruusluokkana, ei mittaustuloksena.
”Altistunut” tarkoittaa tavoitettavissa olevaa ja ulkoisten tunnusmerkkien perusteella mahdollisesti haavoittuvaa. Se ei tarkoita hyökätty eikä vaarantunut. BSI ei aluksi tiennyt vahvistettuja onnistuneita hyökkäyksiä laajasti.
Mitä luvut silti luotettavasti osoittavat
Vaikka suuruus vaihtelee, laskelmat tukevat kolmea kestävää väitettä:
- Hyökkäyspinta on valtava. Pienintäkin lukua vastaa miljoonia tavoitettavia kohteita. Hyökkääjien ei tarvitse etsiä, he voivat tarkistaa automaattisesti.
- Vanhat versiot ovat yleisiä. CybelAngelin mukaan 59 prosenttia isännistä, joilla versio näkyi, toimi haaroilla, joille PHP-projekti ei julkaise virallista päivitystä. Näille järjestelmille ei auta nopea päivitys vaan ainoastaan backport, kolmas osapuoli tai migraatio. Riskit kuvaa opas PHP End of Life.
- Ongelma säilyy pidempään. Suuri osa tavoitettavissa olevista järjestelmistä ei päivity päivissä. Skannausten ja hyökkäysyritysten odotetaan siksi jatkuvan pitkään.
Oman lukunne selvittäminen
Maailmanlaajuinen luku on otsikko. Oma lukunne on tehtävä. Näin pääsette siihen:
- Kootkaa verkkotunnukset ja aliverkkotunnukset: DNS-vyöhykkeistä, varmenteista, toimistojen ja hosting-yritysten sopimuksista.
- Yhdistäkää tavoitettavat palvelut: Mikä palvelin on minkä osoitteen takana, kuka sitä ylläpitää?
- Selvittäkää PHP-tila järjestelmittäin: versio, ajotapa, pakettilähde, backportin vahvistus.
- Arvioikaa tulos: päivitetty ja todistettu, päivitetty ilman todistetta, päivittämätön, tuntematon.
- Sulkekaa aukot: tuntematon ensin selvitettävä, päivittämättömään ensin toimittava.
Lopputuloksena on lyhyt lista suuren luvun sijaan. Miten pidätte luettelon ajan tasalla, kuvaa artikkeli Kaikkien verkkosivustojen ja palvelimien luettelo.
Miten PHP SOS auttaa konkreettisesti?
- Ulkopuolinen näkymä: Selvitämme, mitkä järjestelmänne ovat tavoitettavissa internetistä ja mitkä niistä käyttävät PHP:tä.
- Sisäpuolinen näkymä: Tarkistamme palvelimilta korjaustilan ja uudelleenkäynnistyksen, emme vain näytettyä versiota.
- Arvio: Saatte listan, jossa on tila järjestelmittäin ja selkeä järjestys.
- Tarkistus: Pyynnöstä testaamme päivityksen jälkeen ulkoa, onko tilanne parantunut odotetusti.
Miten tällainen tarkistus etenee, kuvaa Tietoturva-auditointi ja tunkeutumistesti.
Yhteenveto
22,6 miljoonaa, 5,1 miljoonaa, 2,24 miljoonaa: luvut vaikuttavat ristiriitaisilta mutta mittaavat vain eri asioita. Yhdessä ne osoittavat, että PHP2Shell koskee hyvin suurta hyökkäyspintaa ja että verkossa on paljon vanhoja versioita. Riskinne ratkaisevaa lukua ei anna mikään tutkimus. Se syntyy vain katsomalla omia järjestelmiä.
Usein kysytyt kysymykset
Kuinka monta palvelinta PHP2Shell koskee?
Sitä ei tiedä kukaan tarkasti. Palo Alto Networksin Unit 42 laski TechTargetin mukaan yli 22,6 miljoonaa altistunutta, mahdollisesti haavoittuvaa instanssia. CybelAngel mainitsee noin 2,24 miljoonaa internetistä tavoitettavaa isäntää, jotka ilmoittavat käyttävänsä PHP:tä. Luvut mittaavat eri asioita eivätkä ole suoraan vertailukelpoisia.
Miksi luvut poikkeavat toisistaan niin paljon?
Koska lasketaan eri asioita: instansseja, isäntiä, IP-osoitteita tai palveluita. Jaetulla verkkohotellilla yhdellä isännällä voi olla satoja verkkosivustoja. Lisäksi monet palvelimet eivät näytä PHP-versiotaan, ja toiset näyttävät vanhan numeron, vaikka backport on asennettu.
Tarkoittaako altistunut, että palvelinta on hyökätty?
Ei. Altistunut tarkoittaa vain, että PHP-palvelu on tavoitettavissa internetistä ja ulkoisten tunnusmerkkien perusteella mahdollisesti haavoittuva. Todellisista hyökkäyksistä nämä laskelmat eivät kerro mitään.
Mikä luku on tärkeä yritykselleni?
Omien julkisesti tavoitettavien PHP-järjestelmienne määrä ja se, kuinka moni niistä on todistettavasti päivitetty. Maailmanlaajuiset luvut osoittavat laajuuden mutta eivät korvaa omaa luetteloa.