Projekat PHP ispravio je dvije kritične ranjivosti koje bez prijave omogućavaju pokretanje koda na serveru
Verzije 8.5.12, 8.4.27, 8.3.36 i 8.2.35 zatvaraju dvije ranjivosti zbog kojih napadač pod određenim uslovima može da izvrši kod bez ikakvih pristupnih podataka. Pogođena je svaka instalacija PHP-a koja odgovara na veb zahtjeve. Amazon navodi da je prvi pokušaj napada zabilježio 17. oktobra, četiri dana prije nego što je ispravka postala javna.
Izvor
Today's PHP Security Release, and How We're Strengthening PHP SecurityThe PHP Foundation · Original objavljen 21. oktobra 2026.
Projekat PHP objavio je 21. oktobra 2026. verzije 8.5.12, 8.4.27, 8.3.36 i 8.2.35, koje ispravljaju dvije kritične ranjivosti. Obje mogu da omoguće izvršavanje udaljenog koda, odnosno da napadač na serveru pokrene sopstveni program, i nijedna ne traži prijavu. Projekat poziva sve korisnike PHP-a da odmah ažuriraju, a isto traži i američka agencija za sajber bezbjednost CISA.
Šta omogućavaju dvije ranjivosti
Prva, CVE-2026-109618, nalazi se u načinu na koji PHP postupa kad ostane bez memorije. Ako zahtjev dostigne granicu memory_limit u pogrešnom trenutku, interni podaci zahtjeva ostaju djelimično pripremljeni, a PHP ih kasnije tretira kao ispravne. Fondacija PHP navodi da na Apacheu s modulom mod_php zahtjev bez prijave pokreće grešku prije ijedne linije koda aplikacije. Izvršavanje koda je tamo pokazano uz podrazumijevana podešavanja, a na PHP-FPM-u je potvrđeno kroz kod same aplikacije.
Druga, CVE-2026-109619, je greška korišćenja već oslobođene memorije. Interno stanje jednog zahtjeva ostaje i pošto je njegova memorija oslobođena, pa ga sljedeći zahtjev u istom radnom procesu upotrijebi. Istraživač koji je grešku prijavio pokazao je izvršavanje koda na stvarnoj aplikaciji koja radi na modulu mod_php.
Savjet na sajtu php.net kao pogođene navodi PHP-FPM, Apache s modulom mod_php, php-cgi, FrankenPHP i LiteSpeed. Najveći rizik projekat vidi kod modula mod_php.
Ko mora da ažurira
Linux distribucije i firme koje daju dugoročnu podršku dobile su ispravke unaprijed, pa ažurirane pakete treba tražiti od njih. Verzije 8.1 i starije od projekta ne dobijaju izdanja. Zbog ozbiljnosti grešaka bezbjednosni tim je ipak objavio minimalne ispravke izvornog koda za 7.4, 8.0 i 8.1, namijenjene onima koji PHP sami prevode iz izvornog koda.
CISA ide korak dalje kad je riječ o sistemima koji se ne mogu ažurirati. Prema njenom upozorenju, organizacije koje ne mogu da ažuriraju ili koriste PHP 8.1 i starije treba da takve sisteme isključe dok ih ne isprave. U trenutku objave upozorenja CISA nije zabilježila uspješno iskorišćavanje.
Ako ažuriranje mora da sačeka
Projekat navodi podešavanja koja sužavaju pojedine puteve napada i izričito kaže da nijedno od njih instalaciju ne čini bezbjednom:
memory_limit=-1se postavlja na mjestu koje aplikacija ne može da promijeni, na primjer krozphp_admin_valueu FPM grupi ili u podešavanjima Apachea.post_max_sizese spušta na8Mza aplikacije bez slanja datoteka, odnosno na32Mkad je slanje potrebno.session.upload_progress.enabled=0se postavlja uphp.iniili u podešavanjima grupe, a zatim se ponovo pokreće svaki radni proces.- Na verziji 8.5 se postavlja
fatal_error_backtraces=0i ponovo pokreće svaki radni proces.
Napadi su počeli prije ispravke
Amazonova služba za praćenje prijetnji navodi da je jedan od njenih mamaca u mreži MadPot zabilježio pokušaj napada četiri dana prije javne objave, 17. oktobra 2026. Pokušaj je došao iz mreže za prikrivanje adresa, a Amazon kaže da nije jasno kako je napadač došao do pojedinosti. Primjeri koda za napad pojavili su se na dan objave, a Amazon sada bilježi široke pokušaje iskorišćavanja.
Amazon preporučuje da istraga počne od 17. oktobra, a ne od dana objave. Predlaže i da se u zapisima servera traže POST zahtjevi s poljem PHP_SESSION_UPLOAD_PROGRESS.
Projekat je 23. oktobra 2026. dodao informativni savjet o ranjivosti CVE-2026-115560. Ona se tiče samo neuobičajenog podešavanja, a projekat predlaže da podešavanje session.upload_progress.enabled=0 ostane na snazi do sljedećeg redovnog izdanja.
Zašto je ispravka trajala dvije godine
Prvi znaci problema s memorijom nađeni su 2024, tokom spoljne provjere koda koju je izvela firma Quarkslab. Fondacija PHP piše da tada nije bio poznat konkretan put napada, da je svako predloženo rješenje imalo nedostatke i da je rad mjesecima zastajao. Bezbjednosna firma Calif počela je novu provjeru 30. jula 2026. Izvršavanje koda bez ikakvih uslova prijavila je 11. avgusta 2026. OpenAI i Wiz prijavili su dodatne puteve napada u avgustu i septembru.
„Nećemo se pretvarati: kašnjenje je bilo strukturni propust.“
Izvori
Povezano
Google je izmijenio politiku privatnosti i dozvolio oglase prilagođene sadržaju iz Gmaila, Drivea i Photosa
Do 16. oktobra 2026. Googleova politika privatnosti bez izuzetka je obećavala da se sadržaj iz Drivea, Gmaila i Photosa ne koristi za personalizovane oglase. Nova verzija uvodi izuzetak za podatke koje korisnik sam učini dostupnim servisima koji podržavaju takve oglase. Navodi i da pretraga podatke kojima korisnik dozvoli pristup može koristiti za prilagođavanje oglasa.
Googleprovjereno
Railway je pozvao sve korisnike da zamijene ključeve poslije upada u sisteme s promjenljivim okruženja
Platforma za postavljanje aplikacija navodi da je neovlašćena strana možda došla do sistema u kojima čuva promjenljive okruženja korisnika i da je dio njih dešifrovala. Railway smatra da je pogođen samo dio korisnika, ali od svih traži da zamijene ključeve. Uputstva za oporavak dodaju da su sesije, tokeni i veze s GitHubom opozvani, a da izmjene poslate tokom zastoja nikad nisu postavljene.
Railwayprovjereno
Node.js ispravlja 10 ranjivosti u verzijama 26, 24 i 22, od kojih su četiri visoke ozbiljnosti
Projekat Node.js objavio je 21. oktobra 2026. bezbjednosna izdanja 26.12.1, 24.22.1 i 22.23.4. Najozbiljnije ispravke odnose se na grešku u Brotli dekoderu, koja prema projektu omogućava izvršavanje udaljenog koda, i na nekoliko načina da se zaobiđe provjera imena domaćina u TLS vezi. Izdanja ažuriraju i korijenske sertifikate poslije kompromitovanja ključeva firme eMudhra.
Node.jsprovjereno