Drupal turvauuendused — miks neid ei saa edasi lükata
🎧 Kuula kõiki artikleid järjest
Drupalil on üks küpsemaid turvaprotsesse avatud lähtekoodiga sisuhaldusplatvormide seas. Turvapaiga avaldamine on alles esimene samm — tegelik töö algab selle rakendamisest.
Miks Drupal turvauuendused olulised on?
Paljud veebiomanikud eeldavad, et tarkvara uuendamine tähendab ühe nupu vajutamist.
Drupal-projektides see tavaliselt nii ei ole.
Põhjus on lihtne: Drupal ei ole ainult üks tarkvarapakett. Veeb koosneb Drupali tuumast, moodulitest, teemadest, PHP-versioonist, serveritarkvarast ja sageli ka väliste teenuste integratsioonidest.
Kui üks neist komponentidest sisaldab turvanõrkust, võib see mõjutada kogu süsteemi.
Seetõttu ei ole turvauuendused valikuline hooldustegevus, vaid oluline osa veebiplatvormi turvalisusest.
Kuidas Drupal Security Team töötab?
Drupalil on eraldi turvatiim (Drupal Security Team), kes vastutab haavatavuste käsitlemise ja turvaadvisooride avaldamise eest.
Tüüpiline protsess näeb välja järgmine:
- Haavatavusest teavitatakse turvatiimi privaatselt.
- Turvatiim hindab riski ja koordineerib paranduse loomist.
- Valmib turvapaik.
- Avaldatakse uus versioon koos turvaadvisooriga.
- Haavatavuse tehnilised detailid muutuvad avalikuks.
See tähendab, et pärast turvapaiga avaldamist ei tea haavatavusest ainult süsteemi omanikud.
Seda teavad ka ründajad.
Praktikas tähendab see sageli, et mõne tunni jooksul pärast turvaadvisoori avaldamist hakkavad internetis tööle automaatsed skannerid, mis otsivad paikamata süsteeme.
Mida turvauuenduse rakendamine tegelikult tähendab?
Kaasaegsed Drupal-projektid kasutavad sõltuvuste haldamiseks Composerit.
Lihtsustatud näide:
composer update drupal/core --with-dependenciesTegelikkuses võib uuendus mõjutada märksa rohkemat.
Näiteks:
- mõni moodul ei ühildu uue versiooniga;
- kohandatud kood kasutab aegunud API-sid;
- konfiguratsioon vajab muutmist;
- andmebaasi skeem vajab uuendamist;
- teema vajab kohandamist.
Seetõttu ei lõpe töö paketiuuendusega.
Pärast seda tuleb kontrollida, et veeb käitub endiselt ootuspäraselt.
Miks testimine on vajalik?
Turvapaiga eesmärk on eemaldada risk, mitte tekitada uut probleemi.
Seetõttu tuleb enne tootmiskeskkonda jõudmist kontrollida vähemalt järgmisi töövooge:
- sisselogimine;
- vormid;
- otsing;
- kasutajakontod;
- e-poe ostuprotsess;
- välised integratsioonid.
Lihtsa veebi puhul võib see võtta vähem kui tunni.
Keerukama platvormi puhul võib testimine võtta terve tööpäeva või rohkem.
Miks kasutatakse mitut keskkonda?
Professionaalses Drupal-arenduses kasutatakse tavaliselt vähemalt kolme keskkonda:
Arenduskeskkond
Siin tehakse muudatused ja paigaldatakse uuendused.
Testkeskkond
Siin kontrollitakse, et süsteem töötab ootuspäraselt.
Tootmiskeskkond
Avalik veeb, mida kasutavad külastajad.
Selline lähenemine vähendab riski, et vigane uuendus jõuab otse kasutajateni.
Turvapaik võib olla kiireloomuline, kuid selle rakendamine peab olema kontrollitud.
Miks mõned Drupal-saidid jäävad uuendamata?
Praktikas korduvad samad põhjused.
Puudub hoolduspartner
Veeb valmis, projekt lõppes ja keegi ei vastuta enam uuenduste eest.
Kardetakse midagi katki teha
Varasem halb kogemus võib viia olukorrani, kus uuendusi lihtsalt ei julgeta paigaldada.
Tehniline võlg
Aastate jooksul kogunenud vananenud moodulid ja kohandused muudavad iga uuenduse keeruliseks.
Omanik ei tea riskidest
Sageli eeldatakse, et veeb töötab seni, kuni midagi nähtavalt katki ei lähe.
Turvalisuse puhul see loogika ei kehti.
Paljud haavatavused ei anna endast märku enne, kui süsteem on juba kompromiteeritud.
Mis juhtub, kui turvauuendusi edasi lükata?
Iga rakendamata turvapaik suurendab riski.
Võimalikud tagajärjed on näiteks:
- pahavara lisamine veebile;
- SEO-rämpspost;
- kasutajakontode kompromiteerimine;
- andmelekked;
- serveri kasutamine rünnakute platvormina.
Sageli ei märka veebi omanik probleemi kohe.
Mõnikord avastatakse see alles siis, kui:
- Google märgib saidi ohtlikuks;
- kasutajad kurdavad;
- serveripakkuja saadab hoiatuse.
Regulaarne hooldus vähendab riski
Turvauuenduste haldamine ei tähenda ainult uute versioonide paigaldamist.
See tähendab ka:
- turvaadvisooride jälgimist;
- uuenduste planeerimist;
- testimist;
- dokumenteerimist;
- kontrollitud juurutamist.
Seetõttu sisaldavad Drupal hoolduslepingud tavaliselt nii tehnilist järelevalvet kui ka regulaarset uuendamist.
Mida väiksem on vahe kahe uuenduse vahel, seda väiksem on tavaliselt ka risk ja töömaht.
Kokkuvõte
Drupal turvauuendused ei ole lihtsalt tehniline formaalsus.
Turvapaiga avaldamise hetkest alates teavad võimalikust haavatavusest nii süsteemi omanikud kui ka ründajad. Seetõttu ei ole küsimus selles, kas uuendada, vaid kui kiiresti ja kontrollitult seda teha.
Hea praktika on kasutada Composerit, testkeskkonda ja regulaarset hooldusprotsessi, mis võimaldab turvauuendused rakendada enne, kui neist saab reaalne risk.
Mida kauem uuendusi edasi lükata, seda keerulisemaks ja kallimaks muutub nende hilisem rakendamine.

Vajad Drupal abi?
Kui artikkel puudutab sinu olukorda, ei pea kõike lõpuni lugema. Sinuga suhtleb päris inimene ja aitab järgmise sammuni jõuda.