Krótko: To, ile serwerów dotyka PHP2Shell, można tylko szacować. Unit 42 naliczył według TechTarget ponad 22,6 miliona wystawionych instancji, CybelAngel podaje około 2,24 miliona hostów PHP, BleepingComputer informuje, powołując się na VirusTotal, o ponad 5,1 miliona. Liczby mierzą różne rzeczy i dlatego nie przeczą sobie. Dla Państwa firmy liczy się inna liczba: ile własnych systemów PHP jest osiągalnych i ile z nich jest udokumentowanie załatanych.
Punkt wyjścia: jedna liczba trafia na nagłówki
„22 miliony serwerów zagrożonych” pojawiło się 21 października 2026 w wielu nagłówkach. Liczba pochodzi od Unit 42, działu badawczego Palo Alto Networks, i została podana między innymi przez TechTarget. Wkrótce potem krążyły inne liczby, częściowo dziesięciokrotnie mniejsze.
U czytelników powstaje wrażenie, że nikt nic nie wie. W rzeczywistości dostawcy po prostu liczą różne rzeczy różnymi metodami. Kto to rozumie, może z tych liczb korzystać, zamiast dać się nimi zniechęcić.
Ile serwerów dotyka PHP2Shell? Liczby w przeglądzie
| Źródło | Liczba | Co policzono |
|---|---|---|
| Unit 42 (Palo Alto Networks), według TechTarget | ponad 22,6 mln | wystawione, potencjalnie podatne instancje; metoda nie została objaśniona w raporcie |
| VirusTotal, według BleepingComputer | ponad 5,1 mln | hosty PHP dostępne z internetu |
| CybelAngel, na podstawie danych Shodan | około 2,24 mln | hosty, które ujawniają PHP w swoich identyfikatorach |
| CybelAngel | 59% z około 1,5 mln | odsetek hostów z widoczną wersją w gałęziach bez oficjalnej aktualizacji |
| CybelAngel | około 740 000 | hosty, które ujawniają PHP, ale ukrywają swoją wersję |
Wszystkie liczby dotyczą sytuacji około 20 i 21 października. To migawki i zmieniają się z każdą zainstalowaną aktualizacją.
Dlaczego zliczenia tak bardzo się rozchodzą
Większość różnic wyjaśniają trzy efekty.
Instancja, host, strona. Host to zwykle adres IP lub serwer. Instancja może być pojedynczą usługą lub pojedynczą stroną. Na serwerze w hostingu współdzielonym działają często setki stron. CybelAngel sam zwraca na to uwagę: liczone są hosty, a nie organizacje czy strony, rzeczywista liczba osiągalnych aplikacji jest prawdopodobnie wyższa.
Ukryte wersje. Wiele serwerów nie ujawnia swojej wersji PHP, na przykład dlatego, że expose_php jest wyłączone. Brakuje ich w statystykach opartych na wersjach. Dlaczego ukrywanie ma sens, ale nie zastępuje ochrony, wyjaśnia artykuł o informacjach o wersji i expose_php.
Backporty. Dystrybucje i dostawcy hostingu częściowo instalują poprawki bez zmiany numeru wersji. Serwer, który na zewnątrz pokazuje starą numerację, może więc być załatany. Zliczenia na podstawie wyświetlanej wersji zawyżają zatem liczbę niezałatanych systemów. Jak sprawdzić prawdziwy stan u siebie, wyjaśnia strona Sprawdzanie wersji PHP i stanu poprawek.
Jak powstają takie zliczenia
Większość liczb opiera się na wyszukiwarkach, które nieustannie odpytują internet i zapisują to, co serwery o sobie komunikują. Serwer WWW podaje w swoich odpowiedziach często oprogramowanie i wersję, na przykład w nagłówku X-Powered-By. CybelAngel opiera się według własnego przedstawienia na takich identyfikatorach z danych Shodan. Niczego się przy tym nie atakuje, odczytuje się tylko to, co i tak jest publicznie widoczne.
Wynika z tego prosta zasada czytania każdej nowej liczby w mediach. Proszę zapytać: Co policzono, hosty, instancje czy strony? Kiedy mierzono, przed czy po 21 października? I jak ustalono wersję, przez wyświetlaną numerację czy rzeczywisty test? Kto nie potrafi odpowiedzieć na te trzy pytania, powinien traktować liczbę jako przybliżony rząd wielkości, a nie wartość zmierzoną.
„Wystawiony” znaczy osiągalny i według cech zewnętrznych możliwie podatny. Nie znaczy zaatakowany ani skompromitowany. BSI nie znało początkowo potwierdzonych udanych ataków na szeroką skalę.
Co liczby mimo wszystko pewnie pokazują
Nawet jeśli wysokość waha się, zliczenia niosą trzy wiarygodne przesłania:
- Powierzchnia ataku jest ogromna. Nawet najmniejsza liczba oznacza miliony osiągalnych celów. Atakujący nie muszą szukać, mogą sprawdzać zautomatyzowanie.
- Stare wersje są rozpowszechnione. Według CybelAngel 59 procent hostów z widoczną wersją działało na gałęziach, dla których projekt PHP nie publikuje oficjalnej aktualizacji. Dla tych systemów nie pomoże szybka poprawka, lecz tylko backport, zewnętrzny dostawca lub migracja. Ryzyka opisuje poradnik PHP End of Life.
- Problem pozostanie dłużej. Duża część osiągalnych systemów nie zostanie zaktualizowana w ciągu dni. Skanowania i próby ataków będą więc prawdopodobnie trwały jeszcze długo.
Ustalenie własnej liczby
Liczba światowa to nagłówek. Państwa własna to zadanie. Oto jak do niej dojść:
- Zebrać domeny i subdomeny: ze stref DNS, certyfikatów, umów z agencjami i dostawcami hostingu.
- Przyporządkować osiągalne usługi: Który serwer stoi za którym adresem, kto go prowadzi?
- Ustalić stan PHP dla każdego systemu: wersja, tryb pracy, źródło pakietów, potwierdzenie backportu.
- Ocenić wynik: załatany i udokumentowany, załatany bez dowodu, niezałatany, nieznany.
- Zamknąć luki: Nieznane wyjaśnić najpierw, niezałatane załatwić najpierw.
Na końcu jest krótka lista zamiast dużej liczby. Jak utrzymywać inwentarz na stałe, opisuje artykuł Inwentarz wszystkich stron i serwerów.
Jak konkretnie pomaga PHP SOS?
- Widok z zewnątrz: Ustalamy, które Państwa systemy są osiągalne z internetu i które z nich używają PHP.
- Widok od wewnątrz: Sprawdzamy stan poprawek i restart na serwerach, a nie tylko wyświetlaną wersję.
- Ocena: Otrzymują Państwo listę ze statusem każdego systemu i jasną kolejnością.
- Weryfikacja: Na życzenie testujemy po poprawce z zewnątrz, czy sytuacja poprawiła się zgodnie z oczekiwaniami.
Jak przebiega takie sprawdzenie, opisuje audyt bezpieczeństwa i test penetracyjny.
Podsumowanie
22,6 miliona, 5,1 miliona, 2,24 miliona: liczby wydają się sprzeczne, ale mierzą tylko różne rzeczy. Razem pokazują, że PHP2Shell dotyczy bardzo dużej powierzchni ataku i że w sieci stoi wiele starych wersji. Liczby, która decyduje o Państwa ryzyku, nie dostarcza żadne badanie. Powstaje ona wyłącznie przez spojrzenie na własne systemy.
Częste pytania
Ile serwerów jest dotkniętych przez PHP2Shell?
Nikt nie wie dokładnie. Unit 42 z Palo Alto Networks naliczył według TechTarget ponad 22,6 miliona wystawionych, potencjalnie podatnych instancji. CybelAngel podaje około 2,24 miliona hostów dostępnych z internetu, które ujawniają PHP. Liczby mierzą różne rzeczy i nie są bezpośrednio porównywalne.
Dlaczego liczby tak bardzo się różnią?
Ponieważ liczy się różne rzeczy: instancje, hosty, adresy IP lub usługi. Na jednym hoście w hostingu współdzielonym mogą znajdować się setki stron. Ponadto wiele serwerów nie pokazuje wersji PHP, a inne pokazują starą numerację, mimo że zainstalowano backport.
Czy wystawiony oznacza, że serwer został zaatakowany?
Nie. Wystawiony oznacza tylko, że usługa PHP jest dostępna z internetu i według cech zewnętrznych może być podatna. O faktycznych atakach te zliczenia nic nie mówią.
Która liczba jest ważna dla mojej firmy?
Liczba Państwa własnych publicznie dostępnych systemów PHP i to, ile z nich jest udokumentowanie załatanych. Liczby światowe pokazują skalę, ale nie zastępują własnego inwentarza.