Interviu cu Ryan Dewhurst, fondatorul WPScan
Publicat: 2021-01-05Ryan Dewhurst este un hacker etic și tester de penetrare care și-a dedicat mulți ani ajutând oamenii din comunitatea WordPress să îmbunătățească securitatea site-urilor lor web și să le protejeze de atacatorii rău intenționați.
Ryan este fondatorul WPScan, un scaner de securitate WordPress gratuit, cutie neagră, scris pentru profesioniștii în securitate și întreținerii blogurilor pentru a testa securitatea site-urilor lor. Instrumentul WPScan CLI utilizează în prezent o bază de date cu 21.875 de vulnerabilități WordPress.
1. Pentru cei care nu te cunosc, spune-ne ce faci și puțin despre trecutul și acreditările tale.
De când îmi amintesc, sunt interesat de computere și de internet. Obișnuiam să mă duc la casa unui vecin, singura persoană pe care o cunoșteam care deține un computer la acea vreme, să joc solitaire pe mașina lui Windows 95. Nici măcar nu avea acces la internet, dar eram fericit doar că am interacționat cu computerul.
Mai târziu, în adolescență, am convins-o pe mama să-mi cumpere propriul meu computer, și de data aceasta, cu acces la Internet! Abilitatea de a interacționa cu oameni de pe tot globul mi-a uluit mintea. Yahoo era mare pe atunci și aveau un serviciu numit Yahoo! Chat, iar în acel serviciu aveau o cameră de chat numită „Hacker’s Lounge”. Am petrecut nopți peste noapte în acea cameră de chat încercând să aflu despre ce vorbea toată lumea, troieni, RAT-uri, DoS, programare generală și așa mai departe.
Mai târziu, în viață, am văzut că universitatea locală urma să înceapă să predea o diplomă de licență în Hacking etic pentru securitatea computerelor. Am părăsit școala când aveam 15 ani pentru a începe să lucrez, așa că nu aveam nicio calificare. Cerințele pentru curs erau cel puțin trei calificări, inclusiv matematică la nivel GCSE și engleză, pe care nu le aveam. Așa că am renunțat imediat la slujba mea prost plătită și m-am supus unui curs de facultate rapid, care era gratuit pentru că nu câștigam mulți bani, pentru a obține calificările necesare. Chiar și cu calificările, inițial am fost refuzat să mă înscriu la curs, dar am reușit să găsesc adresa de e-mail a profesorului și să-i scriu o poveste lungă despre cum am simțit că acest curs este singurul lucru pe care mi-am dorit să-l fac în viață. Și, în cele din urmă, am fost acceptat la curs! După patru ani am terminat cursul cu onoruri de primă clasă.
După aceea, am obținut un loc de muncă, lucrând pentru o companie de testare penetrantă, ca inginer de securitate pentru aplicații web, unde am lucrat testând multe dintre cele mai importante companii din Marea Britanie pentru probleme de securitate. Am părăsit această slujbă pentru a-mi înființa propria companie de testare a penetrației și, în cele din urmă, WPScan, unde sunt acum.
2. Sunteți activ în industria de securitate a aplicațiilor web de ani de zile. Ce v-a făcut interesat în mod special de WordPress?
Am început să scriu pe blog despre experiențele mele și lucruri pe care le-am învățat despre securitate și s-a întâmplat să folosesc WordPress ca platformă de blogging ales. Într-o zi, am dat peste o vulnerabilitate de securitate pe care a postat-o altcineva și care a afectat WordPress. Întrucât lucram în securitate și foloseam WordPress, am scris un exploit pentru a testa vulnerabilitatea pe propriul meu site. Apoi am pornit la o groapă de alte slăbiciuni de securitate care au afectat WordPress și, în cele din urmă, am pus toate aceste cunoștințe într-un instrument pe care l-am numit WPScan.
3. Mulți profesioniști în domeniul securității aplicațiilor web privesc de sus pe WordPress. Am vorbit cu mulți care spun că nu vor folosi niciodată WordPress sau că modul în care funcționează este defectuos (de exemplu, un plugin are acces deplin la toate hook-urile etc.). Ce părere aveți despre asta?
Deoarece WordPress este atât de utilizat pe web, este o țintă suculentă pentru atacatori. Acest lucru a dus la o mulțime de cercetători de securitate și hackeri de pălărie neagră să caute WordPress când era încă la început. Întrucât WordPress nu era atât de matur ca astăzi, au fost găsite o mulțime de probleme de securitate. Dar astăzi, relativ vorbind, nucleul WordPress este un sistem de management al conținutului (CMS) foarte sigur. Problema se află în prezent în pluginurile sale terțe. Există atât de multe dintre ele, ceea ce atrage utilizatorii în primul rând, dar fiecare plugin pe care îl instalați introduce, de asemenea, un risc suplimentar pentru site-ul dvs.
Dar și acest lucru devine din ce în ce mai bine, cu companii inovatoare fiind create pentru a prelua această problemă, din experiența mea, de-a lungul timpului, vedem că pluginurile WordPress devin mai sigure. Pur și simplu datorită nivelului de cercetare și companiilor dedicate acestui domeniu acum.
4. În ceea ce privește WPScan, există un scanner open source, pluginul, baza de date cu vulnerabilități etc. Vă rog să explicați cum sunt conectate aceste proiecte, pe care ar trebui să le folosească utilizatorii și de ce?
Baza de date de vulnerabilități WPScan WordPress este cea care lipește toate serviciile noastre. Toate celelalte produse și servicii ale noastre se bazează pe baza de date, sunt clienți care consumă datele și le prezintă într-un mod care este util pentru utilizatorii noștri.
Instrumentul WPScan CLI a fost primul nostru produs, care poate fi folosit gratuit pentru utilizatorii necomerciali, scanează un site web WordPress dintr-o perspectivă exterioară pentru a oferi o viziune de hacker asupra site-ului dvs. WordPress. Dar acest instrument necesită ca utilizatorii să fie familiarizați cu utilizarea unei linii de comandă și uneori nu poate fi simplu de instalat, în funcție de nivelul tehnic al utilizatorului. Acest instrument este cu adevărat conceput pentru testeri și dezvoltatori de penetrare.
Cea mai nouă adăugire la familia noastră de produse este pluginul nostru de securitate WPScan WordPress, acesta fiind conceput mai mult pentru utilizatorul WordPress de zi cu zi. Pur și simplu instalați pluginul din depozitul oficial WordPress, configurați tokenul API, începeți să rulați scanări și începeți să primiți notificări de securitate. Ideea pluginului este să vă facă conștienți de problemele de securitate înainte ca hackerii să aibă șansa de a le exploata.
5. De ce este nevoie pentru a menține o bază de date cu pluginuri WordPress, teme și vulnerabilități principale? Cum afli despre probleme noi, cum este întreținut?
Este nevoie de multă muncă. Fiecare vulnerabilitate pe care o introducem în baza noastră de date este realizată de unul dintre inginerii noștri de securitate WordPress experți, astfel încât să aveți un grad ridicat de încredere că este, de fapt, o vulnerabilitate reală și nu un fals pozitiv.
Găsim vulnerabilități dintr-o gamă largă de surse. Avem un grup de cercetători independenți în domeniul securității care găsesc vulnerabilități în WordPress, pluginuri sau teme și ni le trimit direct. De asemenea, monitorizăm constant rețelele sociale, forumurile, blogurile, site-urile web și motoarele de căutare pentru anumite cuvinte cheie care ar putea fi cineva care vorbește despre o vulnerabilitate de securitate în WordPress.
De asemenea, uneori efectuăm noi înșine cercetări independente de securitate. De exemplu, un membru al echipei noastre a descoperit recent o vulnerabilitate de falsificare a cererilor încrucișate (CSRF) în nucleul WordPress, care de atunci a fost corectată. Avem, de asemenea, o serie de atacuri de monitorizare pe web, ceea ce ne-a determinat să descoperim vulnerabilități de 0 zi.
6. Puteți explica cititorilor noștri care este procesul de verificare a unei vulnerabilități înainte de a o publica? Sau există vreun proces pe care îl urmați pentru a vă asigura că datele raportate sunt valide și corecte?
De cele mai multe ori este evident dacă un raport de vulnerabilitate este fals sau nu. Echipa noastră de experți poate spune, de obicei, doar citind avizul, dacă este corect din punct de vedere tehnic sau nu. Alteori, nu este atât de ușor și trebuie să verificăm manual vulnerabilitatea, instalând versiunea vulnerabilă și încercând să o exploatăm.
Lucrul care ne ia cel mai mult timp este triajul vulnerabilităților. Nu vrem să eliberăm informații despre vulnerabilități dacă doar vor ajuta atacatorii. Vrem să ne asigurăm că furnizorul de plugin este conștient de vulnerabilitate și a împins un patch înainte de a adăuga detaliile în baza noastră de date. Dar, acest lucru nu este întotdeauna cazul, deoarece unii vânzători fie nu pot fi contactați, fie nu le pasă. În acest caz, lucrăm îndeaproape cu echipa pluginului WordPress pentru a-i face conștienți de vulnerabilitate, astfel încât să poată lua măsuri pentru a proteja utilizatorii WordPress.
Pentru a ne asigura că acest proces este transparent, avem și o politică de divulgare publică care descrie modul în care procesăm datele de vulnerabilitate pe care le primim.
7. Pe baza a ceea ce ați văzut până acum în baza de date de vulnerabilități WP și în proiectul WPScan, ce părere aveți despre viitorul securității WordPress și al codării securizate (în pluginuri, teme) etc.?
Sunt optimist și cred că lucrurile se îmbunătățesc. În zilele noastre, se concentrează mult mai mult pe securitatea WordPress și sunt disponibile mult mai multe soluții. Nu cred că vom ajunge vreodată într-un punct în care miezul WordPress, toate pluginurile și toate temele sunt 100% sigure, dar cred că putem ajunge la un punct în care majoritatea pluginurilor cu o bază mare de instalare sunt suficient de sigure . Trebuie doar să continuăm să-l ciobim.
8. Ai si un background in dezvoltare. Care sunt primele trei sfaturi ale tale pentru dezvoltatorii de pluginuri și teme WordPress?
- Validați intrarea utilizatorului și codificați ieșirea utilizatorului. De exemplu, utilizați funcțiile WordPress esc_html(), esc_attr(), esc_url(), în mod temeinic și în locurile corecte.
- Utilizați întotdeauna funcția prepare() când creați interogări SQL.
- Verificați întotdeauna capacitățile utilizatorului înainte de a rula funcții periculoase.
9. În opinia dvs., care sunt cele mai importante trei lucruri sau cele mai bune practici de securitate pe care ar trebui să le facă un administrator de site WordPress pentru a securiza site-ul și a-l menține în siguranță?
- Păstrați versiunea WordPress, pluginurile și temele actualizate.
- Instalați un plugin de securitate. Există o mulțime de buni acolo, alege unul și folosește-l.
- Utilizați parole sigure. Asigurați-vă că parola dvs. este unică și complexă. Acest lucru poate fi realizat cu un manager de parole, de exemplu.
10. Aveți o lungă istorie în industria securității aplicațiilor web. Te-am cunoscut cu câțiva ani în urmă prin DVWA. Puteți explica cititorilor noștri ce este DVWA și de ce l-ați dezvoltat?
Damn Vulnerable Web App (DVWA) a fost un proiect Open Source pe care l-am creat în timp ce eram la universitate pentru a mă ajuta să mă învăț despre securitatea aplicațiilor web. M-am gândit că cel mai bun mod de a învăța ar fi să ai exemple reale exploatabile de folosit. L-am lansat ulterior online după mult ajutor de la alții și a devenit foarte popular. Astăzi este administrat de un vechi prieten de-al meu, Robin Wood ( @digininja ). Deci, dacă aveți probleme la instalarea acestuia, sunt sigur că vă va ajuta cu plăcere.
11. Orice sfaturi și/sau resurse pe care le puteți împărtăși celor care vă plac, doriți să aflați mai multe despre WordPress și securitatea aplicațiilor?
Twitter este una dintre cele mai bune resurse în opinia mea. Urmărește niște oameni care trăiesc și respiră acele subiecte și învață de la ele. Unii oameni pe care îi recomand să îi urmăresc sunt @tnash , @Random_Robbie , @Viss și sunt atât de mulți alții de menționat. Există, de asemenea, un grup de securitate Facebook WordPress foarte activ. Dacă doriți să vă aprofundați în securitatea aplicațiilor web, aș recomanda cartea Web Application Hacker's Handbook.
12. Cum arată viitorul proiectului WPScan? Care sunt planurile?
Am reproiectat recent întregul site web al bazei de date de vulnerabilități și am depus mult efort în backend-ul acestuia, pentru gestionarea vulnerabilităților. Instrumentul nostru WPScan CLI este foarte stabil, există din 2011, așa că are nevoie de puține îmbunătățiri în prezent. Planul este să investim în continuare timp în cercetarea problemelor de securitate în WordPress, pluginurile și temele sale, pentru a ne putea asigura că baza noastră de date cu vulnerabilități este întotdeauna actualizată și exactă. De asemenea, vrem să depunem mult efort în pluginul nostru de securitate WordPress în viitor, credem că acest lucru ne va ajuta să devenim mai cunoscuți în ecosistemul WordPress.
13. Pentru a-i inspira pe alții, poți să ne spui puțin mai multe despre călătoria ta și despre capcanele pe care le-ai întâlnit de-a lungul carierei tale și ce te-a ajutat să treci și să obții succesul actual?
Am vorbit puțin despre asta în introducerea mea, dar aici voi vorbi despre capcanele mele în încercarea de a lucra pentru unele dintre marile companii de tehnologie. După facultate, am vrut să lucrez pentru o mare companie de tehnologie, m-am gândit că asta îmi va da credibilitate în fața colegilor și a familiei mele. Am luat interviuri la Mozilla, Facebook, Google și chiar Automattic (creatorii WordPress), precum și la alții. Și deși am reușit să obțin interviul, i-am eșuat mereu și nu mi sa oferit niciodată un loc de muncă. Este greu să vorbești despre eșecurile tale, dar cred că îi poate ajuta pe alții să vadă că există lumină la capătul tunelului dacă persisti în visele tale.
Astăzi, dețin propria mea afacere profitabilă și de succes, WPScan. Multe dintre companiile pentru care le-am intervievat și care au eșuat sunt acum clienții noștri, iar în cazul Automattic, sponsorii noștri, pentru care suntem foarte recunoscători.
Uneori, în viață, s-ar putea să nu mergi pe drumul exact care crezi că te va duce la visele tale. Uneori trebuie să-ți creezi propriul drum în viață și să pui bazele pentru ca alții să o urmeze pe a ta.
14. Mulțumesc foarte mult pentru acest interviu. Le puteți spune cititorilor noștri unde vă pot găsi online?
Sigur! Eu tweetez mult de la @ethicalhack3r, puteți urmări și contul oficial de Twitter al WPScan.