Dacă ați primit un e-mail de la mine care vă trimite la această pagină, este pentru că site-ul dumneavoastră pare să ruleze o versiune a Simple Membership (pluginul de membership pentru WordPress, de la smp7 / wp.insider, care se află în fișierele dumneavoastră la /wp-content/plugins/simple-membership/) care se încadrează în intervalul afectat de o problemă de securitate cunoscută. Această pagină explică care este problema, cum să verificați ce versiune aveți, cum să actualizați și care este pasul ulterior cel mai important.

Problema este CVE-2026-15930, o preluare neautentificată a unui cont de administrator prin propriul formular de înregistrare pentru membri al pluginului. Afectează fiecare versiune anterioară lui 4.7.8 și este remediată în 4.7.8. Dacă rulați orice versiune mai veche de 4.7.8, actualizați Simple Membership la 4.7.8 sau o versiune ulterioară (4.7.9 a apărut mai târziu și păstrează remedierea, deci este de asemenea potrivită).

Un lucru care trebuie clarificat, deoarece diferă de unele dintre celelalte notificări pe care le-am trimis: nu există nicio versiune mai veche care să fie sigură. Aceasta nu este o vulnerabilitate care a fost introdusă la un moment dat și apoi remediată. A fost prezentă în plugin încă de la prima sa lansare publicată și până la 4.7.7, așa că „instalarea mea este prea veche pentru a fi afectată” nu este o scăpare aici. Singurele versiuni neafectate sunt 4.7.8 și cele ulterioare.

Această notificare nu depinde de modul în care este configurat site-ul dumneavoastră. Nu există nicio setare care trebuie activată: atunci când pluginul este activat, publică o pagină membership-registration care conține formularul său de înregistrare, astfel încât o instalare standard expune formularul vizitatorilor care nu sunt conectați. Dacă versiunea dumneavoastră este mai veche de 4.7.8, actualizarea merită făcută cât mai curând.

Aceasta este o vulnerabilitate a pluginului, nu a nucleului WordPress. Un WordPress complet actualizat nu vă protejează dacă pluginul Simple Membership însuși este pe o versiune afectată.

Este legitim acest mesaj?

Da. Aceasta este o notificare de divulgare responsabilă, făcută cu bună-credință, de către un cercetător independent în securitate. Nu vă cer bani, parole sau acces la site-ul dumneavoastră, și nu am încercat să pătrund în el, să trimit ceva către el sau să exploatez nimic.

Tot ce am făcut a fost să mă uit la fișierele vizibile public pe care site-ul dumneavoastră le servește fiecărui vizitator (același mod în care pagina dumneavoastră de start este publică) și să notez numărul de versiune pe care îl publică pluginul. În mod specific, nu am trimis formularul dumneavoastră de înregistrare și nu am trimis nimic către el, iar nimic din această verificare nu atinge datele dumneavoastră, zona de administrare sau orice parte privată a site-ului dumneavoastră (mai multe detalii la secțiunea Ce am făcut și ce nu am făcut de mai jos).

Dacă doriți să verificați cine sunt, consultați detaliile de contact de la sfârșitul acestei pagini și pagina Despre.

De ce contează

Simple Membership adaugă niveluri de membru și conținut protejat unui site WordPress și le oferă vizitatorilor un formular public de înscriere prin care se pot înregistra ei înșiși pentru o calitate de membru. Acel formular este punctul de intrare aici.

În versiunile afectate, pluginul nu verifica dacă WordPress crease efectiv noul cont înainte de a continua să salveze datele trimise. Atunci când înscrierea solicitată nu putea fi creată ca utilizator cu adevărat nou, deoarece numele ales se suprapunea cu un cont deja existent, pluginul continua oricum și scria datele trimise peste acel cont existent. Efectul practic: adresa de e-mail și parola introduse în formularul public de înscriere devin datele de autentificare ale unui cont care exista deja pe site. În practică, contul care ajunge să fie suprascris este administratorul original al site-ului, ceea ce predă controlul site-ului oricui a completat formularul.

Două lucruri merită spuse clar. Primul: nu este necesară nicio autentificare și nimic nu trebuie configurat greșit: un vizitator anonim și pagina de înregistrare pe care pluginul o publică de la sine sunt suficiente. Al doilea: rezultatul este controlul administrativ, nu o scurgere limitată de date, motiv pentru care recomandarea aici este să actualizați cât mai curând, nu să includeți acest lucru în următoarea dumneavoastră fereastră de mentenanță.

Descriu acest lucru la nivelul de detaliu de care are nevoie un proprietar de site pentru a acționa, și nu mai mult. Nu public detaliile care ar permite cuiva să reproducă problema și aș ruga să nu încercați acest lucru pe propriul site sau pe al altcuiva. Citirea numărului dumneavoastră de versiune, așa cum este descris mai jos, vă spune tot ce aveți nevoie pentru a decide ce aveți de făcut.

Dacă e-mailul meu a citat această problemă, înseamnă că versiunea pe care o raportează site-ul dumneavoastră este mai veche de 4.7.8. Nu am testat dacă site-ul dumneavoastră particular este exploatabil; tot ce am observat este versiunea.

Sunt afectat?

Totul se rezumă la o singură întrebare: ce versiune de Simple Membership rulați? Nu trebuie să mă credeți pe cuvânt, și există trei moduri de verificare. Spre deosebire de unele pluginuri despre care scriu, toate trei sunt de încredere aici, deoarece toate raportează același număr de versiune de bază.

Din zona de administrare WordPress (sursa de referință):

  1. Conectați-vă la tabloul de bord WordPress (de obicei la yourdomain.com/wp-admin).
  2. Mergeți la Pluginuri apoi Pluginuri instalate.
  3. Găsiți Simple Membership, intrarea al cărei folder este simple-membership, și notați versiunea afișată sub numele său.

Din manifestul public (nu este necesară conectarea): deschideți yourdomain.com/wp-content/plugins/simple-membership/readme.txt într-un browser. Linia Stable tag: de aproape de început este versiunea pe care o raportează instalarea dumneavoastră, și acesta este exact fișierul public pe care l-am citit.

Din sursa paginii dumneavoastră (nu este necesară conectarea): vizualizați sursa oricărei pagini de pe site-ul dumneavoastră și căutați foaia de stil a pluginului, css/swpm.common.css, sub /wp-content/plugins/simple-membership/. Numărul ?ver= atașat acesteia este versiunea pluginului, marcată din constanta proprie de versiune a pluginului, astfel încât pentru acest plugin este o citire de încredere, nu o momeală.

Apoi aplicați această regulă, reținând că versiunile se compară numeric, nu alfabetic, astfel încât 4.7.10 ar fi mai nouă decât 4.7.8, chiar dacă pare mai mică ca text:

  • Orice versiune mai veche de 4.7.8: afectată. Actualizați acum. Nu există niciun prag sub care o versiune mai veche devine din nou sigură.
  • 4.7.8 sau mai nouă: deja remediată. Aceasta include 4.7.9, care păstrează remedierea.

O notă privind extensiile plătite (add-on) ale Simple Membership. Extensiile plătite ale pluginului se instalează ca pluginuri separate, în propriile foldere, pe propriile linii de versiune. Numărul de versiune al unei extensii nu spune absolut nimic despre această problemă. Versiunea care contează este cea a pluginului de bază Simple Membership, folderul simple-membership, obținută prin oricare dintre cele trei verificări de mai sus.

Cum se actualizează

Calea cea mai sigură este să actualizați prin intermediul WordPress și să faceți mai întâi o copie de rezervă:

  1. Faceți o copie de rezervă a site-ului (fișiere și bază de date) înainte de a face modificări. Majoritatea furnizorilor de găzduire oferă backup-uri cu un singur clic, sau puteți utiliza un plugin de backup pentru WordPress.
  2. În panoul de administrare WordPress, mergeți la Panou de control apoi Actualizări, sau la Pluginuri apoi Pluginuri instalate. Dacă este listată o actualizare pentru Simple Membership, instalați-o de aici.
  3. Dacă preferați linia de comandă, WP-CLI face același lucru: wp plugin update simple-membership.
  4. Dacă nu apare nicio actualizare, puteți obține cea mai recentă versiune direct de pe pagina pluginului din directorul WordPress.org, Simple Membership, și puteți actualiza accesând Pluginuri apoi Adaugă plugin nou și apoi Încarcă plugin.
  5. După actualizare, confirmați noul număr de versiune (4.7.8 sau o versiune ulterioară) folosind pașii de mai sus și verificați dacă formularul dumneavoastră de înregistrare, nivelurile de membru și conținutul protejat funcționează în continuare normal.

Dacă utilizați extensiile plătite ale Simple Membership, actualizați-le și pe acestea odată cu pluginul de bază, deoarece lansările lor sunt de obicei corelate.

În timp ce sunteți acolo, merită să confirmați că nucleul WordPress și celelalte pluginuri sunt actualizate, deoarece același principiu se aplică tuturor acestora.

După actualizare

Actualizarea la 4.7.8 sau o versiune ulterioară închide problema. Există aici un pas ulterior mai important decât întreținerea obișnuită, și merită citit chiar dacă sunteți convins că nu s-a întâmplat nimic.

Sfatul obișnuit ar rata această problemă. Atunci când oamenii verifică un site după o vulnerabilitate de preluare de cont, caută conturi de administrator noi și necunoscute. Această verificare nu ar găsi nimic aici, deoarece nu se creează niciun cont nou. Un cont care exista deja este suprascris, astfel încât numărul administratorilor nu se schimbă și niciun nume necunoscut nu apare în listă. Ceea ce se schimbă sunt datele de autentificare ale unui cont pe care îl cunoașteți deja. Așadar:

  • Verificați adresa de e-mail a fiecărui cont de administrator. În panoul de administrare WordPress, mergeți la Utilizatori, filtrați după Administrator și confirmați că fiecare cont are în continuare adresa de e-mail corectă. Un cont de administrator a cărui adresă de e-mail nu mai aparține persoanei potrivite este semnul acestei probleme.
  • Resetați parolele conturilor dumneavoastră de administrator, și ale oricăror alte conturi importante. Faceți acest lucru chiar dacă toate adresele de e-mail par corecte.
  • Regenerarea cheilor secrete și a sărurilor WordPress din wp-config.php este un pas complementar recomandat (noile valori se obțin cu un singur clic de la generatorul oficial de chei secrete; înlocuirea lor deconectează toți utilizatorii o dată).

Vă rugăm să rețineți că actualizarea închide vulnerabilitatea, dar nu anulează accesul care a fost deja obținut. Dacă cineva a preluat un cont înainte să actualizați, acesta deține în continuare acele date de autentificare, motiv pentru care resetarea parolei de mai sus contează. Dacă găsiți ceva care vă îngrijorează, tratați situația ca pe orice alt caz suspectat de acces neautorizat.

Nu am nicio vizibilitate asupra faptului dacă s-a întâmplat efectiv ceva pe site-ul dumneavoastră și nu am verificat. Aceasta este o notificare preventivă, nu un raport de incident.

Ce am făcut și ce nu am făcut

Pentru a fi complet transparent în legătură cu verificarea din spatele e-mailului meu: am citit doar două fișiere publice pe care site-ul dumneavoastră le servește deja fiecărui vizitator, anume fișierul public readme.txt al pluginului și pagina dumneavoastră de start. Nu am accesat zona de administrare WordPress, baza de date sau nicio parte privată a site-ului.

În mod special, nu am trimis niciodată formularul dumneavoastră de înregistrare și nu am trimis nimic către el. Nu s-a trimis, testat sau exploatat nimic. Acest lucru este mai important aici decât pe majoritatea acestor pagini, deoarece formularul de înregistrare este exact obiectul acestei probleme, așa că „nu m-am atins de el” face toată diferența dintre o divulgare și o intruziune.

De asemenea, nu public în mod deliberat detaliile care ar ajuta pe cineva să acționeze în legătură cu această problemă. Descrierea de mai sus se oprește la nivelul de care are nevoie un proprietar de site, iar eu nu trimit către niciun cod demonstrativ.

Aceasta este o observație bazată pe versiune: site-ul dumneavoastră raportează o versiune mai veche de 4.7.8. Un site din acel interval ar putea fi deja protejat prin alte mijloace, cum ar fi un firewall de aplicații web sau o remediere retroportată. Această notificare nu este o afirmație că site-ul dumneavoastră era exploatabil la momentul verificării mele.

Nu am webmaster / m-am blocat

Dacă nu sunteți persoana care întreține site-ul, vă rugăm să transmiteți această pagină persoanei care o face (dezvoltatorul dumneavoastră web, agenția sau furnizorul de găzduire). Va recunoaște rapid pașii de mai sus.

Dacă întrețineți site-ul dumneavoastră și rămâneți blocat, sunt bucuros să vă ajut indicând direcția corectă, fără costuri. Contactați-mă folosind detaliile de contact de mai jos.

Contact

Evan Harris, cercetător în securitate

Vă contactez în legătură cu astfel de probleme pur și simplu pentru a ajuta operatorii să își securizeze site-urile. Dacă preferați să nu mai fiți contactat din nou, spuneți-mi și voi respecta această dorință.

Referințe

Anunțuri oficiale și urmărire

Producător / plugin