21. oktobra PHP ievainojamība: kas notika un kāds ir pašreizējais stāvoklis
Trešdien, 21. oktobrī, kļuva zināmi divi nopietni drošības caurumi PHP, programmēšanas valodā, uz kuras darbojas lielākā daļa visu tīmekļa vietņu, tostarp WordPress. Iespējams, Jūs to pamanījāt, jo daļu dienas mūsu tīmekļa vietnes nebija pieejamas. Šajā rakstā apkopojam, kas notika, kā rīkojāmies un kāds ir pašreizējais stāvoklis.
Kas notika?
Šie drošības caurumi (CVE-2026-109618 un CVE-2026-109619) ļāva nepiederošām personām izpildīt kodu tīmekļa serverī. Tas ir gandrīz vissliktākais iespējamais drošības caurums: uzbrucējam tam nav nepieciešama parole, un tas skar gandrīz visu internetu.
Kā rīkojāmies
- Pagaidu pasākums
Tajā brīdī bija zināms tikai tas, ka visās PHP versijās ir divi nopietni drošības caurumi ar CVE novērtējumu 9,2. Sīkāka informācija vēl nebija pieejama, un veiksmīgu uzlaušanas gadījumu vēl nebija zināms, lai gan, piemēram, Cloudflare novēroja aizvien vairāk mēģinājumu. Tā kā drošības cauruma detaļas nebija zināmas, neviens nezināja, kas tieši notiek un ko var darīt, lai mazinātu risku. Tomēr pakāpeniski kļuva zināmi arvien vairāk risku mazinošu pasākumu un iespējamo darbību. Mēs tos nekavējoties ieviesām, piemēram, atslēdzām noteiktas PHP funkcijas un vairākkārt atjauninājām ugunsmūri.
No plkst. 10:00 mēs arī nepārtraukti veicām ļoti stingrus ļaunprogrammatūras pārbaudes, lai nekavējoties pamanītu, ja kāds skripts tiktu novietots mūsu serveros vai mūsu klientu kontos. Tas nenotika. - Tīmekļa vietnes bezsaistē
Lai gan mūsu serveros neredzējām mēģinājumus to ļaunprātīgi izmantot, nolēmām izvēlēties drošāko risinājumu: atslēgt visu bezsaistē. Galvenais iemesls bija tas, ka mums bija šaubas par to risku mazinošo pasākumu (pagaidu risinājumu) efektivitāti, kas izplatījās internetā, jo neviens nevarēja apstiprināt, ka tie nodrošinātu pietiekamu aizsardzību.
Situācijā ar tik lielu nenoteiktību un potenciāli milzīgām sekām dažu stundu dīkstāve ir attaisnojama, taču risku uzņemties nebija. - Oficiāls risinājums
PHP izstrādātāji izlaida oficiālo atjauninājumu ar labojumu versijām 8.3, 8.4 un 8.5. Pēc tam atlika gaidīt atjauninātas pakotnes no CloudLinux, kas ir mūsu serveros izmantoto PHP versiju piegādātājs.
Publicējot atjauninājumu, tika atklātas arī ievainojamību detaļas, kas apstiprināja mūsu nojausmu: pazīstamie risku mazinošie pasākumi un papildu ugunsmūra noteikumi gan samazināja uzlaušanas risku, taču ar to nepietika, lai aizsargātu serveri. - Pagaidu risinājums
Diemžēl pagāja ievērojami ilgāks laiks, nekā cerējām un gaidījām, pirms CloudLinux atjauninājumi bija gatavi. No sarunām ar citiem pakalpojumu sniedzējiem izrietēja, ka ne tikai mēs bijām pārsteigti. Tā kā redzējām, ka viņi jau vairākkārt nebija ievērojuši paši noteiktos termiņus, strādājām pie pagaidu risinājuma.
Mēs paši instalējām PHP versiju 8.3.36 visos mūsu serveros un visus mūsu klientus uz laiku pārslēdzām uz šo versiju. 90% tīmekļa vietņu atkal bija pieejamas tiešsaistē laikā no 19:00 līdz 20:30. Vienīgās tīmekļa vietnes, kas nebija pieejamas tiešsaistē, bija novecojušas un nevarēja darboties ar modernu PHP versiju. - Atjaunināšana
Atjauninājumi kļuva pieejami, un mēs nekavējoties sākām tos instalēt un pārbaudīt, serveri pēc servera.
- Atrisināts
Visi serveri bija atjaunināti, un visas tīmekļa vietnes atkal bija pieejamas tiešsaistē, izmantojot to pašu PHP versiju, ko tās lietoja iepriekš.
Mēs labi saprotam, ka ir nepatīkami, ja Jūsu tīmekļa vietne pēcpusdienu un vakaru nav sasniedzama. Taču šīs neērtības nesver smagāk par iespējamām sekām. Mums nekad iepriekš nebija jāpieņem lēmums piesardzības nolūkos atslēgt visu bezsaistē, bet, ja tāda pati situācija atkārtotos, mēs rīkotos tieši tāpat.
Kāds ir pašreizējais stāvoklis?
- Visās PHP versijās, ko piedāvājam, no 5.2 līdz pat 8.5, ir ietverti drošības labojumi abiem drošības caurumiem.
- Dažas tīmekļa vietnes, kas darbojās vēl vecākā PHP versijā, kurai labojums nepastāv, mēs pārcēlām uz labotu versiju.
- Drošības cauruma laikā un pēc tā mēs pārbaudījām serverus, meklējot ļaunprātīgas izmantošanas pēdas, piemēram, iesprūdušus PHP procesus, aizdomīgus procesus, augšupielādētus failus un pieprasījumus, kas atbilst zināmajam uzbrukumam. Mēs neatradām nekādas norādes par to, ka šis drošības caurums mūsu serveros būtu ticis ļaunprātīgi izmantots, un pirms pāriešanas bezsaistē arī netika konstatēti šādi mēģinājumi.
Vai mana tīmekļa vietne ir nodalīta no citām?
Jā. Katrs hostinga pakalpojumu pakotne pie mums darbojas savā, atsevišķā un aizsargātā vidē. PHP darbojas zem Jūsu pakotnes lietotāja, bez administratora tiesībām serverī, un nevar piekļūt citu klientu failiem vai datubāzēm. Arī procesora un atmiņas lietojums katrai pakotnei ir ierobežots. Vairāk informācijas par mūsu drošību apzināti nedalāmies publiski: jo mazāk uzbrucējs zina, jo labāk.
Lasīt nākamos rakstus

Mēs pārejam uz Euro-Office: jauno biroja risinājumu Jūsu Nextcloud vidē.
Jaunums: MCP serveris MI. Ļaujiet savam MI strādāt pie Jūsu vietnes
Jūsu MI tagad var strādāt tieši pie Jūsu vietnes WebOké: labot failus, meklēt kļūdas, izveidot jaunu dizainu vai pārveidot WordPress par ātru statisku vietni. Paskaidrojam, kas ir MCP serveris, ko tas Jums dod, kurām paketēm tas pieejams un cik tas maksā (neko papildus).

