Vulnerabilitatea găsită în pluginul WordPress Gutenberg?

Publicat: 2022-08-03

National Vulnerability Database a guvernului Statelor Unite a publicat o notificare cu privire la o vulnerabilitate descoperită în pluginul oficial WordPress Gutenberg. Dar conform persoanei care l-a găsit, se spune că WordPress nu a recunoscut că este o vulnerabilitate.

Vulnerabilitatea stocată în Cross-Site Scripting (XSS).

XSS este un tip de vulnerabilitate care se întâmplă atunci când cineva poate încărca ceva de genul unui script care de obicei nu ar fi permis printr-un formular sau altă metodă.

Cele mai multe formulare și alte intrări pe site-ul web vor valida faptul că ceea ce este actualizat este de așteptat și vor filtra fișierele periculoase.

Un exemplu este un formular pentru încărcarea unei imagini care nu reușește să blocheze un atacator să încarce un script rău intenționat.

Potrivit Open Web Application Security Project, o organizație care se concentrează pe contribuția la îmbunătățirea securității software, iată ce se poate întâmpla cu un atac XSS de succes:

„Un atacator poate folosi XSS pentru a trimite un script rău intenționat unui utilizator care nu bănuiește.

Browserul utilizatorului final nu are de unde să știe că scriptul nu ar trebui să fie de încredere și va executa scriptul.

Deoarece consideră că scriptul provine dintr-o sursă de încredere, scriptul rău intenționat poate accesa orice cookie-uri, simboluri de sesiune sau alte informații sensibile păstrate de browser și utilizate cu site-ul respectiv.

Aceste scripturi pot chiar rescrie conținutul paginii HTML.”

Vulnerabilități și expuneri comune – CVE

O organizație numită CVE servește ca o modalitate de documentare a vulnerabilităților și de a face publice descoperirile.

Organizația, pe care Departamentul de Securitate Internă al SUA o susține, examinează descoperirile de vulnerabilități și, dacă este acceptată, va atribui vulnerabilității un număr CVE care servește ca număr de identificare al vulnerabilității respective.

Descoperirea vulnerabilității în Gutenberg

Cercetările de securitate au descoperit ceea ce se credea a fi o vulnerabilitate. Descoperirea a fost transmisă la CVE, iar descoperirea a fost aprobată și i s-a atribuit un număr ID CVE, făcând descoperirea o vulnerabilitate oficială.

Vulnerabilitatea XSS a primit numărul de ID CVE-2022-33994.

Raportul de vulnerabilitate care a fost publicat pe site-ul CVE conține această descriere:

„Plugin-ul Gutenberg până la 13.7.3 pentru WordPress permite stocarea XSS de către rolul Contributor printr-un document SVG în funcția „Insert from URL”.

NOTĂ: sarcina utilă XSS nu se execută în contextul domeniului instanței WordPress; cu toate acestea, încercările similare ale utilizatorilor cu privilegii reduse de a face referire la documente SVG sunt blocate de unele produse similare, iar această diferență de comportament ar putea avea relevanță de securitate pentru unii administratori de site-uri WordPress.”

Aceasta înseamnă că cineva cu privilegii la nivel de Contributor poate cauza inserarea unui fișier rău intenționat în site.

Modul de a face acest lucru este prin inserarea imaginii printr-un URL.

În Gutenberg, există trei moduri de a încărca o imagine.

  1. Încărcați-l
  2. Alegeți o imagine existentă din Biblioteca Media WordPress
  3. Inserați imaginea dintr-o adresă URL

Această ultimă metodă este de unde vine vulnerabilitatea, deoarece, potrivit cercetătorului în securitate, se poate încărca o imagine cu orice nume de fișier cu extensie pe WordPress printr-o adresă URL, ceea ce funcția de încărcare nu o permite.

Este într-adevăr o vulnerabilitate?

Cercetătorul a raportat vulnerabilitatea la WordPress. Dar conform persoanei care l-a descoperit, WordPress nu a recunoscut-o ca fiind o vulnerabilitate.

Iată ce a scris cercetătorul:

„Am găsit o vulnerabilitate Stored Cross Site Scripting în WordPress care a fost respinsă și a fost etichetată ca informativă de către echipa WordPress.

Astăzi este cea de-a 45-a zi de când am raportat vulnerabilitatea și totuși, vulnerabilitatea nu a fost corectată la momentul scrierii acestui articol...”

Deci, se pare că există o întrebare dacă WordPress are dreptate și dacă fundația CVE susținută de guvernul SUA este greșită (sau viceversa) dacă aceasta este o vulnerabilitate XSS.

Cercetătorul insistă că aceasta este o vulnerabilitate reală și oferă acceptarea CVE pentru a valida această afirmație.

Mai mult, cercetătorul sugerează sau sugerează că situația în care pluginul WordPress Gutenberg permite încărcarea imaginilor printr-o adresă URL ar putea să nu fie o practică bună, menționând că alte companii nu permit acest tip de încărcare.

„Dacă este așa, spune-mi de ce… …companii precum Google și Slack au ajuns până la validarea fișierelor care sunt încărcate pe o adresă URL și respingând fișierele dacă se dovedește că sunt SVG!

… Google și Slack… nu permit fișierelor SVG să se încarce pe o adresă URL, ceea ce face WordPress!”

Ce să fac?

WordPress nu a remediat această vulnerabilitate, deoarece par să nu creadă că este o vulnerabilitate sau una care prezintă o problemă.

Raportul oficial de vulnerabilitate afirmă că versiunile Gutenberg până la 13.7.3 conțin vulnerabilitatea.

Dar 13.7.3 este cea mai recentă versiune.

Potrivit jurnalului oficial de modificări WordPress Gutenberg, care înregistrează toate modificările trecute și publică, de asemenea, o descriere a modificărilor viitoare, nu au existat remedieri pentru această (presupusă) vulnerabilitate și nu sunt planificate.

Deci întrebarea este dacă există sau nu ceva de reparat.

Citate

Raportul bazei de date privind vulnerabilitățile guvernului SUA privind vulnerabilitatea

CVE-2022-33994 Detaliu

Raport publicat pe site-ul oficial CVE

CVE-2022-33994 Detaliu

Citiți concluziile cercetătorului

CVE-2022-33994:- XSS stocat în WordPress


Imagine prezentată de Shutterstock/Kues