Aktuālā situācija: PHP2Shell. Divas kritiskas PHP ievainojamības (CVSS 9.2) ļauj izpildīt ļaunprātīgu kodu bez pieteikšanās. Ielāpi kopš 21.10.2026.Kas jādara tagad →

Moodle drošība pēc PHP2Shell: kā pareizi aizsargāt mācību platformas

Moodle pārvalda dalībnieku datus, vērtējumus un pārbaudījumu darbus, bieži nepilngadīgo. Pēc PHP2Shell svarīgi ir PHP ielāps, tīmekļa un cron pārstartēšana, aizsargāts moodledata un pārbaudīti spraudņi.

Aktuāls uz 4 min lasīšanas laiksPlatformas

Īsi: Moodle drošība pēc PHP2Shell ir atkarīga no servera PHP, nevis no Moodle. Tā kā mācību platformas apstrādā skolēnu, studentu un darbinieku datus, svarīga ir ātra rīcība. Ielāpojiet PHP tīmeklim un cron, pārstartējiet visus procesus un pārbaudiet config.php, moodledata, spraudņus un admin kontus.

Ko PHP2Shell nozīmē Moodle operatoriem

Moodle ir izplatīts skolās, augstskolās, tālākizglītībā un uzņēmumu iekšējās apmācībās. Platforma pārvalda vārdus, e-pasta adreses, piederību kursiem, vērtējumus, pārbaudījumu darbus un foruma ierakstus, skolās bieži nepilngadīgo. PHP ievainojamības CVE-2026-109618 un CVE-2026-109619 saskaņā ar PHP komandu ļauj izpildīt ļaunprātīgu kodu no attāluma bez pieteikšanās.

Moodle serveri gandrīz vienmēr ir pieejami no interneta, jo izglītojamie strādā no mājām. BSI (Vācijas Federālais informācijas drošības birojs) 3. brīdinājuma līmenī iesaka nekavējoties atjaunināt un, ja tas nav iespējams, tīmekļa serverus uz laiku atvienot no tīkla. Skolām un izglītības iestādēm tas organizatoriski ir sarežģīti, bet plānojams. Nozarei specifiskus norādījumus atradīsiet sadaļā IT drošība skolām un izglītības iestādēm.

Moodle drošība: PHP versijas pārbaude tīmeklim un cron

Sadaļā Vietnes administrēšana > Serveris > Vide Moodle pārbauda PHP versiju un citas prasības. Sadaļā Serveris > PHP info administratori papildus redz pilnos PHP datus. Abi apraksta tīmekļa PHP.

Moodle turklāt vajadzīgs cron uzdevums, kas regulāri izpilda admin/cli/cron.php ar komandrindas PHP. Šī versija var atšķirties, un tai jābūt ielāpotai tāpat. Labotās upstream versijas ir 8.5.12, 8.4.27, 8.3.36 un 8.2.35; backport labojumiem bieži ir vecāki numuri. Kuras PHP versijas atbalsta jūsu Moodle versija, pārbaudiet pēc sistēmas prasībām dokumentācijā vietnē moodle.org. Kā pēc tam sakārtoti pārstartēt visus procesus, skaidro raksts PHP-FPM un visu worker procesu pārstartēšana.

Direktorijas un konfigurācija Moodle

Vieta Saturs Pārbaudes punkts
config.php Datubāzes piekļuve, wwwroot, ceļš uz moodledata Ievietots kods, paroli aizdomu gadījumā mainīt
moodledata/ Failu glabātuve, iesniegtie darbi, sesijas, kešatmiņas Ārpus dokumentu saknes, nav PHP failu
mod/, blocks/, local/, theme/ Aktivitātes, bloki, lokālie paplašinājumi, dizaini Nezināmi vai mainīti spraudņi
admin/cli/ Komandrindas skripti Lietojami tikai caur CLI

Moodle piedāvā iestatījumu, kas novērš programmu ceļu maiņu caur tīmekļa saskarni. Tam jābūt config.php, un tas apgrūtina programmu izsaukšanu serverī ar nolaupītu admin kontu:

$CFG->preventexecpath = true;

Droši pārbaudes soļi komandrindā, kā tīmekļa servera lietotājs:

# Izvadīt paša Moodle statusa un drošības pārbaudes
php admin/cli/checks.php
php admin/cli/checks.php --type=security
# Meklēt PHP failus datu direktorijā (pielāgot ceļu)
find /pfad/zu/moodledata -type f -name "*.php"
Svarīgi

Aizdomu gadījumā par datu noplūdi skolā vai augstskolā ātri iesaistās vairākas puses: skolas vadība, dibinātājs, datu aizsardzības speciālisti un, iespējams, uzraudzības iestāde. Saglabājiet žurnālus no 20.10.2026 un dokumentējiet katru pasākumu ar laiku.

Spraudņi, admin konti un augšupielādes

Praktisks norādījums plānošanai: PHP atjauninājumi un pārstartēšanas nedrīkstētu iekrist pārbaudījumu periodos vai notiekošos tiešsaistes testos. Moodle ir uzturēšanas režīms, kas lietotājus informē iepriekš. Pret PHP2Shell tas tomēr neaizsargā, jo arī uzturēšanas lapu piegādā PHP.

Moodle dzīvo ar spraudņiem: aktivitātēm, pārbaudījumu rīkiem, savienojumiem ar videokonferencēm un skolu pārvaldību. Katrs spraudnis ir papildu PHP kods un tam jāatbilst Moodle versijai. Sadaļā Vietnes administrēšana Moodle rāda pieejamos atjauninājumus kodolam un spraudņiem. Spraudņus, kurus neviens vairs neizmanto, noņemiet pilnībā.

Pārbaudiet vietnes administratoru sarakstu un globālās lomas ar plašām tiesībām. Pasniedzējiem un kursu veidotājiem parasti globālas tiesības nav vajadzīgas. Aktivizējiet divfaktoru autentifikāciju vismaz administratoriem. Atļautajiem failu tipiem augšupielādēm jābūt pēc iespējas šaurākiem; norādījumus par to sniedz raksts Failu augšupielādes PHP droša īstenošana.

Ko Moodle atjauninājums var un ko ne

Moodle atjauninājums aizver kļūdas Moodle un bieži ļauj izmantot jaunākas PHP versijas. Tas neielāpo PHP, nepārstartē ne tīmekļa, ne cron procesus un nenoņem svešus failus no moodledata, papildu administratorus un mainītus spraudņus. Arī to, vai laikā pirms ielāpa dati ir aizplūduši, atjauninājums neatbild.

Moodle pieteikšanās un darbības papildus reģistrē savos žurnālos, ko administratori skatās sadaļā Vietnes administrēšana > Pārskati. Meklējiet tur mērķtiecīgi neparastas administratoru pieteikšanās, jaunus kontus ar globālām lomām un spraudņu instalācijas kopš 17.10.2026. Eksportējiet šos ierakstus, pirms automātiskā tīrīšana dzēš vecākus datus. Pārskati papildina tīmekļa servera žurnālus, bet tos neaizstāj.

Kā PHP SOS palīdz konkrēti?

  • Mēs noskaidrojam atbildību par PHP un liekam apstiprināt ielāpa stāvokli un tīmekļa un cron pārstartēšanu.
  • Mēs saglabājam žurnālus, datubāzi un moodledata pirms jebkādām izmaiņām.
  • Mēs pārbaudām konfigurāciju, spraudņus, administratorus, lomas un augšupielādes.
  • Pēc vēlēšanās mēs platformu pastāvīgi uzturam drošības uzturēšanas līgumā, saskaņojot ar mācību gadu un pārbaudījumu laikiem.

Biežāk uzdotie jautājumi

Vai Moodle ir skarts ar PHP2Shell?

Pašam Moodle jaunas ievainojamības nav, taču tas darbojas uz PHP. Ja servera PHP nav ielāpots, uzbrucējs saskaņā ar PHP komandu var bez pieteikšanās izpildīt kodu. Moodle atjauninājums tam neko nemaina.

Kur Moodle redzu PHP versiju?

Sadaļā Vietnes administrēšana > Serveris > Vide Moodle pārbauda PHP versiju pret savām prasībām. Vai backport ir ieviests, Moodle nerāda; to apstiprina servera operators.

Kāpēc moodledata jāatrodas ārpus tīmekļa direktorijas?

Tur atrodas augšupielādētie faili, iesniegtie darbi, sesijas un kešatmiņas. Ja direktorija ir pieejama caur tīmekli, saturu var izsaukt tieši. Tāpēc Moodle prasa vietu ārpus dokumentu saknes.

Kurš skolās atbild par PHP atjauninājumu?

Tas ir dažāds: skolas dibinātājs, zemes uzņēmums, pašvaldības datu centrs vai pakalpojumu sniedzējs. Rakstiski noskaidrojiet atbildību un likt sev apstiprināt ielāpa stāvokli un pārstartēšanu.

Avoti

Tūlītējs kontakts

Katra stunda ir svarīga. Rakstiet mums tūlīt.

Īsi aprakstiet sistēmu, PHP versiju un novēroto. Mēs sazināsimies, noskaidrosim situāciju un strādāsim attālināti, līdz incidents ir slēgts un dokumentēts.

Tūlītēja palīdzība