lanso i sistemit të menaxhimit të përmbajtjes web . Kyçimi ve rëndësisë për realizimin e kontrollit të përditësimeve dhe degradimeve përmes nënshkrimit digjital.
Derisa deri tani, kur instalohej pĂ«rditĂ«simi nĂ« WordPress, faktori kryesor i sigurătĂ« ishte besimi nĂ« infrastrukturĂ«n dhe serverĂ«t e WordPress-it (pas ngarkimit, kryhej verifikimi i hash-it pa verifikimin e burimit). NĂ« rast tĂ« kompromitimit tĂ« serverĂ«ve tĂ« projektit, sulmuesit kishin mundĂ«sinĂ« pĂ«r tĂ« zĂ«vendĂ«suar pĂ«rditĂ«simin dhe pĂ«r tĂ« shpĂ«rndarĂ« kodin e dĂ«mshĂ«m nĂ« mes tĂ« faqeve tĂ« internetit qĂ« pĂ«rdorin sistemin e instalimit automatik tĂ« pĂ«rditĂ«simeve. Sipas modelit tĂ« dorĂ«zimit tĂ« besueshĂ«m tĂ« aplikosur mĂ« parĂ«, nĂ« anĂ«n e pĂ«rdoruesve, njĂ« zĂ«vendĂ«sim i tillĂ« do tĂ« kishte mbetur i paevituar.
Duke marrë në konsideratë se sipas projektit w3techs, plataformë WordPress përdoret në 33.8% të faqeve në rrjet, incidenti do të kishte marrë përmasa katastrofike. Ndërkohë, rreziku i kompromitimit të infrastrukturës nuk ishte hipotetik, por mjaft real. Për shembull, disa vjet më parë një nga hulumtuesit e sigurisë një dobësi që lejonte sulmuesin të ekzekutonte kodin e tij në anën e serverit api.wordpress.org.
Në rastin e përdorimit të nënshkrimeve digjitale, marrja e kontrollit mbi serverin e shpërndarjes së përditësimeve nuk do të çonte në kompromitimin e sistemeve të përdoruesve, pasi për të kryer një sulm do të nevojitej gjithashtu të merrej çelësi sekret i ruajtur veçmas, me anë të të cilit bëhet nënshkrimi i përditësimeve.
Zbatimi i kontrollit të burimit të përditësimeve përmes nënshkrimit digjital pengohej nga fakti se mbështetja për algoritmet e nevojshme kriptografike u shfaq në paketën standarde të PHP relativisht së fundmi. Algoritmet e nevojshme kriptografike u futën falë integrimit të bibliotekës në përbërjen kryesore . Por si versioni minimalisht i mbështetur në WordPress është deklaruar Zgjedhja e daljes ishte
dhe përfshirja në përbërjen e WordPress 5.2 të një varianti kompakt të Libsodium - Sodium Compat , në të cilin është implementuar një grup minimal algoritmesh për verifikimin e nënshkrimeve digjitale në gjuhën PHP. Zbatimi nuk është ideal në aspektin e performancës, por zgjidh plotësisht problemin e kompatibilitetit dhe lejon zhvilluesit e shtesave të fillojnë të implementojnë algoritmet moderne të kriptografisë.
Për formimin e nënshkrimeve digjitale është angazhuar algoritmi , i zhvilluar me pjesëmarrjen e Daniel Bernstein (Daniel J. Bernstein). Nënshkrimi digjital formohet për vlerën e hash-it SHA384, e cila është llogaritur nga përmbajtja e paketës me përditësimin. Ed25519 ofron një nivel sigurie më të lartë se ECDSA dhe DSA, dhe tregon një shpejtësi shumë të lartë verifikimi dhe krijimi nënshkrimesh. Rezistenca ndaj thyerjes për Ed25519 është rreth 2^128 (në mesatar, për të sulmuar Ed25519 do të nevojiten rreth 2^140 operacione bit, e cila përkon me rezistencën e algoritmeve si NIST P-256 dhe RSA me një përmasë çeliku prej 3000 bit ose me një algoritëm blokimi 128-bit). Ed25519 gjithashtu nuk është i ndjeshëm ndaj problemeve të kolizionit në hash-e, nuk është i ndjeshëm ndaj sulmeve përmes analizës së kohës në cache (cache-timing) dhe sulmeve nga kanale të jashtme.
Në versionin WordPress 5.2, verifikimi i nënshkrimit digjital për momentin mbulon vetëm përditësimet kryesore të platformës dhe nuk çon automatikisht në bllokimin e përditësimeve, por vetëm informon përdoruesin për ndonjë problem që ka lindur. Ka vendosur që bllokimi të mos përfshihet menjëherë për shkak të nevojës për një verifikim të plotë dhe për të rrethuar . Në të ardhmen planifikohet gjithashtu që verifikimi i nënshkrimit digjital të shtohet për verifikimin e burimit të instalimit të temave dhe shtesave (prodhuesit do të jenë në gjendje të nënshkruajnë lëshimet me çelësin e tyre).
Përveç mbështetjes për nënshkrimet digjitale, në WordPress 5.2 mund të përmendim ndryshimet e mëposhtme:
- Në seksionin "Shëndeti i Saiteve" janë shtuar dy faqe të reja për debugimin e problemeve tipike të konfigurimit, si dhe është ofruar një formular, nëpërmjet të cilit zhvilluesit mund të lënë informacion për debugim administratoreve të faqes;
- ĂshtĂ« shtuar implementimi i "ekranit tĂ« bardhĂ« tĂ« vdekjes", i cili shfaqet nĂ« rastin e problemeve fatale dhe ndihmon administratorin tĂ« riparojĂ« vetĂ« problemet e lidhura me shtesat ose temat, duke kaluar nĂ« njĂ« mod tĂ« veçantĂ« rikuperimi pas dĂ«shtimit;
- ĂshtĂ« implementuar njĂ« sistem kontrolli tĂ« pĂ«rputhshmĂ«risĂ« me plugin-in, qĂ« kontrollon automatikisht mundĂ«sinĂ« e pĂ«rdorimit tĂ« plugin-it nĂ« konfigurimin aktual duke marrĂ« parasysh versionin e pĂ«rdorur tĂ« PHP. NĂ«se pĂ«r funksionimin e plugin-it kĂ«rkohet njĂ« version mĂ« i ri i PHP-sĂ«, sistemi do tĂ« bllokojĂ« automatikisht aktivizimin e kĂ«tij plugin-i;
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r aktivizimin e moduleve me kod JavaScript duke pĂ«rdorur dhe ;
- ĂshtĂ« shtuar njĂ« model i ri privacy-policy.php, qĂ« lejon konfigurimin e pĂ«rmbajtjes sĂ« faqes me kushtet e respektimit tĂ« privatĂ«sisĂ«;
- Për temat e dizajnit është shtuar një trajtues wp_body_open hook, që lejon të futet kodi menjëherë pas etiketës body;
- Kërkesat për versionin minimal të PHP-së janë rritur deri në 5.6.20, në plugin-e dhe tema është e mundur të përdoren hapësirat e emrave dhe funksionet anonime;
- Janë shtuar 13 ikonat e reja.
Po ashtu mund tĂ« pĂ«rmendet mĂ«nyrĂ«s sĂ« kritikĂ«s nĂ« plugin-in WordPress (CVE-2019-11185). Vulnerabiliteti lejon ekzekutimin e kodit PHP tĂ« libĂ«r me mĂ«nyrĂ« nĂ« server. Plugin-i pĂ«rdoret nĂ« mĂ« shumĂ« se 27 mijĂ« faqeve pĂ«r organizimin e bisedave interaktive me vizitorĂ«t, pĂ«rfshirĂ« nĂ« faqet e kompanive si IKEA, Adobe, Huawei, PayPal, Tele2 dhe McDonaldâs (Live Chat shpesh pĂ«rdoret pĂ«r realizimin e bisedave tĂ« ngacmuara nĂ« faqet e kompanive me ofertĂ«n pĂ«r tĂ« biseduar me njĂ« punonjĂ«s).
Problemi shfaqet nĂ« kodin e ngarkimit tĂ« skedareve nĂ« server dhe lejon kalimin e kontrollit tĂ« llojeve tĂ« pranuara tĂ« skedareve dhe ngarkimin e njĂ« skedari PHP nĂ« server, pas tĂ« cilit mund tĂ« ekzekutohet duke bĂ«rĂ« njĂ« kĂ«rkesĂ« tĂ« drejtpĂ«rdrejtĂ« pĂ«rmes web. ĂshtĂ« interesante qĂ« vitin e kaluar nĂ« Live Chat Ă«shtĂ« identifikuar njĂ« vulnerabilitet i ngjashĂ«m (CVE-2018-12426) qĂ« lejonte ngarkimin e kodit PHP nĂ«n maskimin e njĂ« imazhi, duke specifikuar njĂ« lloj tĂ« ndryshĂ«m pĂ«rmbajtjeje nĂ« fushĂ«n Content-type. NĂ« kuadĂ«r tĂ« rregullimit tĂ« problemit janĂ« shtuar verifikime tĂ« mĂ«tejshme pĂ«r lista tĂ« bardha dhe llojin MIME tĂ« pĂ«rmbajtjes. Siç u duk se kĂ«to verifikime ishin realizuar gabimisht dhe lehtĂ« mund tĂ« kaloheshin.
Konkretisht, ngarkimi i drejtpërdrejtë i skedareve me shpërndarje «.php» është i ndaluar, por shpërndarja «.phtml» nuk ishte shtuar në listën e zezë, që në shumë servera lidhet me interpretorin PHP. Lista e bardhë lejon vetëm ngarkimin e imazheve, por mund të kalohesh duke specifikuar një shpërndarje të dyfishtë, për shembull, «.gif.phtml». Për të kaluar kontrollin e llojit MIME në fillim të skedarit, para hapjes së etiketës me kodin PHP, ishte mjaft të specifikohej linja «GIF89a».
Burimi: opennet.ru
