WordPress 5.2 vÀljaanne digitaalse allkirja vÀrskenduste kontrollimise toetusega

Esitletud veebisisu haldamise sĂŒsteemi vĂ€ljaanne WordPress 5.2. VĂ€ljaanne on tĂ€helepanuvÀÀrne kuueaastase epiloogiga rakendamise osas vĂ”imalus vĂ€rskenduste ja lisanduste kontrollimiseks digitaalse allkirja abil.

Varasemalt tuli WordPressis vĂ€rskenduste installimisel lĂ€htuda peamiselt usaldusvÀÀrsusest WordPressi infrastruktuuri ja serverite suhtes (pĂ€rast allalaadimist kontrolliti rikkaid ilma allika verifitseerimiseta). Projekti serverite kompromiteerimise korral said rĂŒndajad asendada vĂ€rskenduse ja levitada pahavara WordPressi veebilehtede seas, mis kasutasid automaatsete vĂ€rskenduste installimissĂŒsteemi. Varasemalt rakendatud usaldusmudeli kohaselt jÀÀks sarnane asendamine kasutajate seas mĂ€rkamatuks.

Arvestades, et andmetele w3techs platvorm WordPress on 33,8% veebilehtedest, mille tĂ”ttu oleks sellise intsidendi ulatus katastroofiline. Sellest tulenev infrastruktuuri komprimeerimise oht ei olnud hĂŒpoteetiline, vaid tĂ€iesti reaalne. NĂ€iteks paar aastat tagasi demonstreeris ĂŒks turvauuringute spetsialist haavatavust, mis vĂ”imaldas rĂŒndajal kĂ€ivitada oma koodi serveripoolel api.wordpress.org. Digitaalsete allkirjade rakendamisel ei tooks vĂ€rskenduste levitamise serveri ĂŒle kontrolli saamine kaasa kasutajate sĂŒsteemide komprimeerimist, kuna rĂŒnnaku tegemiseks oleks vajalik eraldi salvestatud privaatvĂ”ti, millega allkirjastatakse vĂ€rskendused.

VĂ€rskenduste allika kontrollimise digitaalsete allkirjade abil takistas see, et vajalikke krĂŒptograafilisi algoritme hakati PHP vaikimisi pakkumiste kaudu toetama alles hiljuti. Vajalikud krĂŒptograafilised algoritmid said vĂ”imalikuks, kui integreeriti teek

Libsodium PHP pĂ”hikomplekti PHP 7.2 . Kuid minimaalne versioon, mida WordPress toetab, on PHPmillele on esitatud taotlus vĂ€ljaanne 5.2.4 (alates WordPressist 5.2 — 5.6.20). Digitaalse allkirjade toetuse lisamine tĂ”staks oluliselt minimaalset toetatavat PHP versiooni vĂ”i tooks endaga kaasa vĂ€list sĂ”ltuvust, millega arendajad arvesse vĂ”ttes PHP versioonide levipindade ei saanud leppida.

Lahenduseks sai arendus ja Libsodiumi kompaktse versiooni integreerimine WordPress 5.2-sse — Sodium Compat, milles PHP keeles on rakendatud minimaalne algoritmide kogum digitaalsete allkirjade kontrollimiseks. Teostus jĂ€tab soovida jĂ”udluse osas, kuid lahendab tĂ€ielikult ĂŒhilduvuse probleemi ning vĂ”imaldab pluginate arendajatel alustada kaasaegsete krĂŒptograafiliste algoritmide rakendamist.

Digitaalsete allkirjade koostamiseks kasutatakse algoritmi Ed25519, mille, mis on vĂ€lja töötatud Daniel J. Bernsteini (Daniel J. Bernstein) kaasabil. Digitaalne allkiri luuakse SHA384 rĂ€sivÀÀrtusest, mis on arvutatud arhiivi sisu pĂ”hjal koos vĂ€rskendusega. Ed25519 pakub kĂ”rgemat turvalisuse taset kui ECDSA ja DSA, ning nĂ€itab allkirjade verifitseerimisel ja loomisel vĂ€ga suurt kiirus. Ed25519 hĂ€kkimise vastupidavus on umbes 2^128 (keskmiselt nĂ”uab Ed25519 rĂŒnnak 2^140 bitimuutust), mis vastab selliste algoritmide vastupidavusele nagu NIST P-256 ja RSA 3000-bitiste vĂ”tmetega vĂ”i 128-bitise plokksalajasele. Ed25519 pole samuti kohalike rĂ€sivÀÀrtuste kokkuvarisemise probleeme ja on immuunne mĂ€luefektiivuse (cache-timing) ja kĂŒlgkanali rĂŒnnakute suhtes.

WordPressi 5.2 vÀljaandes hÔlmab digitaalallkirjade kontrollimine praegu ainult platvormi pÔhivÀrskendusi ning ei too vaikimisi kaasa vÀrskenduse blokeerimist, vaid teavitab kasutajat tekkinud probleemist. Vaikimisi blokeerimist on otsustatud mitte kaasata osaliselt selle tÔttu, et vajalik on tÀielik kontroll ja möödumine vÔimalikest probleemidest. Tulevikus on plaanis lisada digitaalallkirja kontroll ka teema- ja pluginapaigaldusallikate versioonide kontrollimiseks (tootjad saavad vabastada oma versioonid oma vÔtmega).

Lisaks digitaalallkirjade toetamisele vÔib WordPress 5.2 puhul mÀrkida jÀrgmised muudatused:

  • Jaotises „Site Health” on lisatud kaks uut lehte tĂŒĂŒpiliste seadistuse probleemide tĂ”rkeotsimiseks ning on esitatud vorm, mille kaudu arendajad saavad kĂŒsida tĂ”rkeinfot saidi administraatoritelt;
  • On lisatud „surmavalge ekraani” rakendamine, mis kuvatakse tĂ”siste probleemide korral ja aitab administraatoril ise vigu parandada, mis on seotud pluginatega vĂ”i teemadega, minnes spetsiaalsesse hĂ€ire taastamise reĆŸiimi;
  • On rakendatud pluginatega ĂŒhilduvuse kontrollimise sĂŒsteem, mis kontrollib automaatselt pluginaga töötamise vĂ”imalust praeguses konfiguratsioonis, arvestades kasutatavat PHP versiooni. Kui plugin vajab töös hoidmiseks uuemat PHP versiooni, blokeerib sĂŒsteem automaatselt selle plugina aktiveerimise;
  • On lisatud toetus JavaScripti koodi kasutavate moodulite lubamiseks kasutades webpack ja Babel;
  • Lisatud uus mall privacy-policy.php, mis vĂ”imaldab kohandada privaatsuspoliitika lehe sisu;
  • Kujundusteemade jaoks on lisatud wp_body_open hook töötlija, mis vĂ”imaldab koodi lisada kohe pĂ€rast body sildi avamist;
  • PHP minimaalne versioon on tĂ”stetud 5.6.20-ni, pistikprogrammid ja kujundusteemad saavad nĂŒĂŒd kasutada nimede ruume ja anonĂŒĂŒmseid funktsioone;
  • Lisatud 13 uut ikooni.

Lisaks vĂ”ib mainida tuvastamist kriitilisest haavatavusest WordPressi pistikprogrammis WP Live Chat (CVE-2019-11185). Haavatavus vĂ”imaldab serveris tĂ€ita juhuslikku PHP-koodi. Pistikprogramm on kasutusel enam kui 27 000 saidil, et korraldada interaktiivset vestlust kĂŒlastajaga, sealhulgas selliste ettevĂ”tete, nagu IKEA, Adobe, Huawei, PayPal, Tele2 ja McDonald’s veebilehtedel (Live Chat kasutatakse sageli pealetĂŒkkivate vestlusakende rakendamiseks ettevĂ”tete töötajatega suhtlemiseks).

Probleem ilmneb failide ĂŒleslaadimise koodis serverisse ja vĂ”imaldab kĂ”rvale kalduda lubatud failitĂŒĂŒpide kontrollimist ning ĂŒles laadida serverisse PHP skripti, mida saab hiljem otse veebis kĂ€ivitada. Huvitav, et eelmisel aastal Live Chat'is tuvastati sarnane haavatavus (CVE-2018-12426), mis vĂ”imaldas laadida PHP-koodi pildi nĂ€ol, mÀÀrates Content-type vĂ€ljal vale sisu tĂŒĂŒbi. Probleemi lahendamiseks lisati tĂ€iendavad kontrollid valgelisti ja MIME-tĂŒĂŒbi suhtes. Selgus, et need kontrollid on rakendatud valesti ja neid on lihtne kĂ”rvale kalduda.

EelkĂ”ige on otse ĂŒleslaadimine failidega, millel on laiend " .php", keelatud, kuid musta nimekirja ei ole lisatud laiendit " .phtml", mis paljudes serverites on seotud PHP tĂ”lgendajaga. Valgelist lubatakse ainult piltide ĂŒleslaadimist, kuid seda saab kĂ”rvale kalduda, mÀÀrates topeltlaiendi, nĂ€iteks " .gif.phtml". MIME-tĂŒĂŒbi kontrollimist on vĂ”imalik kĂ”rvale kalduda, sisestades faili algusesse, enne PHP koodi avanemist, rea " GIF89a".

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster