Trenutno stanje: PHP2Shell. Dvije kritične PHP ranjivosti (CVSS 9.2) omogućuju zlonamjerni kod bez prijave. Zakrpe od 21. 10. 2026.Što sada učiniti →

Što je PHP? Programski jezik objašnjen

PHP je skriptni jezik koji radi na poslužitelju i tamo generira HTML. Na njemu počivaju mnogi CMS-ovi i web-trgovine, pa ranjivost u PHP-u pogađa vrlo mnogo web-stranica.

Stanje 4 min čitanjaPHP znanje

Ukratko: PHP je skriptni jezik otvorenog koda koji se uglavnom koristi za web-aplikacije. Kod se izvršava na poslužitelju, tamo stvara HTML i pregledniku šalje samo rezultat. Budući da se na PHP-u temelje mnogi CMS-ovi, web-trgovine i interni alati, verzija PHP-a na poslužitelju zaseban je sigurnosni čimbenik, neovisan o ažuriranju CMS-a.

Što je PHP? Definicija jednostavnim riječima

PHP priručnik opisuje PHP kao široko rasprostranjen skriptni jezik otvorenog koda opće namjene koji je posebno prikladan za razvoj weba i može se ugraditi u HTML. Naziv je rekurzivni akronim, dakle kratica koja sadrži samu sebe: „PHP: Hypertext Preprocessor“.

Ključna razlika u odnosu na JavaScript u pregledniku: PHP kod izvršava se na poslužitelju. Posjetitelj dobiva samo gotov rezultat i ne vidi izvorni kod. Zbog toga je PHP prikladan za sve što mora ostati povjerljivo, na primjer pristup bazi podataka, prijave ili izračune cijena.

Prema priručniku PHP ima dva glavna područja primjene: skripte na strani poslužitelja za web-stranice i skripte u naredbenom retku, na primjer za redovite zadatke putem crona. Oboje se nalazi u gotovo svakoj tvrtki koja ima vlastitu web-stranicu, web-trgovinu ili portal za klijente.

Gdje se PHP nalazi u Vašoj tvrtki?

PHP je rijetko izravno vidljiv. Skriva se u programima koje poznajete pod drugim imenom. Tipični primjeri:

  • Sustavi za upravljanje sadržajem poput WordPressa, TYPO3-a, Joomle, Drupala ili Contaoa
  • Shop sustavi poput Shopwarea, WooCommercea, Magenta ili PrestaShopa
  • Interne usluge poput Nextclouda, Moodlea, MediaWikija ili Matomoa
  • Vlastiti razvoj na temelju frameworka poput Laravela ili Symfonyja
  • Web-sučelja uređaja i hosting panela

Svaka od tih aplikacija treba instalirano PHP izvršno okruženje, dakle program koji izvršava PHP kod. To je okruženje zasebna programska podrška sa zasebnim ažuriranjima. Ažuriranje WordPressa ili Shopwarea ne ažurira PHP. Tko koje sustave koristi, stoga treba zapisati u inventar, kako to opisuje članak Inventar svih web-stranica i poslužitelja.

Kako izgleda PHP kod?

PHP kod nalazi se između oznaka <?php i ?>. Sve izvan njih ispisuje se nepromijenjeno kao HTML. Mali, bezopasan primjer:

<?php
$stunde = (int) date('G');
$gruss  = $stunde < 12 ? 'Guten Morgen' : 'Guten Tag';
?>
<!DOCTYPE html>
<html lang="de">
  <body>
    <p><?= htmlspecialchars($gruss) ?>, heute ist der <?= date('d.m.Y') ?>.</p>
  </body>
</html>

Poslužitelj izvršava PHP dio i pregledniku šalje samo gotov HTML, na primjer „Guten Tag, heute ist der 25.10.2026“. Funkcija htmlspecialchars() pretvara posebne znakove i tako štiti od ubačenog HTML-a. Takve ugrađene zaštitne funkcije jedan su od razloga zašto uredno napisan PHP kod može biti siguran.

Od kojih se sastavnica sastoji PHP okruženje?

PHP web-stranica ne sastoji se samo od koda aplikacije. Surađuje nekoliko slojeva i svaki treba vlastitu njegu:

Sastavnica Zadaća Tko je obično ažurira?
Web-poslužitelj (Apache, Nginx, LiteSpeed) prima zahtjeve iz mreže pružatelj hostinga ili administrator poslužitelja
PHP izvršno okruženje (interpreter) izvršava PHP kod pružatelj hostinga, administrator poslužitelja, izvor paketa
Ekstenzije upravljački programi baze podataka, obrada slika, šifriranje zajedno s PHP izvršnim okruženjem
Konfiguracija (php.ini) ograničenja, ispis pogrešaka, sesije administrator poslužitelja
Aplikacija (CMS, shop) sadržaj i poslovna logika agencija ili vlastiti tim
Dodaci i biblioteke dodatne funkcije agencija ili vlastiti tim

Veza između web-poslužitelja i PHP-a naziva se SAPI (Server Application Programming Interface). Radi li PHP kao Apacheov modul, preko PHP-FPM-a ili kao CGI, utječe na rad i sigurnost. Više o tome u članku SAPI objašnjen i u prilogu Kako PHP stvara web-stranicu.

Zašto je verzija PHP-a važna za sigurnost

Svaka se PHP verzija održava samo ograničeno vrijeme. Prema php.net-u za svaku granu verzija vrijedi dvije godine aktivne podrške, a nakon toga još dvije godine samo sigurnosni ispravci. Potom je grana na kraju životnog vijeka i više ne dobiva službena ažuriranja. Pojedinosti su na stranici PHP verzije i ciklus izdanja.

Koliko je to važno, pokazuje PHP2Shell. U listopadu 2026. objavljene su dvije kritične ranjivosti u samom PHP-u, CVE-2026-109618 i CVE-2026-109619, obje s CVSS v4.0 9,2. Omogućuju izvršavanje zlonamjernog koda na daljinu bez prijave. Otklonjene su u PHP-u 8.5.12, 8.4.27, 8.3.36 i 8.2.35. Za PHP 8.1 i starije verzije više nema službenih ažuriranja.

Za donositelje odluka iz toga proizlaze tri točke:

  1. Ažuriranje CMS-a ne zatvara ranjivost u PHP-u. Oboje se mora ažurirati zasebno.
  2. Nakon ažuriranja PHP-a svi PHP procesi moraju se ponovno pokrenuti, inače se stari kod i dalje izvršava u memoriji.
  3. Zakrpa ne dokazuje da se prije nije dogodilo ništa. Kod nezaštićenih poslužitelja treba provjeriti ima li tragova.
Važno

Pisano razjasnite tko je u Vašoj tvrtki odgovoran za PHP izvršno okruženje: pružatelj hostinga, agencija ili vlastiti IT. PHP2Shell je pokazao da je to pitanje u mnogim tvrtkama ostalo otvoreno.

Što je ranjivost zapravo i koga pogađa, objašnjava stranica Što je PHP2Shell?.

Kako PHP SOS konkretno pomaže?

  • Evidentirati stanje: Utvrđujemo koji Vaši sustavi koriste PHP, u kojoj verziji i načinu rada.
  • Razjasniti odgovornosti: Pokazujemo koje dijelove održava Vaš pružatelj hostinga, a koji su na Vama ili Vašoj agenciji.
  • Ažurirati: Putem PHP Patch usluge instaliramo ažuriranja, ponovno pokrećemo sve procese i dokumentiramo stanje.
  • Naknadno provjeriti: Gdje je poslužitelj bio nezaštićeno dostupan, provjeravamo ima li tragova provale.

Česta pitanja

Je li PHP programski jezik ili samo skriptni jezik?

Točno je oboje. PHP je potpun programski jezik opće namjene s funkcijama, klasama i tipovima. Skriptnim se jezikom naziva jer se izvorni kod ne prevodi unaprijed u izvršnu datoteku, nego ga PHP interpreter obrađuje tijekom rada.

Vide li posjetitelji moje web-stranice PHP kod?

Ne. PHP radi na poslužitelju, a preglednik dobiva samo rezultat, najčešće HTML. Iznimke nastaju zbog pogrešne konfiguracije, na primjer kada web-poslužitelj PHP datoteke isporučuje kao tekst ili kada su sigurnosne kopije poput index.php.bak javno dostupne.

Kako mogu prepoznati radi li moja web-stranica na PHP-u?

Većina raširenih CMS-ova i shop sustava, poput WordPressa, TYPO3-a, Shopwarea, Joomle ili Nextclouda, napisana je u PHP-u. Pouzdan odgovor mogu dati pružatelj hostinga, agencija ili uvid u konfiguraciju poslužitelja.

Moram li kao direktor razumjeti PHP?

Ne u pojedinostima. Važno je znati da je PHP zasebna programska podrška sa zasebnim ažuriranjima, neovisna o CMS-u. Pisano treba razjasniti tko je odgovoran za verziju PHP-a na Vašim poslužiteljima.

Izvori

Hitni kontakt

Svaki sat se računa. Pišite nam odmah.

Ukratko opišite sustav, verziju PHP-a i opažanje. Javit ćemo Vam se, razjasniti situaciju i raditi na daljinu dok incident nije zaključen i dokumentiran.

Hitna pomoć