Pirmadienį žiniasklaida mirgėte mirgėjo nuo antraščių, kad strigo tiek www.manodienynas.lt, tiek klase.eduka.lt, tiek ir tamo.lt. Šiuose puslapiuose vietoje įprasto sistemos vaizdo mokiniai ir mokytojai matė Cloudflare klaidą. Kas yra Cloudflare?
Cloudflare – tai paprastai tariant yra interneto srauto optimizavimo, turinio perdavimo ir apsaugos nuo įsilaužimų platforma, kuria naudojosi visos trys minėtos edukacinės sistemos. Bet kokio internetinio portalo kūrėjai, vietoje to, kad srauto optimizacijos ir apsaugos funkcijas kurtų patys, naudojasi Cloudflare paslaugomis ir tai visiškai suprantama.
Tačiau visiškai nesuprantamas klaidos pranešimas "The website has been temporarily rate limited", kas reiškia, kad prisijungimų skaičius viršijo konfigūracijos parametrus, ir naujus prisijungimus minėta platforma atmetė. Tiksliau prognozuoti galimą prisijungimų skaičių, prisijungti prie savo Cloudflare paskyros ir pakeisti maksimalų galimą prisijungimų skaičių tikrai buvo galima iš anksto, ir tam nereikėjo dviejų savaičių.
Kas būtų įvykę, jeigu visi bandymai atversti www.manodienynas.lt, klase.eduka.lt ar tamo.lt būtų pasiekę tikslą? Greičiausiai, nemažai naudotojų būtų strigę ties prisijungimo langu, kuomet sistemos nebūtų spėjusios laiku apdoroti užklausų, kurios visos kreipiasi į centralizuotą duomenų bazę, taip apkraudamos tiek procesoriaus, tiek disko resursus viename dideliame interneto serveryje. Jei kiekviena iš šitų edukacinių sistemų buvo kuriama kaip neskaidoma, viename serveryje diegiama sistema, pritaikymas prie didesnio naudotojų skaičiaus truks tikrai ilgiau nei dvi savaites – galbūt ir du mėnesius.
Realiausi du scenarijai. Visų pirma, sistemos bus lopomos „greituoju būdu“, pritempiant greitaveiką iki patenkinamos. Visų antra, mokytojai ir mokiniai migruos prie kitų platformų, pavyzdžiui, „Zoom“, „Moodle“, vartotojų srautas ir apkrova sumažės natūraliai.
Kodėl tokios platformos kaip „Zoom“ ar „Moodle“ veikia su minimaliais trikdžiais, ar net visai be sutrikimų? Minėtos platformos, tokios kaip ir dauguma kitų populiarių platformų („Spotify“, „Netflix“), yra išskaidytos, t.y. turi atskirus sistemos modulius, atsakingus už prisijungimą, paiešką, daugialypės medijos pateikimą, ataskaitas ir kt. Kiekviena iš šių sistemų gali didinti ar mažinti savo vadinamųjų „klonų“ skaičių ir, greičiausiai, turi visų reikiamų duomenų kopiją, taip yra išvengiama visos sistemos perkrovimo.
Ar lietuviškos el. mokymosi platformos buvo projektuotos atlaikyti didelius duomenų srautus? Tiksliai pasakyti sunku, tačiau įmanoma peržvelgti, sistemų trūkumus, kurie yra prienami ir matomi viešai. Restorane, matydami, kokia yra virtuvės higiena, aplinka ir padavėjų apranga, galime spręsti, ar norime jame vakarieniauti. Panašiai galima susidaryti įspūdį ir apie lietuviškų el. mokymosi platformų „higieną“.
1. https://dienynas.tamo.lt/
Prisijungimo lange http antraštės parodo, kad turinys yra spaustas Brotli algoritmu – progresyvu ir sveikintina, tačiau čia visas nuopelnas tenka Cloudflare platformai. Neramina tai, kad sistema parodo x-aspnet-version ir x-aspnetmvc-version reikšmes. Jei šią sistemą kada nors būtų auditavę išoriniai interneto saugumo specialistai, jie nebūtų leidę šios sistemos diegti viešai dėl OWASP A3:2017-Sensitive Data Exposure pažeidžiamumo. ASP.NET MVC 5.2 pakilimo laikai buvo nuo 2014 iki 2018 metų. Tad belieka tikėtis, kad yra naudojama, bent jau vėliausia, 2018 metų, versija.
Prisijungimo forma turi apsaugą nuo CSRF – kas yra gerai, tačiau keli slapukai neapsaugoti „HttpOnly“ arba „Secure“ atributais. Ar tai reiškia, kad kažkas gali jais manipuliuoti ir prisijungti prie sistemos? Tikėkimės, kad ne.
Apmaudu, kad prieš diegimą niekas netikrina ir javascript optimizavimo klaidų.
Išvada: virtuvė labai nešvari, saugumo procedūros neegzistuoja, sistema greičiausiai niekada nebuvo testuota dėl greitaveikos.
2. klase.eduka.lt
Http antraštės prisijungimo lange atrodo gerai, išoriniai interneto saugumo specialistai neturėtų prie ko prikibti. klase.eduka.lt ir dienynas.eduka.lt yra dvi atskiros sistemos, todėl jos, atrodo, geriau paskirstytų bandančiųjų prisijungti ir jau dirbančiųjų srautus.
Šioje vietoje, galima būtų optimaliai apjungti javascript failus.
Created by Aurimas – šaunu, Aurimai, tačiau prieš diegiant viešą sistemą, šiuos komentarus galima būtų ir pašalinti.
Išvada: virtuvė galėtų būti švaresnė, virėjai (galbūt) nepatyrę, bet einama gera kryptimi. Susitvarkykite su Cloudflare konfigūracija, ir, galbūt, jūsų platformai viskas bus gerai.
3. https://www.manodienynas.lt/
Prisijungimo puslapis atrodo neblogai. Http antraštės tvarkingos, nė neįtartum, kad svetainė kurta su PHP – tai parodo tik prisijungimo sesijos slapuko pavadinimas „pagal nutylėjimą“. Visas platformos „grožis“ pasimato jau prisijungus prie sistemos – kodo elementai sudėti bet kaip, akis bado rašybos klaidos programos kode (tiek anglų, tiek lietuvių kalbomis):
Nuostabu, tačiau pati „geriausia“ šio dienyno funkcija – reklamų rodymas bene kiekviename vidiniame puslapyje – vis dar veikia be problemų. Galbūt, esant sudėtingai situacijai ir lūžtant sistemoms, būtų įmanoma išsiversti kurį laiką be reklamų ir sistemos greitaveika būtų geresnė?
Prisijungimo puslapyje potencialiam įsilaužėliui akis bado informacija, kad minimalus slaptažodžio ilgis yra 8 simboliai, taip pat nurodyta, kuriuos abėcėlės simbolius naudoti, norint jį „nulaužti“. Tai dar viena OWASP kategorizuojama problema A6:2017-Security Misconfiguration, dėl kurios išoriniai saugumo specialistai nebūtų leidę sistemos diegti viešai.
Išvada: akis bado labai daug sistemos trūkumų. Abejotina, kad ši sistema greitu laiku bus patobulinta bent iki patenkinamo lygio.
Nors tikėtina, kad mokymas Lietuvoje nuotoliniu būdu bus ir toliau vyks chaotiškai, vis dėlto yra šalyje tiek valstybinių, tiek privačių mokyklų, kurios nelaukė priverstinių atostogų pabaigos, o ėmėsi visų įmanomų priemonių, kad kuo greičiau susitvarkytų su visais iššūkiais ir kaip įmanoma geriau pasirengtų tokiam darbui. Belieka tikėtis, kad visi šie išvardyti nesklandumai bus kaip įmanoma operatyviau sutvarkyti ir netrikdys mokytojų darbo.
Apie autorių
Komentaro autorius yra JAV programavimo paslaugų įmonės „Devbridge“ Technologinių praktikų vadovas Vytautas Paulauskas.
„Devbridge“ – JAV programavimo paslaugų įmonė, kurios centrinė būstinė yra Čikagoje. Tarptautinę įmonės komandą sudaro daugiau nei 430 darbuotojų, įsikūrusių Čikagos, Toronto, Londono, Kauno ir Vilniaus padaliniuose. Įmonės klientai – „Fortune 1000“ sąrašo įmonės, pasaulinės finansų, paslaugų ir gamybos sektorių kompanijos.