Trenutno stanje: PHP2Shell. Dve kritični ranljivosti PHP (CVSS 9,2) omogočata izvedbo škodljive kode brez prijave. Popravki od 21. 10. 2026.Kaj je zdaj treba storiti →

Varnost Moodle po PHP2Shell: pravilna zaščita učnih platform

Moodle upravlja podatke udeležencev, ocene in oddane naloge, pogosto mladoletnih oseb. Po PHP2Shell štejejo popravek PHP, ponovni zagon spleta in crona, zaščiten moodledata in preverjeni vtičniki.

Stanje 4 min branjaPlatforme

Na kratko: Varnost Moodle je po PHP2Shell odvisna od PHP na strežniku, ne od Moodle. Ker učne platforme obdelujejo podatke dijakov, študentov in zaposlenih, je hitro ukrepanje pomembno. Popravite PHP za splet in cron, znova zaženite vse procese ter preglejte config.php, moodledata, vtičnike in skrbniške račune.

Kaj PHP2Shell pomeni za upravljavce Moodle

Moodle je razširjen na šolah, visokih šolah, v izobraževanju odraslih in za interna usposabljanja v podjetjih. Platforma upravlja imena, e-poštne naslove, članstva v tečajih, ocene, oddane naloge in prispevke na forumih, na šolah pogosto mladoletnih oseb. Ranljivosti PHP CVE-2026-109618 in CVE-2026-109619 po navedbah ekipe PHP omogočata izvajanje škodljive kode na daljavo brez prijave.

Strežniki Moodle so skoraj vedno dosegljivi z interneta, ker učenci delajo od doma. BSI (nemški zvezni urad za informacijsko varnost) pri opozorilni stopnji 3 priporoča takojšnjo posodobitev in, če to ni mogoče, začasni odklop spletnih strežnikov z omrežja. Za šole in izobraževalne ustanove je to organizacijsko težko, vendar načrtljivo. Panožne napotke najdete v prispevku IT-varnost za šole in izobraževalne ustanove.

Varnost Moodle: preverite različico PHP za splet in cron

Pod Administracija strani > Strežnik > Okolje Moodle preveri različico PHP in druge zahteve. Pod Strežnik > Informacije o PHP skrbniki dodatno vidijo celotne podatke PHP. Oboje opisuje PHP za splet.

Moodle poleg tega potrebuje cron opravilo, ki redno izvaja admin/cli/cron.php prek PHP v ukazni vrstici. Ta različica se lahko razlikuje in mora biti prav tako popravljena. Odpravljene različice izvorne kode so 8.5.12, 8.4.27, 8.3.36 in 8.2.35; backporti pogosto nosijo starejše številke. Katere različice PHP podpira vaša različica Moodle, preverite v sistemskih zahtevah v dokumentaciji na moodle.org. Kako nato čisto znova zaženete vse procese, je opisano v prispevku Ponovni zagon PHP-FPM in vseh workerjev.

Mape in konfiguracija v Moodle

Mesto Vsebina Točka preverjanja
config.php Dostop do podatkovne zbirke, wwwroot, pot do moodledata Vstavljena koda, ob sumu spremeniti geslo
moodledata/ Datotečno skladišče, oddane naloge, seje, predpomnilniki Zunaj korenske mape dokumentov, brez datotek PHP
mod/, blocks/, local/, theme/ Aktivnosti, bloki, lokalne razširitve, podobe Neznani ali spremenjeni vtičniki
admin/cli/ Skripte za ukazno vrstico Uporabne samo prek CLI

Moodle ponuja nastavitev, ki preprečuje spreminjanje poti programov prek spletnega vmesnika. Sodi v config.php in otežuje klicanje programov na strežniku prek ugrabljenega skrbniškega računa:

$CFG->preventexecpath = true;

Neškodljivi pregledi v ukazni vrstici, kot uporabnik spletnega strežnika:

# Izpiši Moodlova lastna preverjanja stanja in varnosti
php admin/cli/checks.php
php admin/cli/checks.php --type=security
# Poišči datoteke PHP v podatkovni mapi (prilagodi pot)
find /pfad/zu/moodledata -type f -name "*.php"
Pomembno

Ob sumu na uhajanje podatkov na šoli ali visoki šoli je hitro vključenih več služb: vodstvo šole, ustanovitelj, pooblaščenci za varstvo podatkov in po potrebi nadzorni organ. Zavarujte dnevnike od 20. 10. 2026 in dokumentirajte vsak ukrep z uro.

Vtičniki, skrbniški računi in nalaganja

Praktičen napotek za načrtovanje: posodobitve PHP in ponovni zagoni naj ne padejo v obdobja izpitov ali v tekoče spletne teste. Moodle ima način vzdrževanja, ki uporabnike prej obvesti. Proti PHP2Shell pa ne ščiti, ker tudi vzdrževalno stran dostavlja PHP.

Moodle živi od vtičnikov: aktivnosti, orodij za preverjanje znanja, povezav z videokonferencami in šolskim upravljanjem. Vsak vtičnik je dodatna koda PHP in mora ustrezati različici Moodle. Pod Administracija strani Moodle prikaže razpoložljive posodobitve za jedro in vtičnike. Vtičnike, ki jih nihče več ne uporablja, popolnoma odstranite.

Preverite seznam skrbnikov strani in globalne vloge z obsežnimi pravicami. Učitelji in ustvarjalci tečajev praviloma ne potrebujejo globalnih pravic. Dvofaktorsko prijavo vklopite vsaj za skrbnike. Dovoljene vrste datotek za nalaganja naj bodo čim ožje; napotke nudi prispevek Varno izvajanje nalaganja datotek v PHP.

Kaj posodobitev Moodle zmore in česa ne

Posodobitev Moodle zapre napake v Moodle in pogosto omogoči novejše različice PHP. PHP ne popravi, ne zažene znova ne spletnih ne cron procesov ter ne odstrani tujih datotek iz moodledata, dodatnih skrbnikov in spremenjenih vtičnikov. Tudi na vprašanje, ali so podatki v času pred popravkom iztekli, posodobitev ne odgovori.

Moodle prijave in dejanja dodatno beleži v lastne dnevnike, ki jih skrbniki pregledajo pod Administracija strani > Poročila. Tam ciljno iščite opazne prijave skrbnikov, nove račune z globalnimi vlogami in namestitve vtičnikov od 17. 10. 2026. Te vnose izvozite, preden samodejna čiščenja izbrišejo starejše podatke. Poročila dopolnjujejo dnevnike spletnega strežnika, jih pa ne nadomeščajo.

Kako PHP SOS pomaga konkretno?

  • Razjasnimo pristojnost za PHP in dosežemo potrditev stanja popravkov in ponovnega zagona spleta in crona.
  • Dnevnike, podatkovno zbirko in moodledata zavarujemo pred vsako spremembo.
  • Preverimo konfiguracijo, vtičnike, skrbnike, vloge in nalaganja.
  • Na željo platformo trajno oskrbujemo v varnostni pogodbi o vzdrževanju, usklajeno s šolskim letom in obdobji izpitov.

Pogosta vprašanja

Ali je Moodle prizadet zaradi PHP2Shell?

Moodle sam nima nove ranljivosti, vendar teče na PHP. Če je PHP na strežniku nepopravljen, lahko napadalec po navedbah ekipe PHP izvede kodo brez prijave. Posodobitev Moodle tega ne spremeni.

Kje v Moodle vidim različico PHP?

Pod Administracija strani > Strežnik > Okolje Moodle preveri različico PHP glede na svoje zahteve. Ali je nameščen backport, Moodle ne pokaže; to potrdi upravljavec strežnika.

Zakaj mora biti moodledata zunaj spletne mape?

Tam so naložene datoteke, oddane naloge, seje in predpomnilniki. Če je mapa dosegljiva prek spleta, je vsebino morda mogoče prevzeti neposredno. Moodle zato zahteva mesto zunaj korenske mape dokumentov.

Kdo je na šolah pristojen za posodobitev PHP?

To je različno: šolski ustanovitelj, državni zavod, občinski računalniški center ali izvajalec. Pristojnost razjasnite pisno in si dajte potrditi stanje popravkov in ponovni zagon.

Viri

Takojšnji stik

Vsaka ura šteje. Pišite nam zdaj.

Na kratko opišite sistem, različico PHP in opažanje. Odzovemo se, razjasnimo stanje in delamo na daljavo, dokler incident ni zaključen in dokumentiran.

Takojšnja pomoč