Utilizatorii care dețin o versiune WordPress pentru platforma mobilă ce folosește cunoscutul plugin WPTouch ar putea fi expuși unei vulnerabilități critice care permite unui utilizator autentificat fără drepturi de administrator să încarce un fișier.PHP malițios sau un backdoor pe server.
Descriere
WordPress este deopotrivă o unealtă open-source de blogging și sistem de management al conținutului (content managament system-CMS), având în bagaj un număr de aproximativ 30.000 de plugin-uri, fiecare oferind posibilitatea personalizării website-ului în funcție de nevoi și cerințe. Serviciul este folosit la nivel mondial în cazul a peste 73 de milioane de website-uri, dintre care aproximativ 5,7 milioane folosesc plugin-ul WPTouch, acesta reprezentând una dintre cele mai populare unelte software folosite în cadrul platformei WordPress.
WPTouch oferă posibilitatea unui utilizator afișării într-o formă simplistă și elegantă a conținutului WordPress pe dispozitive mobile. Utilizatorii pot modifica cu ușurință mai multe aspecte privind configurația website-ului din panoul de administrare.
Impact
Această vulnerabilitate a fost descoperită în timpul unui audit de securitate de rutină pentru firewall-ul aplicației web (WAF). Cercetătorii afirmă că sunt afectate doar acele website-uri care permit autentificarea utilizatorilor de tip guest. Trebuie menționat că funcția este activată în mod implicit pentru secțiunea de comentarii a site-ului.
Versiunea vulnerabilă a plugin-ului folosește funcţia admin _init ca metodă de autentificare, ceea ce poate oferi acces nerestricționat unui utilizator prin încărcarea pe server a unui fișier malițios de tip .PHP. Compromiterea are loc prin intermediul metodei funcţiei admin_initialize(), care poate genera un nonce (number used once) pentru utilizatorul interesat. Nonce este denumirea tehnică a unui număr generat pentru o utilizare specifică, precum sesiunea de autentificare; de aici și denumirea (nonce-număr utilizat o singură dată).
Astfel, tot ceea ce atacatorul trebuie să facă pentru a compromite website-ul este să se autentifice pentru a-și genera nonce-ul via wp-admin, ca ulterior să trimită o cerere de încărcare de fișier care conține acest numărnonce și backdoor-ul.
Soluție
Specialiștii sugerează folosirea, pe lângă nonce, a mai multor metode de securitate precum current_user_can()pentru confirmarea drepturilor acordate unui utilizator.
Actuala vulnerabilitate afectează doar website-urile care rulează versiunile 3.x ale pugin-ului. Așadar, utilizatorii și administratorii site-urilor care se bazează pe versiunea anterioară nu au motive de îngrijorare. Cu toate acestea, actualizarea la cele mai noi versiuni este întotdeauna un proces recomandat.
Problema semnalată de către specialiștii firmei de securitate Sucuri nu este singura vulnerabilitate WordPress descoperită. La începutul lunii Iunie s-au mai făcut publice două vulnerabilități în alt plugin, la fel de popular, WordPressSEO.