Ukratko: MediaWiki sigurnost nakon PHP2Shella počinje kod PHP-a poslužitelja, jer je ranjivost tamo, a ne u wikiju. Interni wikiji često se godinama ne diraju i rade na starim verzijama PHP-a. Provjerite stanje na Spezial:Version, zakrpajte i ponovno pokrenite, a potom kontrolirajte LocalSettings.php, images i Interface-administratore.
Zašto su interni wikiji vrijedna meta
MediaWiki u mnogim poduzećima, tijelima vlasti i istraživačkim ustanovama služi kao interni priručnik. Tamo se nalaze procesi, kontakt osobe, mrežni planovi, upute za poslužitelje, a ponekad čak i pristupni podaci koji tamo ne pripadaju. Za napadača je takav wiki karta poduzeća.
PHP ranjivosti CVE-2026-109618 i CVE-2026-109619 prema PHP timu omogućuju zlonamjerni kôd na daljinu bez prijave. Wiki koji je zamišljen „samo interno“, a dostupan je putem interneta, time je izravno ranjiv. A budući da wikiji rijetko stoje u fokusu IT-a, često rade na starim poslužiteljima, nerijetko još s PHP-om kao Apache modulom, načinom rada s najvišim rizikom prema PHP timu.
MediaWiki sigurnost: provjera verzije PHP-a i stanja zakrpe
Stranica Spezial:Version prikazuje verziju MediaWikija, PHP-a i baze podataka te sva instalirana proširenja i skinove. Ispravljene upstream verzije su 8.5.12, 8.4.27, 8.3.36 i 8.2.35. Mnogi wiki poslužitelji rade na Linux distribucijama s backportovima; prikazani broj tada ostaje isti iako je sustav zakrpan.
Ako wiki radi na PHP-u 8.1 ili starijem, PHP projekt više ne izdaje službena ažuriranja, samo minimalne backportove izvornog koda za 7.4, 8.0 i 8.1. Što tada vrijedi, sažima stranica PHP 8.1 i starije. Koje PHP verzije podržava Vaša verzija MediaWikija, provjerite prema sistemskim zahtjevima na mediawiki.org. Promjena PHP-a može zahtijevati nadogradnju MediaWikija.
Skripte za održavanje i job runneri rade putem PHP-a naredbenog retka. I ta verzija mora biti zakrpana. Ako red poslova radi kao trajna usluga, nakon ažuriranja i ona se mora ponovno pokrenuti, jednako kao web-poslužitelj ili PHP-FPM. Kod mod_php-a to znači ponovno pokretanje samog Apachea, jer je PHP tamo u procesu web-poslužitelja.
Razjasnite i kome wiki pripada. Interne wikije često je postavio neki stručni odjel i oni rade izvan redovitog održavanja poslužitelja. Bez jasne odgovornosti PHP ažuriranje tamo najduže ostaje neobavljeno.
Direktoriji i datoteke u MediaWikiju
| Mjesto | Sadržaj | Točka provjere |
|---|---|---|
LocalSettings.php |
Pristup bazi podataka, $wgSecretKey, $wgUpgradeKey, prava, postavke uploada |
Umetnuti kôd, nakon sumnje obnoviti ključeve |
images/ |
Učitane datoteke i sličice | Nema PHP datoteka, nema izvršavanja PHP-a |
extensions/, skins/ |
Proširenja i dizajni | Nepoznate ili izmijenjene datoteke |
cache/ |
Međuspremnik | Nakon čišćenja isprazniti |
maintenance/ |
Skripte za održavanje za naredbeni redak | Ne koristiti putem weba |
Direktorij uploada na razini web-poslužitelja ne bi smio izvršavati skripte. Pod Apacheom to, neovisno o načinu rada PHP-a, ide ovako:
<Directory "/var/www/wiki/images">
<FilesMatch "\.(php|phtml|phar)$">
Require all denied
</FilesMatch>
</Directory>
Neopasna prva provjera:
find images -type f -name "*.php*"
ls -l LocalSettings.php
U povijesti verzija provjerite stranice MediaWiki:Common.js i MediaWiki:Common.css. Izmjene tamo djeluju na svakog posjetitelja wikija i tipično su mjesto za ubačeni kôd.
Prava, grupe i proširenja
U MediaWikiju o sigurnosti odlučuju korisničke grupe. Pod Spezial:Benutzer i Spezial:Benutzerrechte provjerite tko pripada grupama Administratori, Birokrati i Interface-administratori. Interface-administratori mogu mijenjati JavaScript cijelog wikija; ta bi grupa trebala biti vrlo mala.
Za interni wiki čitanje bez prijave trebalo bi biti isključeno, a registracija novih računa blokirana. Uploade dopustite samo za vrste datoteka koje se doista trebaju. Proširenja donose vlastiti PHP kôd; neodržavana proširenja uz to usporavaju svaku nadogradnju. Za prava datoteka na poslužitelju orijentaciju daje vodič Prava datoteka na web-poslužitelju.
Što MediaWiki ažuriranje može, a što ne
MediaWiki ažuriranje zamjenjuje jezgru i zatvara poznate pogreške u njoj. Ne zakrpava PHP, ne pokreće ponovno PHP procese, ne mijenja ništa u LocalSettings.php i ne uklanja ni datoteke u images/ ni izmjene na MediaWiki:Common.js ni dodatne članove grupa. Ne dokazuje ni da prije zakrpe nitko nije čitao.
Brz pregled daju i dnevnici pod Spezial:Logbuch. Novi korisnički računi, promjene prava grupa i uređivanja sučeljnih stranica od 17.10.2026. tamo su zabilježeni s vremenom.
Kako PHP SOS konkretno pomaže?
- Provjeravamo verziju PHP-a, način rada i stanje backporta Vašeg wiki poslužitelja te dajemo potvrditi ponovno pokretanje.
- Osiguravamo logove od 20.10.2026., bazu podataka i datoteke.
- Provjeravamo
LocalSettings.php, uploade, proširenja, prava grupa i povijest verzija sučeljnih stranica. - U okviru PHP2Shell hitne pomoći s Vama ocjenjujemo mora li wiki ostati javno dostupan.
Česta pitanja
Pogađa li PHP2Shell MediaWiki?
Sam MediaWiki nema novu ranjivost, ali radi na PHP-u. Ako PHP poslužitelja nije zakrpan, napadač prema PHP timu može bez prijave izvršiti kôd. MediaWiki ažuriranje ne zatvara ranjivost.
Gdje vidim verziju PHP-a svog wikija?
Na stranici Spezial:Version MediaWiki navodi instalirani softver, među ostalim verziju PHP-a. Je li ugrađen backport, po tome ne prepoznajete; to potvrđuje operater poslužitelja.
Zašto je MediaWiki:Common.js rizik?
Sadržaj te stranice isporučuje se kao JavaScript svim posjetiteljima wikija. Tko ga može mijenjati, može izvršavati kôd u pregledniku svakog korisnika. Zato bi skupina Interface-administratora trebala biti vrlo mala.
Je li dovoljno wiki učiniti dostupnim samo interno?
Wiki samo u mreži tvrtke ili putem VPN-a znatno smanjuje rizik jer ga napadači s interneta ne mogu izravno dosegnuti. Zakrpati ipak morate, jer napad može doći i iz interne mreže.