PROGRAMUL DE STUDII DE MASTERAT “SECURITATEA SISTEMELOR INFORMATICE ȘI A REȚELELOR INFORMAȚIONALE” LUCRARE DE DISERTATIE SECURITATEA UNUI SITE WEB… [306292]

UNIVERSITATEA TITU MAIORESCU DIN BUCUREȘTI

FACULTATEA DE INFORMATICĂ

PROGRAMUL DE STUDII DE MASTERAT

“SECURITATEA SISTEMELOR INFORMATICE ȘI A REȚELELOR INFORMAȚIONALE”

[anonimizat]. univ. dr. Viorel Ionescu

Masterand: [anonimizat]-Cosmin Anghel

BUCUREȘTI

2018

[anonimizat], fiind într-o [anonimizat]-o perioadă în care se crede ca s-a ajuns poate la apogeul tehnologiei. [anonimizat], la fel ca și a [anonimizat] a ne surprinde. Site-[anonimizat]-urilor și actualizărilor.

[anonimizat] o știință complexă și fascinantă. [anonimizat] “Aplicație Web dinamică pentru E-learning”, [anonimizat]: securitatea unui site web bazat pe platforma WordPress.

De ce este important și fascinant acest domeniu? [anonimizat] o afacere sau deține o companie. Securizarea acestuia reprezintă o etapă importantă ce necesită atenție pe tot parcursul desfăsurării activităților. [anonimizat].Prin simularea unor atacuri și teste de penetrare avem posibilitatea să observam cum se comportă un sistem atacat și să fim în pielea unui hacker. [anonimizat], cu atat riscul atacurilor de a eșua lamentabil crește.

[anonimizat], pentru a se observa efectele unui test de penetrare și eficiența acestora.

[anonimizat] o [anonimizat].

SECURITATEA ÎN REȚELELE DE CALCULATOARE

Implementarea securitătii într-o [anonimizat]: CONFIDENȚIALITATEA, INTEGRITATEA și DISPONIBILITATEA

Confidențialitatea este capabilitatea unei rețele de a asigura utilizatorilor autorizați accesul la informație.

Integritatea promite faptul că informația nu va fi modificată decât atunci când intră în posesia persoanelor autorizate.

Disponibilitatea se definește ca fiind timpul în care rețeaua dar și resursele deținute sunt operaționale și complet funcționale.

[anonimizat].

Probleme întalnite:

Monitorizarea, autorizarea și identificarea tuturor utilizatorilor

Securizarea atentă a perimetrului rețelei de calculatoare

Asigurarea confidențialității și integrității tuturor datelor

Monitorizarea rețelei

Managementul corespunzator a echipamentelor și infrastructurii de securitate

Soluții posibile: [anonimizat], [anonimizat], sisteme de detecție a intruziunilor.

Tipuri de atacuri și vulnerabilități

Sunt prezente doua mari cauze ce pot constitui amenințări pentru oricare rețea de calculatoare, deși a fost în prealabil implementată o politică sigură de securitate:

Vulnerabilitățile ( problemele cauzate de tehnologie )

Configurări necorespunzătoare

Vulnerabilitățile reprezintă probleme mai mici sau mai mari ale sistemelor de operare, protocoalelor TCP/IP sau dispozitivelor de rețea prin care un atacator poate accesa fără voie informațiile, și fără a respecta politica de securitate implementată.

Deși vulnerabilitățile reprezintă cele mai grave probleme și cel mai greu de ținut sub control, trebuie notat că cele mai multe probleme apar de fapt din cauza configurărilor incorecte sau definirii unor politici necorespunzătoare de securitate.

Atacurile ce țintesc rețelele de calculatoare pot fi clasificate în:

Atacuri interne sau externe

Atacuri structurate sau nestructurate

Atacurile externe sunt pornite din afara organizatiei (din punctul de vedere al rețelei), iar cele interne, din interiorul organizației.

Atacurile nestructurate reprezintă atacurile inițiate de indivizi mai putin experimentați ce utilizează exploit-uri disponibile pe Internet. Exploit-urile sunt programe ce exploatează practic vulnerabilitățile unui sistem pentru a ocoli politica de securitate implementată într-o rețea sau sistem.

Atacurile structurate sunt inițiate de hacker bine pregătiți și înarmați cu cunostințe tehnice competente. Acești indivizi cunosc bine și stiu să exploateze o vulnerabilitate a unui sistem și pot dezvolta coduri și scripturi rău intenționate.

Faza 1 – Recunoașterea

Faza 1 este definită ca fiind procesul prin care un hacker descoperă maparea tuturor sistemelor, serviciilor și vulnerabilităților din rețea. În această fază premergătoare atacului, hackerul adună informații și, de cele mai multe ori, în această fază se precede atacul efectiv.

În prima fază, hackerul foloseste utilitare precum nslookup ori whois pentru a descoperi ușor spațiul de adrese alocate organizației țintite. Apoi realizează un ping sweep. Prin asta încearcă să determine care dintre adresele IP sunt alocate și care dintre ele funcționează și sunt pornite.Folosește un port scanner pentru determinarea serviciilor active.Utilitarul funcționează pe un principiu simplu, fiecare serviciu web, ftp sau etc are alocat un anume port.Utilitarul trimite pachete SYN către mașina atacată pe portul ales ce se încerca a fi detectat. În cazul în care mașina rulează serviciul, sistemul de operare va trimite un pachet de tipul SYN, ACK pentru a se începe negocierea pe un canal de comunicare. De asemenea acest utilitar poate sa detecteze și tipul sistemului de operare, cel care adesea datorită modului în care unele sistemele de operare generează numere de secvență pentru pachetele TCP. După ce se determină serviciile și sistemul de operare, hackerul încearcă să obțină versiunea sistemului de operare și a serviciilor rulațe. Iar acest lucru se poate realiza prin conectarea cu utilitare de felul telnet pentru portul serviciului respective și examinarea mesajelor respective afișate. Pe baza informațiilor, atacatorul poate determina ce vulnerabilități sunt prezente și ce sisteme pot fi atacate.

O a doua metodă de a recunoaște sursele o reprezintă așa numitul proces de packet sniffing. Se folosește în special în cazul în care rețelele în care mesajele ajung la toata lumea conectată în mediu, ca și în cazul Ethernet atunci când se foloseste un hub. Din cauza acestui lucru, poate fi analizat și urmarit tot traficul dintr-o rețea. Obișnuit, placa de rețea nu preia din mediu decât pachetele destinate stației respective ori pachetele de broadcast (la nivel 2). În cazul în care privilegiile sunt suficiente, placa de rețea poate fi configurată în asa fel încat să preia toate pachetele ce circulă prin mediu, prin setarea acesteia în promiscuous mode. Pachetele obținute pot fi procesate cu mai multe utilitare și pe baza lor se pot mapa adrese, versiuni ale unor sisteme de operare sau diverse servicii. Mai exact, folosindu-se utilitare de packet sniffing se pot recepționa și date importante ce ar trebui, în mod normal să aiba un caracter privat, precum parolele numerele cărților de credit sau informațiile confidențiale.O soluție gresită pentru blocarea acestor probleme ce apar în momentul în care se folosesc software-uri de packet sniffing este folosirea unui switch ca metodă de interconectare în locul unui hub. Chiar dacă reduce probabilitatea ca un atacator să poată intercepta pachetele, nu reprezintă o metoda sigură. Sunt foarte cunoscute metodele prin care un switch poate să fie păcălit să trimită pachete chiar și către alte porturi (ori calculatoare), și nu către portul destinație. Această metodă se numește ARP poisoning.

Se pot preveni atacurile de recunoaștere, dacă se utilizează, printre alte metode, și:

Un firewall, pentru a fi blocate toate încercarile de recunoaștere

Numai protocoale sigure ce nu trimit datele în clar, ci numai criptate

Criptarea pentru protocoalele nesigure prin tunelare

Faza 2 – Obținerea Accesului

Poate una dintre cele mai sigure metode de obținere a accesului privilegiat este acela de a sparge parola. Prin acest lucru se întelege că atacatorul are deja acces pe o mașină aflată în rețea și dorește acces privilegiat de root sau Administrator. Chiar daca un atac de tipul brute force nu are cum să dea rezultate decât pe sistemele la care parolele sunt limitate la maxim 6,7 caractere, există atacuri ce exploatează unele mici particularități ale parolelor. S-a observant că majoritatea parolelor folosite de utilizatori se încadrează în niste categorii, pentru a fi relativ mai ușor de ținut minte. Pentru acest lucru există software-uri de spart parole bazate pe dicționare, precum Jack The Ripper.

O altă metodă de exploit-uri folosite de la distanță este deturnarea unei conexiuni TCP ( sau TCP session hijack). Această metodă constă în așteptarea ca un utilizator oarecare să se logheze pe sistemul ce urmează să fie atacat, și apoi în trimiterea de pachete către portul pe care rulează serviciul, luând astfel locul utilizatorului ce s-a autentificat mai devreme.

Această metodă se folosește dacă se pot prezice numerele de secvență dintr-un pachet TCP. O variantă de deturnare de conexiuni TCP este atacul man in the middle. În acest caz, hackerul trebuie să aibă acces la o mașină prin care trece traficul dintre A si B, și îi raspunde lui A, stabilind o conexiune cu entitatea. Apoi stabileste și cu B acelasi tip de conexiune. Toate datele trimise lui A vor fi apoi trimise lui B și viceversa. Astfel hackerul are acces la vorbirea dintre A si B deși traficul este criptat, din punctul de vedere al celor două entități.

Virușii pot reprezenta și ei metode de atac, mai ales atunci când poartă cu ei troieni, troienii reprezentând programe mici ce deschid virtuale uși de acces pe sistemele infectate.

IP spoofing reprezintă și ea o metoda de atac, dar se poate folosi și pentru a fi ascunsă identitatea hackerului, nu doar pentru a fi lansate atacuri.Prin acest atac, pachetele TCP/IP sunt manipulate astfel încat este falsificată adresa sursă. Prin acest mod, atacatorul poate căpăta astfel accesul și să își atribuie o adresă IP care să autorizeze și să acceseze resursa atacată. Din cauza falsificarii adresei sursa pachetului respective IP, atacatorul nu poate ridica decât o comunicare unidirectională ( luând în calcul presupunerea că nu este prezent în rețeaua locală a mașinii atacate).Din acest motiv protocolul TCP este nesusceptibil pentru asemenea atacuri. Există însa numeroase UDP ce pot fi exploatate cu un asemenea atac.

O metodă complet diferită față de cele prezentate o reprezintă ingineria socială. Ea constă în aflarea de informații esentiale direct de la utilizatori. Este o metodă mult mai grea și complexă, folosindu-se tehnici de psihologie inversă și urmarire și analiză fizică.

Faza 3 – Sistemele compromise sunt folosite pentru atacul asupra altor ținte

Sau atacul de tip Denial of Service (DoS) care opresc sau încetinesc enorm de mult funcționarea rețelelor atacate, sisteme ori diferite servicii. Sunt cauzate de către un hacker ce dorește să oprească accesul utilizatorilor la resursele atacate. Atacatorul nu are nevoie să fi căpătat înainte acces asupra calculatorului pe care doreste să il atace. Există mai multe posibilități prin care un atac DoS se poate realiza, însa efectul este mereu același: accesul persoanelor neautorizate de a folosi serviciile de pe sistem prin utilizarea la nivel maxim a resurselor sistemului de către hacker.

Soluții pentru implementarea securității

Firewall-ul ( sistem ori grup de sisteme ce implementează politica de acces în doua ori mai multe retele) reprezintă un mod bun de a fi asigurată securitatea perimetrală a rețelei.

Monitorizarea rețelei se poate face cu IDS (Intrusion Detection System), alt dispozitiv special în acest sens.

Păstrarea într-un mediu ferit și ostil a confidențialității și integrității datelor prin folosirea VPN-urilor (Virtual Private Network)

Pentru a fi identificate autorizarea și monitorizarea activitații utilizatorilor într-o ordine, se folosesc protocoalele RADIUS ( Remote Authentication Dial-In User Service) și TACACS( Terminal Access Controller Access Control System)

ATACURI ASUPRA SITE-URILOR WEB

Sistemele de nivel critic ale unei companii sau firme, precum serverele publice ori interne sau bazele de date ori aplicațiile, pentru acestea sunt necesare un nivel de securitate adecvat datorită importanței lor vitale în buna desfășurare a activității unei organizații. Deși sume mari sunt investite din ce în ce mai des în securizarea acestor sisteme, există mereu posibilitatea ca acestea să devină vulnerabile. De aceea, foarte multe din organizațiile concentrate pe menținerea unui climat de lucru securizat și bine protejat sunt mereu conștiente de vitalitatea simulării unor atacuri asupra sistemelor vitale.

Principalul obiectiv al unui test de penetrare este identificarea vulnerabilităților ascunse în sistem, venite din perspectiva unui hacker. Testul determină dacă se poate duce la capat cu success exploatarea descoperita, și, în cazul în care raspunsul este afirmativ, impactul asupra bunului mers al organizatiei. Toate analizele se desfășoară într-un mediu total controlat, folosindu-se aplicații speciale utilizate generalist de hacker.

Fazele de testare ale penetrării

Un proces de testare poate fi scris mai simplu în 5 faze principale:

Recunoașterea – este reprezentat de actul de colectare a informațiilor despre sistemul vizat. Aceste informații vor fi folosite pentru atacarea sistemului țintă. Spre exemplu, utilizarea motoarelor de căutare open source poate fi o informație ce poate fi exploatată pentru aflarea datelor utilizate într-un atac de tip inginerie sociala.

Scanarea – este reprezentată de procesul prin care sunt utilizate instrumente tehnice pentru aplicarea cunoștintelor hackerului asupra sistemului. Ca și exemplu, utilitarul Nmap poate fi folosit pentru scanarea unor porturi deschise.

Caștigarea accesului – folosirea datelor adunate din primele doua faze ale procesului, de unde atacatorul poate porni și folosi un volum util de date pentru exploatarea sistemului țintit. Ca și exemplu, utilitarul Metasploit poate fi folosit pentru a automatiza atacurile asupra vulnerabilităților cunoscute.

Păstrarea accesului – menținerea accesului se realizează prin luarea unor masuri necesare pentru a putea fi persistent în mediul țintă pentru a obtine într-un timp cât mai scurt, cât mai multe date posibil.

Acoperirea urmelor – hackerul trebuie să elimine orice urma ca a fost acolo, orice semn de compromitere a sistemului sau de descărcare a unor date, pentru a ramane anonym.

Datorită complexitatii ridicate a procesului dar și specificului confidențial și a sensibilității ridicate a informațiilor, testele sunt realizate de către specialist cu înalte standarde de etică, ce sunt certificați CEH ( Certified Ethical Hacker) de către International Council of E-Commerce.

Analiza riscului de penetrare înglobeaza teste de penetrare trimise la nivel de rețea, al caror obiectiv este testarea infrastructurii de rețea dar și a serverelor, precum și teste de penetrare aplicatii, al caror scop principal este testarea serviciilor active ale aplicațiilor.

De asemenea, testele pot fi efectuate atat în interiorul organizatiei cat și din exteriorul acestora (prin Internet), fie deținând informații anterioare cu privire la infrastructura (white box testing), fie neavând vreo informație despre sistemul testat.

Testele de penetrare oferă organizațiilor și firmelor ce le simulează o imagine mult mai clara asupra vulnerabilităților, ajutându-i astfel să iși construiască o strategie de management ce va avea ca scop final remedierea tuturor problemelor de securitate și evitarea apariției altora.

Testele de penetrare trebuie executate periodic, inclusive atunci când sunt implementate sisteme noi, deoarece niciun sistem nu este sigur, iar hackerii vor găsi întodeauna noi vulnerabilități de care pot profita.

În momentul încheierii acestor teste, un raport va fi generat. Raportul va descrie în detaliu problemele de securitate aparute în momentul testării, inclusiv mărimea impactului dar și riscul pentru companie. Pentru fiecare neconformitate de securitate trecută în raport, va exista o explicație detaliată a acțiunilor de minimazare și recomandări vor fi sugerate. În afara de acele recomandări tehnice, unde se permite, vor fi identificate și cauzele principale ale acelor neconformități și oferirea de recomandări la nivel operational, dar și la nivel de politică.

Abordări teste de penetrare

Sunt trei prime abordări pentru aceste teste de penetrare în funcție de nivelul inițial de cunoștințe referitor la sistemul țintă:

BlackBox: Într-un astfel de test, consultanții efectuează evaluarea țintei fără absolut nicio cunoștință despre sistemul ori rețeaua țintă. Un astfel de test oferă un scenariu foarte realist, în care un atacator nu cunoaște nimic despre țintă să și totuși dorește să inițieze un atac.

WhiteBox: Într-un astfel de test, testerii au la dispoziție toate detaliile și informațiile necesare ale sistemului țintă. Aceasta include, în mod normal, toată harta rețelei, detalii importante ale infrastructurii și uneori și codul sursă al aplicațiilor folosite. În funcție de scenariu, un test de penetrare în varianta WhiteBox poate să fie axat mai mult pe elemente particulare și prin urmare se poate dovedi mult mai efficient.

GreyBox: O combinație între cele doua teste amintite mai sus, în care se emulează un hacker intern ( automat cu niște cunoștinte despre infrastructura IT&C existentă în sistem) dar care este un utilizator fără privilegii (motive pentru care accesul ii este îngrădit), reușind o escaladare a privilegiilor pentru a iniția un atac.

Forme teste de penetrare

Cele mai frecvente trei forme de teste de penetrare utilizate la orice nivel sunt reprezentate prin:

Testele de penetrare ale aplicațiilor web: Un test de penetrare al aplicațiilor și sistemelor web este unul din scenariile în care este simulat un atac venit din exterior ce incearcă să compromită unul sau toate cele trei elemente ale securității informațiilor, și anume confidențialitatea, integritatea ori disponibilitatea, ori procesele de business din interiorul organizației, în mod normal acest atac desfăsurându-se prin Internet.

Teste de penetrare externe: Aceste teste sunt utilizate pentru a fi identificate vulnerabilitățile existente ce pot amenința interfața externa a sistemului informațional, dar și cu scopul de a fi evaluate și stopate. Toate aceste lucruri în scopul asigurării ca accesul neautorizat din exterior (adică atacurile realizate prin Internet) la sistemele sau informațiile interne ale organizatiei nu este posibil.

Testele de penetrare interne: Testele de penetrare interne readuc la viață un scenariu în care un hacker este conectat la rețeaua internă a unei companii sau firme, ori situația în care un angajat nemulțumit din oarecare motiv încearca prin diferite căi să saboteze buna desfășurare a companiei.

Distribuții de sisteme specializate

Foarte multe distribuții ale sistemului de operare sunt orientate către testarea penetrării legale. Asemenea distribuții, conțin, de obicei, și un set pre-ambalat și un set prestabilit de instrumente. Testerul de penetrare nu trebuie să incerce fiecare instrument în parte, ceea ce ar însemna ca s-ar putea înmulți complicațiile riscului, precum erori de compilare sau erori de configurare, ori probleme de dependență.

Exemple de teste de penetrare uzuale includ și:

BlackBox, ce este bazat pe Ubuntu

Kali Linux (urmasul lui BackTrack Linux), ce este bazat pe Debian

Parrot Security OS, bazat de asemenea pe Debian

Pentoo, bazat pe Gentoo

WHAX, bazat pe Slackware

UN ISTORIC AL ATACURILOR CIBERNETICE

Înca de la începutul Internetului, persoane rău intenționate au încercat să găsească și să exploateze vulnerabilitățile site-urilor web sau ale aplicațiilor, pentru a-și însusi foloase materiale sau sume de bani prin căi ilegale, provocând astfel pagube imense companiilor sau băncilor ori firmelor mari.

Cronologic, se va prezenta un scurt istoric ale celor mai răsunatoare atacuri care au zguduit Internetul din temelii și au deschis ochii programatorilor, făcându-i să înțeleagă ca astfel de amenințari sunt prezente oricând, orice sistem este vulnerabil și chiar și în zilele noastre, cand tehnologia a ajuns la un stadiu mai ridicat ca niciodată, niciun sistem nu este sigur. Mereu se pot găsi și exploata breșe de securitate ale diverselor sisteme din orice domeniu. Atacurile cibernetice au evoluat extrem de mult și reprezintă o armă extrem de periculoasă în mâini greșite.

1988 – Anul 1988 aduce cu el și apariția Viermelui Morris, unul dintre primii viermi cibernetici recunoscuți la nivel mondial ce afectează infrastructura cibernetică din întreaga lume, răspândindu-se mai ales la nivelul calculatoarelor din Statele Unite ale Americii.

Virusul a provocat stricăciuni în sistemul UNIX nr 1 și s-a replicat dupa bunul plac. A reușit să încetinească computerele până cînd acestea au devenit practice inutilizabile. Acest vierme a fost creat de Robert Tapan Morris, care, în declarația lui, susținea că a încercat doar să evalueze cât de mare este întinderea Internetului. Astfel el a devenit prima persoana acuzată și condamnată pentru frauda și abuzul în domeniul informatic pe teritorul Statelor Unite.

Decembrie 2006 – Înainte de lansarea unei nave spațiale, NASA a fost obligată să blocheze toate e-mailurile ce conțineau atașamente de teama unui eventual atac cibernetic. Business Week raporta că planurile realizate pentru cele mai recente lansări spațiale din SUA au intrat în posesia unor persoane necunoscute.

Aprilie 2007 – Rețelele guvernului Estoniei au fost hărțuite de un atac DOS lansat de niște hacker străini, după ce scutirii Rusiei cu privire la eliminarea unui memorial de război. Câteva servicii guvernamentale online au fost întrerupte pentru o perioadă de timp și sistemul bancar online a fost oprit definitiv.

Atacurile au însemnat mai mult niște revolte cibernetice decât atacuri criminale, iar estonienii s-au repliat și au raspuns foarte bine, relansând câteva dintre serviciile darâmate în câteva ore.

Iunie 2007 – Contul de e-mail neclasificat al Secretarului American al Apărării a fost spart de către persoane necunoscute, ca mică parte dintr-o serie mai mare de atacuri de acces și de exploatare a retelelor Pentagonului

Octombrie 2007 – Ministerul de Stat al Chinei a dezvăluit referitor la hackerii străini că 42% provin din Taiwan și 25% din SUA, au reușit să sustragă informații esențiale din puncte cheie chinezești.

În anul 2006, când rețeaua intranet a companiei CASIC (China Aerospace Science & Industry Corporation) a fost interogată, spyware-uri au descoperite în computerele departamentelor clasificate dar și ale liderilor corporative, lucru foarte grav ce ar fi putut aduce pierderi imense și scurgeri de informații clasificate.

Vara lui 2008 – Toate bazele de date ale campaniilor prezidențiale republicane, dar și democratice au fost sparte și descărcate de către persoane neautorizate. Locația nu a fost cunoscută.

August 2008 – Dată în care retelele de calculatoare au fost sparte de către hackeri, tocmai în timpul perioadei în care Georgia se află în conflict deschis cu Rusia. Graffiti-uri au aparut după acest eveniment pe site-ul guvernului georgian.

În realitate au existat puține întreruperi de servicii, dar atacurile au exercitat presiuni politice asupra guvernului georgian astfel încat pareau coordonate cu acțiunile militare ale Rusiei.

Ianuarie 2009 – Hackerii au atacat infrastructura Internetului Israelului în timpul unei ofensive militare din Fașia Gaza datând din ianuarie 2009. Atacul, ce a focalizat de la început site-urile guvernului, a fost execuat de pe cel putin 5000 de computere, sustineau sursele oficiale.

Israelienii au crezut inițial că atacul a fost inițiat de o organizație criminală dezvoltată într-un fost stat sovietic și susținută financiar de către Hamas sau Hezbollah.

Ianuarie 2010 – Grupul numit “Armata Cibernetică Iraniana” a întrerupt cunoscutul motor de cautare chinezesc, Baidu. Utilizatorii erau redirecționați către o pagină unde era prezentat un mesaj politic Iranian.

Aceeași “Armata Cibernetică Iraniană” a reușit să blocheze și Twitter, afișând un mesaj asemănător.

Octombrie 2010 – Stuxnet, ce reprezintă o piesă foarte complexă de malware concepută să interfereze cu sistemele Siemens de control, a fost descoperită în Iran, Indonezia dar și alte țări, ceea ce bineînteles a trezit suspiciuni asupra unei arme guvernamentale cibernetice destinate strict programului nuclear Iranian.

Ianuarie 2011 – Guvernul Canadian raportează un major atac cibernetic ce țintiseră agențiile sale dar și Departamentul de Apărare Național al Canadei.

Atacul forța să se deconecteze de la Internet Departamentul de Finante și Consiliul de Trezorerie dar și principalele agenții economice din întreaga Canada.

Iulie 2011 – Într-un discurs al Secretarului Adjunct de Aparare al SUA, acesta specifică care este strategia cibernetică a Departamentului Apărării, menționând de asemenea că un contractor al Apărării a fost spart și 24 de mii de dosare clasate au fost furate de persoane necunoscute.

Octombrie 2012 – Compania rusească Kaspersky a descoperit un atac cibernetic de nivel mondial, care, după declarațiile lor, activă încă din 2007. Acesta era numit “Red October”.

Hackerii au adunat informații exploatând vulnerabilitățile softurilor Microsoft Word și Excel. Primarele ținte păreau să fie tari situate în zona Europei de Est, fostă URSS și Asia Centrala, însă victime fiind raportate și în Europa de Vest sau America de Nord, rază de acțiune fiind imensă.

Virusul colecta date confidențiale de la ambasadele guvernamentale, firmele de cercetare, instalații militare, furnizori de energie sau infrastructure nucleare ori critice, pe scurt, instituții foarte importante într-un stat.

Martie 2013 – În acel an, instituții financiare sud-coreene, de asemenea și radiodifuzorul sud-coreean YTN, au avut retelele infectate cu mai mulți virusi. Autoritățile susțineau că situația este foarte asemănătoare cu incidentele cibernetice din trecut atribuite Coreei de Nord, acea țară fiind foarte cunoscută pentru forța cibernetică și nu numai.

Tot în martie 2013, are loc atacul asupra firmei Spamhaus, o firmă ce publica adrese de spam de pe tot globul. Atacul a avut loc după ce pe liste a fost introdus un site olandez.

Se spunea la vremea respectivă că atacul ar fi venit din Rusia. Hackerii au reușit să supraîncarce rețeaua mondială, folosind aproximativ 100.000 de servere pentru a transmite aproape 300 de gigabiti de trafic pe secundă.

2013 – La sfarsitul anului 2013, compania de retail Target a anunțat că în jur de 110 milioane de conturi ale clientilor au fost sparte. Atacul asupra gigantului a fost lansat într-o perioadă foarte sensibilă și importantă, în mijlocul sezonului de cumparaturi de Craciun.

Hackerii au reușit să fure aproximativ 40 de milioane de date de pe cardurile clienților companiei.

Conflicker – este considerat cel mai distructiv vierme informatic din istorie, reușind să infecteze zeci de milioane de computere pe care operau sistemul Windows. Afectate au fost în principal computere din spațiul cibernetic britanic.

Viermele se duplica și infecta alte calculatoare în mod automat, fără ca utilizatorii să realizeze vreo operatiune pentru asta – asta a facut să fie atât de distructiv și de greu de oprit.

Acest virus, printre altele, nu a permis utilizatorilor să acceseze site-urile specializate pentru a-și putea updata la zi programele antivirus, făcîndu-l astfel aproape imposibil de oprit.

Heartland – reprezintă cel mai mare atac îndreptat către domeniul bancar din istorie, prin care hackerii au reusit să fure aproape 130 de milioane de date de pe cardurile utilizatorilor Heartland Payment Systems. La final, banca a fost obligată, pentru ca marile companii Visa sau MasterCard să iși retragă plangerile, să plătească suma de 110 milioane de dolari.

Noiembrie 2014 – Celebrul atac asupra celor de la Sony Pictures, este considerat printre cele mai distructive atacuri comise vreodată.

Hackerii au reușit să sustragă cantități imense de date printre care și informații secrete ale companiei. Au sters hard-disk-urile făcând impracticabilă pentru aproape o săptămână activitatea studioului.

Se spune că întreaga operațiune a fost mana unor hacker nord-coreeni, care au dorit prin orice forma ca Sony să nu mai difuzeze sub nicio forma documentarul “The Interview”, un film despre asasinarea fictivă a fostului lider nord coreean Kim Jong Un. Gigantul american a resimțit efectele acestui atac chiar și după mai multe luni: multe computere ale companiei nu puteau fi utilizabile, la fel ca și programul de e-mail.

2017 – Lumea s-a confruntat cu cel mai grav atac de tip ransomware din istorie, numit WCry sau WannaCry.Au fost afectate foarte multe țări (Marea Britanie, Portugalia, Rusia, România, și numarul crește până la 99 de țări) dar și activitatea principalelor unități de stat.

Și țara noastră a fost vizată și atacată, Uzina Dacia confirmând că se află printre victim.

Conform rapoartelor, se pare că Rusia a fost cea mai afectată țară, aproximativ 1000 de computere ce aparțineau Ministerului rus de Interne au fost țintite și atacate.

Compania Renault a anunțat că a fost nevoită să oprească producția în Franța și Slovenia, din cauza atacului, dar și alte companii precum Nissan sau Deutsche Bahn ( companie feroviară din Germania), Telefonica (companie de telefonie spaniolă) sau FedEx (companie americană de curierat).

Aceasta este fereastra aparută în momentul în care un computer a fost infectat. Atacatorii anunță victima că toate fișierele le-au fost criptate, iar pentru decriptare trebuie să platească. Plata se face prin moneda virtuala Bitcoin și le este specificată perioada impusă de plată.Altfel, fisierele utilizatorilor vor fi pierdute.

Mesajul și interfața sunt foarte complexe, fiind tradus în mai multe limbi, dar și având un cronometru unde utilizatorul era anunțat cât timp mai are la dispoziție.

Milioane de utilizatori au primit acest mesaj. Acesta a fost recunoscut ca cel mai mare atac de tip ransomware din istorie.

WORDPRESS

WordPress este un sistem de administrare a conținutului (CMS) open source,lansat de către Matt Mullenweg și Mike Lite în 27 mai 2003, având la bază PHP și MySQL.Pentru a funcționa, platforma WordPress trebuie instalată pe un server web, fie el și local sau parte a unui serviciu de găzduire Internet. Un exemplu al primului caz este un computer care rulează pachetul software WordPress,org, iar al doilea, un serviciu precum WordPress.com.

Un computer local poate fi utilizat pentru testarea și învățarea unui utilizator. Sunt incluse ca și caracteristici o arhitectură deschisă a pluginurilor și un sistem bine organizat de șabloane. În cadrul unui bilanț, s-a descoperit că platforma WordPress este folosită de 30,6% din primele 10 milioane de site-uri în aprilie 2018. Astfel, WordPress rămâne una dintre cele mai folosite și populare platforme de gestionare a site-urilor sau bloggurilor din întreaga lume, susținând puțin peste 60 de milioane de site-uri web. Mai mult, a fost utilizat și pentru alte domenii, precum sistemele de afișare pervasive.

Chiar și la 15 ani de la lansare, WordPress rămâne o platformă de bază în crearea site-urilor și blogg-urilor, actualizată constant. Înca open source, la actualizarea platformei participă dezvoltatori prin multe module și metode.

În momentul de față, procentul de site-uri realizate în lume cu WordPress însumeaza un procent de peste 19%, majoritatea fiind reprezentate de site-uri de prezentare. WordPress rămâne și în ziua de azi una dintre cele mai flexibile platforme open source.

Scurt istoric

2001 – Michael Valdrighi lansează b2 cafeblog, o platformă de unde se puteau publica știri și articole, fiind sub licență GPL.

27 martie 2003 – Este lansată versiunea 0.71 Gold din platforma WordPress, realizată pe aceeași structură și folosind aceeași bază de date de către Mike Little și Matt Mullenweg.

03 ianuarie 2004 – Este lansată versiunea 1.0. Chiar și de la această versiune, este disponibilă instalarea “friendly” a platformei. De asemenea se pot adăuga linkuri Google, multiple categorii dar și moderarea comentariilor și suport tehnic.

22 mai 2004 – Apare versiunea 1.2, cu cea mai inovatoare îmbunătățire. Suportul de plugin-uri adăugat face ca platforma să fie una open source!

17 februarie 2005 – Odată cu apariția versiunii 1.5, platformei sunt adăugate niște funcționalități importante, precum temele sau sistemul de template-uri. versiunea 1.5 vine cu o temă implicită realizată de Michael Heilemann, numită Kubrick.

31 decembrie 2005 – Anul 2006 aduce cu el posibilitatea editării avansate pentru WordPress, o postare mult mai rapidă, dar și sisteme de import mult îmbunătățite și sisteme noi de administrare back-end.

22 ianuarie 2007 – Este adus din nou un update iar breșe importante de securitate sunt corectate, plus noi funcționalități de gestionare a conținutului.

16 mai 2007 – Versiunea 2.2 aduce cu ea un suport de module pentru teme și un sistem actualizat de suport prin feed de la ATOM.

24 septembrie 2007 – Apare versiunea 2.3 ce aduce notificări pentru actualizări, sistem îmbunătățit de taxonomie pentru categorii dar și un sistem de etichetare.

29 martie 2008 – Modificarea majoră a panoului de control apare odată cu apariția versiunii 2.5, în plus o funcție extinsă de cautare. Mai mult, utilizatorul are posibilitatea să încarce mai multe imagini dar si un sistem de module îmbunătățit.

15 iulie 2008 – Luna iulie a anului 2008 aduce cu ea și aparitia versiunii 2.6. O versiune ce duce platforma WordPress la un alt nivel. Administrarea postărilor și a paginilor de oriunde de pe glob.

11 decembrie 2008 – Versiunea 2.7 dă voie utilizatorilor să adauge module direct din panoul de administrare al platformei.În plus, se poate observa o interfață de administrare refăcută.

10 iunie 2009 – Sistemul CodePress(o editare mult mai avansată a paginilor) este integrat odata cu apariția versiunii 2.8.

19 decembrie 2009 – Se fac ultimele pregătiri pentru lansarea versiunii 3.0. Funcția UNDO este integrată la nivel global.

17 iunie 2010 – Versiunea 3.0 apare cu un panou de administrare mai modern, mai prietenos cu utilizatorul, precum și o temă nouă, Twenty Ten.

04 iulie 2011 – Versiunea 3.2 se focusează pe creșterea vitezei și optimizării platformei.

12 decembrie 2011 – WordPress devine mult mai prietenoas cu utilizatorii începatori.

13 iunie 2012 – Focusul versiunii 3.4 este îmbunătățirea configuratorului de teme. Este integrat și Twitter.

11 decembrie 2012 – Odată cu apariția noului tip de monitor Retina Display, WordPress se conformează și prin versiunea 3.5 apar actualizări precum color picker, temă îmbunătățită dar și un alt workflow pentru imagini.

1 august 2013 – Administrarea temelor devine din ce în ce mai avansată, mai ales cu apariția versiunii 3.6. Apare și optiunea de autosave pentru pagini sau posture.

24 octombrie 2013 – Adaugarea unor actualizări importante de securitate și mentenanță a platformei. Odată cu apariția acestei versiuni, implicit 3.7, parolele vor trebui setate mult mai complex.

12 decembrie 2013 – Tabletele și telefoanele mobile încep să devină din ce în ce mai performante, site-urile fiind mult mai usor de accesat. WordPress se conformează, iar cu apariția versiunii 3.8 platforma are design responsive pentru dispozitivele mobile și tipografia este schimbată cu fontul Open Sans. Panoul de control este mai simplificat și apare o nouă temă: Twenty Fourteen.

16 aprilie 2014 – Se pregătește lansarea versiunii 4.0. Dar înainte, apare versiunea 3,9, ce aduce îmbunătățiri asupra editorului media și modulelor live.

04 septembrie 2014 – Versiunea 4.0 apare și aduce cu ea un sistem de management noun out pentru media, schimbare limba și editorul de teme live. Este actualizat soft-ul pentru versiunea 5.5 de PHP și 5.6 de MySQL.

18 decembrie 2014 – Twenty Fifteen este noua temă implicită, modulul de schimbare a limbii este mult mai usor de folosit, dar și recomandari de module, toate sunt posibile odată cu apariția versiunii 4.1

23 aprilie 2015 – Funcția “Press This” este implementată versiunii 4.2. Îmbunătățiri aduse de asemenea sistemului embed și sistemelor de module.

18 august 2015 – Focusul merge pe experiență utilizatorilor pe mobil, siguranță sporită (cererea parolelor mai puternice). Apare versiunea 4.3

08 decembrie 2015 – Aspectul imaginilor de pe mobil este îmbunătățit, precum și introducerea unei noi teme, Twenty Sixteen. Apare versiunea 4.4

12 aprilie 2016 – Este adăugat inline linking, formatarea shortcurilor, dar și previzualizarea live pentru un design mai responsive. Apare versiunea 4.5.

16 august 2016 – Adăugarea fonturilor native, îmbunătățirea editorului și posibilitatea recuperării conținutului sunt acum posibile cu versiunea 4.6

06 decembrie 2016 – Versiunea 4.7 vine cu tema Twenty Seventeen, previzualizarea fișierelor PDF și o importanță funcție de custom CSS în editorul live. Foarte important, sunt rezolvate brese de securitate de la versiunile precedente, probleme care au dus la spargerea a peste un milion de site-uri web bazate pe WordPress.

Temele wordpress

Utilizatorii platformei WordPress au posibilitatea de a instala și schimba teme, Temele WordPress permit utilizatorilor platformei să modifice aspectul și funcționalitatea site-ului web fără a fi nevoie să modifice codul de bază sau conținutul site-ului web. Fiecare site care are la bază WordPress conține cel putin o temă și fiecare temă trebuie să fie proiectată folosind standardele impuse de WordPress cu un cod PHP structurat, un cod HTML ( HyperText MArkup Language) valid și cod CSS(Cascading Style Sheets). Temele sunt instalate direct utilizând instrumentul de administrare “Appearance” din tabloul de bord sau dosarele temei pot fi copiate direct în directorul tematic,spre exemplu prin FTP. Fișierele PHP, HTML și CSS găsite în teme pot fi modificate direct pentru a fi modificat comportamentul și impactul visual al temei, sau o tema poate fi o tema “copil” ce moșteneste setările dintr-o altă tema și suprimă selectiv caracteristicile temei parinte.

În general temele WordPress sunt clasificate în doua mari categorii: gratuite și premium. Majoritatea temelor gratuite sunt listate în directorul tematic WordPress și temele premium sunt disponibile pentru cumpărare de pe piețe și de la dezvoltatori individuali ai platformei. Utilizatorii WordPress pot, de asemenea să creeze și să își dezvolte propriile teme personalizabile. Tema gratuită Underscores este create de către dezvoltatorii WordPress a devenit usor o temă foarte populară pentru baza temelor noi.

Cele mai multe dintre temele WordPress oferă:

Design-ul și stilul general al site-ului web

Font styling

Paleta de culori

Locația widget-urilor

Aranjamentele din pagină (sau șabloane)

Stilurile pentru postări blog sau arhive blog

Detalii stilistice suplimentare.

Teme gratuite versus Teme platite

Precum plugin-urile WordPress, utilizatorul are posibilitatea de a alege peste o mie de teme gratuite din WordPress Theme Directory sau se poate investi în teme premium ori platite, ce se pot achiziționa din iTheme Builder.

Avantajele temelor premium sunt la fel ca și cele ale plugin-urilor premium. Temele premium dețin, de obicei, o bază de cod fiabilă și customizabilă ce oferă sprijin în cazul în care ceva nu funcționează bine.

Unele teme premium, precum Builder, funcționează mai mult precum un software de web design, permițându-i utilizatorului să-și proiecteze și creeze propriile desene și modele de pagini.

Plugin-urile wordpress

Prin pluginuri, platforma WordPress permite utilizatorilor extinderea caracteristicilor și funcționalitatea unui site sau blog către un nivel superior. În momentul de față, sunt disponibile peste 55,286 de pluginuri pentru WordPress, fiecare dintre ele oferind funcții diverse, folosite pentru afișarea informatiilor private utilizatorilor conectati și adaptarea site-urilor la nevoile fiecărui utilizator în parte.Toate aceste particularități variază în funcție de optimizarea motoarelor de căutare în parte, pana la portalurile clientului folosite pentru a afișa informațiile private ale utilizatorilor conectați, la sistemele de administrare a conținutului, la caracteristicile de afișare a contentului, spre exemplu adăugarea unor widget-uri sau bare de navigare.

Însa, nu toate pluginurile care sunt disponibile sunt mereu disponibile pentru actualizare și, prin urmare, există posibilitatea ca acestea să nu funcționeze conform asteptărilor, sau să nu funcționeze absolut deloc. Majoritatea pluginurilor disponibile pentru WordPress se pot instala fie prin clasica instalare manuală a fișierelor prin FTP sau CPanel sau prin tabloul de bord WordPress. Chiar și așa, multe terțe părti oferta pluginuri prin propriile site-uri web, dintre care multe sunt pachete plătite.

Dezvoltatorii web ce doresc sa creeze pluginuri trebuie să învețe sistemul de carlige prezent în WordPress ce constă în peste 300 de carlige împărțite în doua mari categorii: carligele de acțiune și cele de filtrare.

Plugin-urile se regăsesc în secțiunea Plugins din Dashboard-ul WordPress.

Ce se poate realiza cu un Plugin WordPress?

Dupa cum s-a specificat, plugin-urile reprezinta mici aplicatii ce sunt integrate si ruleaza pe partea de sus a software-ului WordPress. Acest lucru permite creerea aproape a oricarui model de site WordPress (nu doar a blogg-urilor).

Spre exemplu, exista posibilitatea:

Inceperii unui magazine online cu WordPress, utilizandu-se plugin-ul WooCommerce

Crearea unei placi de lucru cu WordPRess utilizandu-se Job Manager

Construirea unui director de afaceri utilizandu-se cele mai bune plugin-uri

Pornirea unor cupoane pe site cu RetainMeNot

Construirea unui site de fotografie utilizand Gallery Envira

Crearea unui site web Wiki utilizand baza Knowledge

Pornirea propriului site podcast utilizand pluginuri WordPRess

Exista o mica poveste populara in comunitatea WordPress, si anume “Exista un plugin si pentru asta”.

Indiferent despre ce actiune este vorba pe un site WordPress, este posibila. Daca functia in sine nu este disponibila in WordPress, atunci mai mult ca sigur exista un plugin pentru inlocuirea acesteia.

Vulnerabilități wordpress

O listă întreagă de probleme de securitate au fost descoperite la acest software, mai ales în anii 2007,2008 și 2015. Potrivit companiei Secunia, în data de aprilie 2009, platforma WordPress avea sapte sfaturi de securitate (dintr-un total de 32), cu un rating maxim de “. Compania Secunia menține o listă actualizată constant a vulnerabilitatilor WordPress.

În ianuarie 2007, foarte multe bloguri de optimizare a motoarelor de căutare, sau SEO, la fel ca și alte bloguri comerciale cu un profil mai mic, cu AdSense, au fost luate în vizor și atacate cu un exploit WordPress. O vulnerabilitate complet separată pe unul dintre serverele web ale site-ului proiectului a permis unui hacker să introducă un cod exploit sub forma unei “uși” din spatele unor descarcari de WordPress versiunea 2.1.1. Versiunea următoare, 2.1.2 a abordat această problemă iar un consultant lansat în acel moment cerea tuturor utilizatorilor să facă upgrade în cel mai scurt timp.

În mai 2007, un studiu a arătat că 98% din blogurile WordPress care au fost difuzate au fost atacate și exploatate deoarece erau în execuție și versiuni ale software-ului care nu erau acceptate. Pentru ca aceasta problemă să fie în mare parte diminuată, WordPress a facut din actualizarea software-ului un proces automatizat mult mai ușor de realizat, mai exact un singur click pentru versiunea 2.7.Chiar și cu implementarea acestor lucruri, setările de securitate ale acestui sistem de fisiere necesare pentru a permite procesul de actualizare pot constitui de asemenea un risc suplimentar.

Stefan Esser, fondatorul echipei de securitate PHP Security Response, vorbea critic într-un interviu acordat în iunie 2007 despre istoricul securității WordPress și cita probleme la arhitectura aplicației, ceea ce a făcut inutilă și dificilă scrierea unui cod care este securizat contra vulnerabilităților de injectie SQL dar si alte probleme.

În iunie 2013 s-a ajuns la concluzia că unele dintre cele mai descărcate 50 de pluginuri WordPress au fost extrem de vulnerabile la atacuri precum SQL Injection sau XSS. În urma unei inspecții făcute primelor 10 pluginuri, s-a ajuns la un rezultat extrem de îngrijorător. 7 dintre pluginuri erau vulnerabile.

Versiunea 3.7 a platformei WordPress aduce actualizări automate de fundal, totul pentru a promova o mai bună securitate de ansamblu și a eficientiza experiența de actualizare.

Instalările individuale ale platformei pot fi protejate cu pluginuri de securitate ce împiedică enumerarea utilizatorilor, împiedică sondele și de asemenea ascunde resursele. Utilizatorii au posibilitatea de asemenea să protejeze instalările WordPress ascunzând din pași precum păstrarea actualizată a întregului pachet de programe, temelor și pluginurilor WordPress, folosindu-se doar teme si pluginuri sigure, editarea fisierului .htaccess al site-ului, pentru a fi prevenite mai multe tipuri de atacuri bazate pe injectia SQL si blocarea neautorizata a accesului la fisierele sensibile. Este de asemena deosebit de important ca pluginurile WordPress să fie actualizate mereu, pentru că oricând se pot forma liste cu toate pluginurile folosite de un site iar apoi se pot executa scanări pentru găsirea eventualelor breșe de securitate. În momentul în care o breșa este gasită, poate fi usor exploatată de hackeri pentru, spre exemplu, a uploada fișiere PHP Shell, care vor colecta date private de la utilizatori.

De asemenea dezvoltatorii pot folosi instrumente pentru analiza potențialelor vulnerabilități ale platformei, precum WPScan, WordPress Auditor sau WordPress Sploit Framewok, toate dezvoltate de către 0pc0deFR. Toate aceste instrumente țintesc către vulnerabilitățile deja cunoscute, precum CSRF, LFI, RFI, XSS SQL Injection sau enumerarea utilizatorilor. Chiar și asa, nu toate vulnerabilitățile pot fi detectate de aceste instrumente, așa că utilizatorilor le este recomandat să verifice bine codul pluginurilor pe care le folosesc, temelor sau altor programe primite de la alți devoltatori WordPress.

În martie 2015, mai multi experți în securitate și SEO, inclusiv cei de la Search Engine Land, au semnalat ca un plug-in SEO pentru WordPress numit Yoast, utilizat de aproximativ 14 milioane de oameni din întreaga lume are o vulnerabilitate ce duce la exploatarea de catre hackeri prin injecția SQL. Imediat, pentru rezolvarea problemei s-a introdus versiunea 1.7.4 a aceluiași plugin pentru a fi eliminate orice bănuieli, din cauza expirarii de securitate pe care pluginul l-a avut.

În luna ianuarie a anului 2017, auditoriul de securitate de la compania Sucuri a descoperit o breșă în API-ul WordPress REST, ce permite oricarui utilizator neautorizat să modifice orice post sau chiar și pagina din cadrul unui site pe care rulează o versiune WordPress 4.7 sau ulteriorară.Auditorii au notificat silențios dezvoltatorii WordPRess, iar în numai putin de 7 zile WordPress a lansat un patch cu o prioritate deosebit de ridicată la versiunea 4.7.2 care aborda această gravă problemă.

Cerința minimă pentru versiunea PHP pentru WordPress este versiunea 5.2, aceasta fiind lansată în 6 ianuarie 2006 și nesuportată de către grupul PHP, astfel ca nu a mai primit niciun patch de securitate înca de la 6 ianuarie 2011, acest lucru reprezentând un lucru serios și de luat în seama în cel mai scurt timp posibil.

Din cauza lipsei unor modificari speciale ale codului implicit de formatare, site-urile ce folosesc platforma WordPress folosesc elemental canvas pentru a detecta daca browserul este capabil să emită corect emoji-uri. Deoarece browserul Tor nu face deosebiri, în prezent în această utilizare legitimă a API-ului Canvas și efortul de a se efectua amprentarea amprentei de pânză, se avertizează că site-ul web încearcă să “extragă date de imagine de canvas HTML5”. Eforturile în acest sens, de a căuta soluții pentru a se reasigura avocații pentru confidențialitate, păstrându-se în același timp capacitatea verificarii de redare a emoji-urilor corespunzatoare.

Reprezintă wordpress o platformă sigură?

Răspunsul la întrebare depinde de situație. În esență WordPress este o platformă foarte sigură, atât timp cât toate practicile de securitate sunt respectate și bine puse la punct.

Pentru că WordPress are o putere de aproximativ 25% înafara celorlalte site-uri web, vulnerabilitățile de securitate apar inevitabil, pentru că nu toți utilizatorii sunt atenți sau conștienți de riscurile existente. Dacă un hacker profesionist poate găsi o modalitate de a trece și sparge unul din cele aproape 700 de milioane de site-uri Web realizate în WordPress, poate scana cu ușurință și alte site-uri care rulează pe aceleași setări și pot fi ușor sparte.

WordPress rulează pe baza unui cod open source și deține o echipă specială pentru identificarea și remedierea problemelor de securitate care apar tot timpul în codul sursă. În momentul în care vulnerabilitățile sunt descoperite, remedierile sunt transformate în patch-uri trimise către utilizatori pentru rezolvarea imediată a problemelor. De aceea, păstrarea actualizată a fiecărui site WordPress este foarte importantă pentru securitatea generală a site-ului.

Este de reținut că vulnerabilitățile de securitate ale platformei se extind dincolo de corelația instalării temelor și pluginurilor pe site-ul utilizatorului. Potrivit unui studiu a celor de la wpscan.org, cele 3972 de vulnerabilități de securitate WordPress existente sunt structurate astfel:

52% din amenințări provin din pluginurile WordPress

37% din amenințări provin din baza WordPress

11% din amenințări provin din temele WordPress

Observăm că cel mai mare procent revine din pluginurile WordPress. Atenția trebuie focusată asupra tuturor cauzelor, însă cauzele cele vulnerabile merită o atenție specială.

Ce face un site wordpress vulnerabil la problemele de securitate ale platformei wordpress?

Există mai mulți factori ce pot transforma un site într-un site vulnerabil unor atacuri ale hackerilor.

Parole slabe

Folosirea unei parole slabe pentru un site web este una dintre cele mai mari vulnerabilități, dar care poate fi evitată cu ușurință. Parola pentru administrarea site-ului trebuie să fie una puternică și să includă mai multe tipuri de caractere, simboluri, numere sau litere mari. În plus de atat, parola site-ului trebuie să fie specifică doar site-ului și sa nu fie utilizată în altă parte.

Neactualizarea versiunii WordPress, Pluginurilor sau Temelor

Folosirea unor versiuni învechite ale temelor,pluginurilor sau versiunilor de WordPress vă poate lăsa site-ul vulnerabil atacurilor. Versiunile actualizate conțin mereu coduri curate și de folos pentru problemele de securitate din cod, de aceea este mereu de folos să actualizați și să folosiți cele mai noi versiuni ale temelor, pluginurilor sau versiunilor de WordPress pe care le folosiți.

Actualizările apar mereu în tabloul de bord WordPress de îndată ce sunt disponibile spre instalare. Utilizatorul poate realiza o practică de rulare a unui backup și apoi să ruleze toate actualizările disponibile de fiecare daca cand se conectează la site-ul WordPress. Deși aceste obiceiuri pot părea plictisitoare și răpitoare de timp, ele reprezintă o foarte bună metoda de securizare a site-urilor WordPress.

Instrumente precum iThemes ajută utilizatorul să gestioneze mai multe site-uri în WordPress în cazul în care acesta deține mai multe, printr-un tablou de bord specific.

Utilizarea temelor și plugin-urilor provenite din surse nesigure

Codul scris prost, nesigur sau de cele mai multe ori învechit reprezintă una dintre cele mai uzuale metode prin care atacatorii pot exploata un site WordPress. Pentru că pluginurile și temele vor fi mereu surse de potențiale vulnerabilități, ca o bună practică de securitate, este recomandat ca pluginurile și temele pentru WordPress să fie descărcate din surse sigure, precum depozitul WordPress.org sau de la companii premium. De asemenea este de recomandat să fie evitate versiunile “free” ale unor teme sau pluginuri gratuite, deoarece ele pot fi modificate pentru a conține programe malware, tocmai că foarte multi iși doresc calitate la costuri minime.

Folosirea unui hosting de o calitate indoielnică

Din moment ce serverul unde un site este hostat este o țintă continuă pentru presupuși atacatori, utilizarea unei găzduiri comune, slabe și nesecurizate face site-ul mult mai vulnerabil. În timp ce toate gazdele iși iau măsuri importante de siguranță pentru că serverele să fie protejate, nu toți țin cont de aceste lucruri și nu implementează cele mai recente măsuri de securitate pentru că siguranța serverelor să fie una ridicată și greu de spart.

Utilizarea comună poate fi de asemena o preocupare, pentru că foarte multe site-uri web sunt stocate pe un server comun. Dacă un site este spart, hackerii pot foarte ușor să aibă acces și la restul site-urilor prezente pe server. În momentul în care utilizatorul foloseste un VPN sau un server virtual privat, într-adevar, costurile sunt mai mari, dar și siguranța este alta, iar riscurile sunt diminuate cu mult.

Metode de implementat pentru protejarea site-urilor wordpress

Folosirea unei parole puternice

Dacă parola unui site are mai puțin de 6 caractere, este mare nevoie ca aceasta să fie actualizată. Dacă o parolă este utilizată pentru mai multe conturi, este nevoie ca aceasta să fie schimbată pentru fiecare cont în parte. Dacă o parolă este mai veche de 6 luni, trebuie actualizată cât mai repede. Aceste lucruri sunt foarte importante pentru o bună securizare a oricarui site WordPress.

Instalarea unui plugin de securitate WordPress

Folosirea unui plugin de securitate WordPress, precum iThemes Security reprezintă o modalitate excelentă de a gestiona măsurile de securitate suplimentare pentru orice site WordPress. iThemes Security oferă un control de securitate care este la un singur click distanță ce activează cele mai importante și recomandate setări de securitate.

Activarea autentificarii in doi factori pentru WordPress

Autentificarea în doi factori reprezintă înca un strat adăugat securității care înseamnă foarte mult. În plus, față de clasica parola, mai este necesar înca un cod generat pe un alt dispozitiv, de obicei smartphone, pentru a fi posibilă conectarea.

Autentificarea în doi factori este una dintre cele mai bune metode pentru blocarea datelor de conectare în WordPress și nu numai, minimizând aproape complet potențialele atacuri de tip brute force. Facebook este binecunoscut pentru utilizarea acestei metode.

Pastrarea site-ului WordPress actualizat

Din nou se readuce acest lucru, un site WordPress actualizat la zi reprezintă una dintre cele mai bune modalități prin care se pot evita foarte multe probleme de securitate.

Se recomandă actualizarea site-ului ori de cate ori este nevoie, dar și a temelor sau pluginurilor. În cazul în care utilizați pluginuri sau teme de tip premium, utilizatorul trebuie să fie sigur că deține o licență curentă care permite actualizări, fără să ruleze deloc versiuni învechite.

Configurarea permisiunilor corecte pe server

Utilizatorul trebuie să se asigure că permisiunile corecte sunt setate corespunzator pentru toate directoarele de pe server. Permisele specifică cine deține permisiunea de a citi, crea sau edita fișiere.

Programarea scanărilor contra programelor malware

Utilizatorii trebuie să păstreze fișierele curate prin controale periodice împotriva programelor malware. Scanarea malware o oferă pluginul iThemes Security Pro, oferind un raport despre starea malware a site-ului respective, împreuna cu alte stări ce necesită atenție.

Întodeauna trebuie să existe un plan doi pentru salvarea site-ului

Existența unui plan de back-up este o componentă foarte importantă a strategiei de securitate a site-ului WordPress. Configurarea back-up-urilor programate spre rulare și asigurarea că niște copii de siguranță vor fi trimise constant către o locație sigură din afara site-ului sunt metode bune pentru întreținerea siguranței. Utilizatorul trebuie să se asigure că acea strategie de back-up conține o componentă de restaurare în cazul în care o copie de rezerva este nevoie să fie restaurată.

Activarea WordPress Brute Force Protection

Activarea unui astfel de serviciu reprezintă un alt mod de a proteja serverul împotriva vulnerabilitatilor și a supraîncarcarii serverului. Utilizarea lui include atat protecție locala, cât și împotriva brute force a rețelei, pentru a le fi interzis utilizatorilor care au încercat să pătrundă în oricare site.

Principalele vulnerabilități ale platformei wordpress

În esența există multe soluții prin care securitatea WordPress poate fi sudată, însa doar o mică parte din site-urile web sunt capabile de asa ceva. Tocmai de asta, WordPress devine o țintă foarte populara printre atacatori.

Urmatoarele exemple poate ajuta instalarea WordPress să devină cu mult mai sigură și să sporească gradul de conștientizare a utilizatorilor asupra vulnerabilităților ce trebuie bine apărate.

Vulnerabilitate 1 – SQL Injection si URL Hacking

Problema: WordPress este o platformă bazată strict pe baze de date ce execută scripturi de pe servere în PHP. Aceste două caracteristici fac din WordPress o platformă sensibilă atacurilor de inserare URL malicios. Comenzile sunt trimise către WordPress prin parametrii URL, care pot fi modificate de către hacker astfel încat WordPress le poate prelua sau interpreta greșit, sau a acționa fără autorizație.

SQL Injection descrie o clasă a unor astfel de atacuri în care hackerii încorporează comenzi într-o adresă URL care declanșează comportamente cauzate în baza de date. (SQL este limbajul de programare folosit de baza de date MySQL). Toate aceste atacuri pot dezvalui informații confidențiale despre baza de date, oferind hackerilor posibilitatea de a intra în modificarea continutului propriu zis al site-ului. Multe dintre atacurile de defăimare asupra unor site-uri web sunt desfășurate sub aceasta forma de SQL Injection.

Alte versiuni ale adreselor URL hack-uite pot transforma comenzile PHP bun intenționate, care, din nou, pot duce la injectia de scripturi malware sau dezvăluirea sau sustragerea de informații confidențiale.

Apărare: Majoritatea instalărilor de WordPress sunt găzduite de către serverul bine cunoscut Apache. Apache utilizează un fisier numit .htaccess pentru că regulile de acces ale site-ului cu pricina să fie bine definite. Un set căt mai complex de reguli poate împiedica cu success interpretarea unor tipuri de injecții SQL sau adresele URL malicioase.

Codul de mai jos reprezintă un set foarte puternic de reguli bine puse la punct ce poate fi inserat în fisierul .htaccess al site-ului web care va bloca solicitările adreselor URL hack-uite dar și injecții SQL:

Vulnerabilitate 2 – Accesul la fisierele sensibile

Problema: O instalare obișnuită WordPress conține un numar de informații pe care nimeni nu dorește să poată fi accesate din afară. Acest gen de fisiere, precum fișierul de configurare WordPress, scriptul de instalare, chiar și fisierul “readme” ar trebui să rămână confidențiale.

Apărare: Exact ca și în cazul prevenirii atacurilor de tip URL hacking, utilizatorul poate adăuga comenzi în fișierul Apache .htaccess pentru a apăra mai bine site-ul și a bloca mai bine accesul la fișierele private confidențiale. Pentru o instalare obișnuită WordPress, codul de mai jos va bloca accesul la listele de directoare, în plus înca un set de fișiere specific legate de WordPress dar și de serverul web în sine:

Vulnerabilitate 3 – Contul de administrator implicit

Problema: Majoritatea instalărilor WordPress includ un cont de utilizator administrator al cărui username este simplu predefinit ca “admin”. Hackerii pot încerca să se autentifice știind deja acest detaliu încercand diverse parole.

Aparare: Orice fel de element de predictibilitate oferă hackerilor o oarecare margine. Chiar dacă un hacker trebuie practic să ghicescă sau să folosească brute-force pentru a accesa contul de admin, sunteți mult mai protejat fără un nume de utilizator denumit “admin”.

În schimb, utilizatorul trebuie să fie conectat la WordPress și să creeze un utilizator nou cu un nume cât mai imprevizibil pentru a fi cât mai greu de ghicit. Atribuiți privilegii de administrator acelui utilizator și ștergeți imediat contul denumit “admin”.Hackerul ar trebui acum să ghicească și numele de utilizator dar și parola, lucru infinit mai greu acum, după această modificare.

Vulnerabilitatea 4 – Prefixul implicit pentru tabelele bazelor de date

Problema: Bazele de date WordPress constau în mai multe tabele. În cele mai multe dintre instalările WordPress, aceste tabele sunt denumite cu un prefix de bază, și anume “wp_”. Pentru orice tip de atacator acest detaliu poate duce la exploatarea acestuia și îi poate oferi un avantaj.

Aparare: Schimbarea prefixelor standard ale tabelelor WordPress poate elimina aceasta importantă previzibilitate. Experții în securitate consideră că acest lucru nu va opri un hacker avansat să folosească cu totul alte mijloace pentru a determina numele real al tabelului din instalarea WordPress. Acest lucru este total adevarat, însa este adevarat doar în cazul hackerilor avansați, în timp ce multi hacker amatori folosesc multe scripturi pre-ambalate pentru a-și duce la capat munca și acestea, este foarte probabil să fie blocat cu success prin eliminarea numelor de tabele previzibile.

Când se realizează o nouă instalare WordPress, utilizatorul poate specifica prefixul tabelei bazei de date. Acest lucru oferă posibilitatea de a alege ceva unic și imprevizibil contra atacatorilor. În cazul în care WordPress este deja instalat, utilizatorul poate modifica retroactiv numele tabelelor bazelor de date. Chiar dacă acest lucru se poate realiza manual, procesul necesită manipularea directă a bazei de date în diferite locuri.

O modalitate mai simplă de a schimba prefixele pentru o instalare WordPress existența este instalarea și folosirea pluginului Better WP Security. Acest plugin are o interfață simplă pentru a schimba numele tabelului pentru a include un prefix general de tip random.

Vulnerabilitatea 5 -Incercarea de conectare folosind BruteForce

Problema: Hackerii se bazează de multe scripturi generate automat pentru a-și duce la capat intențiile. Aceste scripturi pot trimite multe încercari pentru conectarea la pagina de administrare WordPress prin încercarea automată a sute de mii de combinații de nume de utilizator și parole. Nu numai că utilizatorul este bombardat cu încercări de conectare ce încetinesc site-ul pentru utilizatorii legiti, dar riscul este că aceștia să reușească să preia controlul site-ului.

Aparare: În primul rand, folosirea unor parole foarte puternice. O parolă lungă, de tip mixt, va fi mult mai greu de decodat de un atac prin forta bruta. Aceste atacuri folosesc de obicei combinații de cuvinte și numere dintr-un dicționar.

Un mod de a apara site-ul mai eficient este instalarea unui limiter de conectare pentru WordPress. Mai exact, acest limitator poate să blocheze sau să pună în carantină o adresa de IP sau un nume de utilizator care încearcă și trimite solicitări de conectare peste o limită împusă. De exemplu, dacă limita de conectare este de 10 ori la 5 minute, dacă este depășită, utilizatorul respectiv este penalizat și nu se mai poate conecta pentru o anume perioadă de timp.

Un atac de tip forță brută împotriva unei parole foarte puternice este practic fără ispravă cu aceste limite impuse, deoarece hackerul nu poate încerca niciodată destule variante, sau altfel spus, ar fi nevoie de, poate și ani întregi de conectări continue.

Două astfel de pluginuri ce ajută și pot fi instalate se numesc Limit Login Attempts și Better WP Security.

Aceste strategii reprezintă doar o eficientizare a securitătii WordPress, nu încheierea tuturor atacurilor. Ca orice alta formă de securitate, apărarea în WordPress este un process continuu care trebuie să implice clar conștientizarea de noi amenintari, mai grave sau mai putin grave, în funcție de intensitate, combinate cu date specific mediului de instalare WordPress, și mulându-se pe update-uri sau patch-uri.

Atacuri comune lansate către wordpress

Cele mai întalnite probleme de securitate ale site-urilor WordPress apar înainte sau imediat după ce site-ul este la pamant. Scopul oricarui atac este să obțină accesul neautorizat al unui site la nivel de administrator, ori de la front-end, tabloul de control, ori de la server.

Atacul de tip brute force

Atacul de tip forță brută ( Brute Force) se refera la metoda prin care se încearcă și esuează introducerea a unor mii sau milioane de combinații de nume de utilizator și parole până când combinația corecta este descoperită. Acest atac exploatează prima și cea mai simplă cale a unui site WordPress: ecranul de conectare.

Platforma WordPress este construită în așa fel încat nu sunt limitate încercarile de conectare, astfel că roboți programați în acest mod pot folosi metoda forței brute pentru atacarea unei pagini WordPress. Chiar dacă, la final atacul Brute Force nu are succes, daunele pot apărea deoarece sistemul este supraîncarcat și automat site-ul va cădea. Unele sisteme de gazduire va pot suspenda contul atunci când un utilizator este ținta unui asemenea site, din același motiv: suprasarcina sistemului.

La bază, atacul Brute Force este un atac criptanalitic ce poate fi folosit teoretic pentru încercarea de a decripta orice fel de date criptate (excepție făcând datele criptate într-o maniera cât se poate de sigură). Un atac de acest tip se poate folosi în momentul în care nu este posibilă profitarea de alte deficiențe prezente într-un sistem de criptare (dacă într-adevar există) pentru că sarcina să fie cu mult ușurata.

Fereastra atacului Brute Force transpus prin soft-ul Aircrack-ng

Când parola se ghiceste, metoda aceasta este rapida și se utilizează în special pentru aflarea parolelor de dimensiuni scăzute. Pentru parolele lungi este folosită deseori atacul dicționarului, deoarece metoda forței brute ar dura mult prea mult. Parolele sunt mult mai lungi, cheile sau frazele de access au mult mai multe valori posibile, ceea ce le fac clar mult mai greu de aflat decât cele scurte.

Aceste atacuri de forță brută pot fi mai eficiente prin obfuscarea datelor ce urmeaza a fi date spre codificare, ceea ce face putin mai dificil pentru atacator să iși dea seama momentul în care codul a fost spart, sau, făcând atacatorul să depună mai mult efort pentru a grabi testarea.Una dintre cele mai bune măsurători ale acestui tip de atac este, practic, cât timp durează până când atacatorul descoperă parola.

Conceptul de bază al acestui tip de atac este simplu. Atacurile de tip Brute Force lucrează prin calcularea fiecărui combinații posibile care poate constitui o parola dar și folosirea acestuia pentru a descoperi dacă este parola corectă sau nu. În timp ce lungimea parolei crește, automat și intervalul de timp pentru descoperirea parolei crește și el exponențial.

Limitari teoretice – Resursele necesare pentru un atac de tip forță brută cresc exponențial în momentul în care și dimensiunea cheii crește. Deși reglementările referitoare la exportul din Statele Unite ale Americii au restricționat limitele unei chei simetrice la 56 de biti, aceste restricții au fost ridicate, astfel că în ziua de azi, un algoritm simetric folosește, în mod normal, chei cuprinse între 128 și 256 de biți computaționali, progresiv mai puternic.

În timp ce au devenit accesibile oricui aceste solutii comerciale ale predecesorilor guvernamentale ASIC, cunoscuți mai larg și sub denumirea de atacuri hardware personalizate, două soluții eficiente și-au dovedit capacitatea în atacurile brute-force. Una dintre ele este reprezentata de GPU ( tehnologia de procesare a graficelor), iar cealaltă se refera la tehnologia FPGA ( Gateway Programmable Gate Array). Unitățile de procesare grafică beneficiază de o disponibilitate exponential întinsă și de multe avantaje privind performanța prețurilor. Amandouă tehnologii încearcă să transporte beneficiile procesării paralele ale atacurilor de forță brută.În cazul în care vorbim despre câteva sute de GPU-uri și mai mult de cateva mii de FPGA, situația se schimbă și devin mult mai diferite și devin mult mai potrivite pentru spargerea parolelor.

Algoritmul AES permite criptarea cheilor pe 256 de biți. Pentru spargerea unei chei simetrice criptată pe 256 de biți este necesară o forță brută de 2128 de ori mai puternică decât o cheie pe 128 de biți. La un calcul rapid, aproximativ 50 de supercomputere ar putea verifica astfel de parole de miliarde si miliarde de ori pe secundă (ipotetic vorbind, în cazul în care o astfel de mașină ar exista) și ar necesita, în mare, aproximativ 3 x 1051 ani pentru a fi epuizat tot spațiul cheie de 256 de biti.

Graficul de mai sus ne arată că procentul atacurilor de tipul Bruteforce este unul amenințător

O ipoteză ce stă la baza unui atac de tip brute force este ca o cheie spațială completă a fost folosită pentru a genera chei, iar ceva ce se bazează pe un tip de generator foarte eficient de numere aleatorii, dar nu există niciun defect în algoritm sau implementarea acestuia.Un exemplu ar fi un numar de sisteme considerate prima data a fi imposibil de spart prin utilizarea atacurilor de forță brută și totusi au fost sparte în cele din urma, motivul fiind unul simplu: lipsa entropiei din numarul de pseudoalegeri generate. Printre acestea sunt incluse și implementarea SSL de către Netscape ( cunoscut ca Ian Goldberg și David Wagner în anul 1995, de asemenea și o ediție Debian/Ubuntu a lui OpenSSL descoperită în 2008 ca fiind eronată de asemenea). O astfel de lipsă a entropiei a dus la spargerea codului mașinii Enigma, una dintre cele mai controversate din istorie.

Coduri de nespart – Câteva tipuri de criptare, mulțumit proprietăților matematice deținute, sunt de netrecut prin atacuri de forță brută. Un astfel de exemplu este criptografia de tip pad-time, în care fiecare bit clartext deține o cheie dintr-o succesiune într-adevar aleatorie de biți cheie. Un șir de caractere de 140 de caractere ce este supus unui atac de tip bruteforce va afișa până la urma fiecare șir din cele 140 de caractere, de asemenea și raspunsul correct, dar din absolut toate răspunsurile afișate, nu există nicio metodă pentru a se afla varianta corectă. Cedarea unui astfel de sistem , asa cum s-a descoperit și la proiectul Venona, se bazează pe greșeli din implementarea sa: placuțele cheie nu sunt într-adevar aleatoare, tastaturile incerceptate sau multe alte erori de acest fel.

Măsuri de prevenire – În cazul unui atac offline în care atacatorul ajunge să aibă acces si să pună mâna pe materialul criptat, se pot încerca diverse combinații de taste fără a exista în vreun fel riscul descoperirii sau a vreunei interferențe. Cu toate acestea, toți administratorii de baze de date sau directoare pot lua măsuri împotriva atacurilor ce se desfășoară online. Un tip de măsură ar consta în limitarea numarului de încercări de parcurgere a unei parole prin introducerea unei mici întarzieri între încercările repetate sau creșterea complexității răspunsului (codurile CAPTCHA reprezintă o soluție în acest caz). Administratorii de site-uri web pot de asemenea intercepta și împiedica o anume adresa IP să încerce multiple încercări de logare, precum și banarea acesteia.

Există foarte multe software-uri prin care se pot realiza experimente de penetrare responsabile și în legalitate.Este de specificat faptul că orice software gratuit pus la dispoziție utilizatorilor este creat doar pentru testari normale, și fără ca testul să se transforme în hacking se țintește crearea de pagube, indiferent de gravitatea faptelor.

Aircrack-ng

Cain and Abel

Crack

DaveGrohl

Hashcat

John the Ripper

L0phtCrack

Ophcrack

RainbowCrack

Atacul BruteForce rulat prin soft-ul John The Ripper

Există de asemenea și o suită de plugin-uri disponibile pentru WordPress ce limitează accesul de logări pe site-ul web dar și blocarea unor persoane să acceseze wp-admin, precum:

BruteProtect

Limit Login Attempts

Lockdown WP Admin

Admin Renamer Extended

Enforce Strong Password

Atacul de tip exploit

După atacurile bine cunoscute de tip Brute Force, vulnerabilitățile din codul PHP al site-urilor ce au la bază platforma WordPress reprezintă urmatoarea gravă problemă de securitate dar și cea mai comună ce poate fi exploatată mai greu sau mai usor de către atacatori. ( PHP reprezintă codul folosit de site-ul dumneavoastra WordPress, alături de teme dar și plugin-uri).

Exploit ( venit de la verbul “to exploit”, adică folosirea a ceva în scop propriu”), este reprezentat de o secvență de cod sau o succesiune de date ori set de comenzi, ce profită de o eroare sau vulnerabilitate clară în scopul determinării unui comportament nedorit al software-ului, hardware-ului de pe un calculator sau orice alt dispozitiv electronic. Acest tip de atac include în mod frecvent obținerea controlului asupra sistemului de calcul țintit sau permiterea escaladării de privilegii sau refuzul de servicii.

Incluziunile de coduri potențial periculoase în fișierele site-ului apar atunci cand codul vulnerabil este folosit pentru uploadarea fișierelor la distanța care permit atacatorilor accesul usor la site-ul web. Exploatările de includere a fișierelor reprezintă una dintre cele mai comune metode prin care atacatorul poate accesa fișierul wp-config.php al site-ului, unul dintre cele mai importante fișiere din instalarea WordPress, fișier unde se află numele și parola bazei de date la care este legat site-ul.

În zilele noastre au fost determinate mai multe criterii de clasificare ale exploit-urilor, iar cel mai utilizat dintre ele fiind reprezentat de modalitatea prin care atacatorul contactează țintă. Un “exploit” asupra unei rețele, profită la maxim de erorile de securitate ale sistemului fără ca înainte să aibă acces la sistem. Un “exploit loca” însă, necesită acces dinainte asupra sistemului țintit și de obicei mărește numarul de privilegii ale persoanei care îl rulează fără de cele acordate inițial de administratorul de sistem. Deci, atacatorii pot instala codul fără ca persoana păgubită să bănuiască ceva. Astfel de instrumente sunt foarte folosite de catre infractorii cibernetici ce doresc să sustragă sume de bani de la utilizatori aleși la întamplare sau mari companii, dar și de autorii atacurilor cu ținta fixă, în momentul în care se doresc informații cu caracter confidențial sau secret.

Există și exploit-uri împotriva aplicațiilor client ce constau de obicei în servere modificate voit de către atacatori ce trimit un exploit în momentul în care un client îl accesează. Se consideră că exploiturile împotriva aplicațiilor client necesită obligatoriu interacțiunea cu utilizatorul, tocmai din acest motiv pot fi folosite împreună cu metoda ingineriei sociale.

O alta clasificare o reprezintă și funcția de acțiune vizată prin atacul asupra unui sistem cu vulnerabilități: obținerea accesului neautorizat la datele unui site web, execuția codului arbitrar și negarea serviciilor.

O multimer de exploit-uri urmăresc cu interes obținerea de acces la nivel de super user asupra calculatorului vizat. Se pot folosi fără dubiu multe tipuri de exploit-uri, prim pas pentru a fi obtinut accesul de tip “low-level” iar mai apoi escaladarea privilegiilor până când atacatorul ajunge să poată opera ca un root.

În mod obișnuit, un exploit poate profita maxim, dar doar de o anume vulnerabilitate. În momentul în care un exploit este facut public, imediat pentru vulnerabilitatea respectivă se naște un patch, iar automat exploit-ul respectiv nu mai poate fi folosit pentru noile versiuni ale software-ului. Acesta este unul din realele motive pentru care hackerii profesioniști nu iși dezvăluie niciodată metodele. Asemenea exploit-uri sunt numite și “exploit-uri zero-day” și obținerea de acces de acest fel stă în caracter atacatorilor neexperimentați, de mai multe maini, numiți și “script kiddies”.

Cum apar exploit-urile?

Deși exploiturile pot apărea într-o varietate de moduri, iar o metoda comuna este ca exploiturile să fie lansate de pe site-uri rău intenționate. Victima poate să viziteze sau să fie redirecționat către un astfel de site și automat exploitul să fie descărcat.

Site-urile web dăunătoare folosite pentru exploatarea computerului pot fi de asemenea echipate cu pachete exploit, seturi de instrumente software ce include software-uri rău intenționate ce poate fi folosit pentru a dezlănțui atacuri în lant asupra diferitelor vulnerabilități ale browserului de pe site-ul rău intenționat sau de pe site-ul care a fost atacat și obținut. De obicei, atacurile de acest gen vizează software-ul codificat în Java, browserele neprotejate sau plug-in-urile de browser și sunt frecvent utilizate pentru implementarea de malware în computerul victimei.

Operații automate, precum cele lansate de pe site-uri rău intenționate, sunt alcătuite din două componente principale, și anume codul de exploatare și codul shell. Codul de exploatare reprezintă software-ul ce încearcă să exploateze o vulnerabilitate cunoscută, iar codul shell reprezintă sarcină utilă a software-ului exploit, proiectat să funcționeze în momentul în care sistemul tinta a fost încalcat. Codul shell iși preia numele din faptul ca unele dintre aceste sarcini utile deschid o anume “cochilie” de comandă ce poate fi utilizată pentru rularea de comenzi împotriva sistemului țintă; cu toate acestea, nu toate codurile shell deschid, de fapt, un shell de comandă.

Cercul vicios prin care un utilizator este infectat

Printre cele mai grave atacuri informatice răspândite în ultima perioadă sunt cele care corespund paginilor web cu date CSS ce sunt infectate cu scripturi ce pot fi descărcate. Se regasesc pe locurile 1, 13 si 19 și au rolul de a descărca în computerul infectat doua feluri de exploit-uri – unul pentru vulnerabilitatea CVE-2010-1885 din Microsoft Windows Help and Support Center iar celălalt pentru vulnerabiltiatea CVE-2010-0840 din Java Virtual Machine.

Faimoase vulnerabilități și exploituri

În ultimii ani, un numar mare de exploituri de profil au fost utilizate pentru spargeri masive de date și atacuri malware. În anul 2016, gigantul Yahoo a anunțat că o spargere a avut loc recent ce a cauzat scurgerea datelor de la aproape un miliard de utilizatori. Hackerii au reușit să obțină acces protejat la conturile de e-mail ale utilizatorilor, pentru că parolele au fost protejate de MD5, ce reprezintă un algoritm depășit și uzat.

Alt atac exploit cunoscut este EternalBlue, ce atacă un patch al protocolului Windows Server Message Block. Exploitul, atribuită Agentiei Nationale de Securitate a fost facută publică de grupul Shadow Brokers a fost utilizată mai tarziu și de hackerii ce au lansat atacurile WannaCry și NotPetya, atacuri ce au provocat pierderi mondiale.

Printre cele mai recente a fost provocată lui Equifax, marea companie de raportare a creditelor, ce a suferit o imensă încalcare a datelor, asta dupa ce atacatorii au exploatat o vulnerabilitate critică din cadrul Apache Struts, ce a fost folosit într-una din aplicațiile web ale companiei. Un patch a fost lansat pentru repararea defectului critic, iar Equifax nu și-a actualizat aplicația web până cand atacatorii nu au fost detectați.

Un raport realizat de către compania Karspersky la începutul anului, numit T1, a scos la iveală niște statistici foarte grave:

Detectarea și respingerea a peste 796.806.112 de atacuri periculoase de pe resurse localizate în aproape 194 de țări de pe întreg globul

Componentele antivirusului au recunoscut 282.807.433 de URL-uri unice infectate

Înregistrarea tentativelor de infectare cu malware ce au ca scop furtul de bani, accesând conturile bancare a peste 204.448 de utilizatori.

Detectarea unui numar total de 187.597.494 de fișiere infectate ce puteau ajunge la utilizatori

Detectarea a peste 18,912 pachete de instalare pentru mobil de tip troian

Atacul de tip SQL INJECTION

În ultimii ani, atacul de SQL Injection se pare că a devenit arma preferată a hackerilor atunci când doresc să dărâme un site web. Mari companii de renume global, precum Microsoft sau Yahoo au căzut atunci când au fost atacate cu interogari menite să descopere codurile bazelor lor de date.

Un atac de tip SQL Injection constă în inserarea unui script de tip SQL (acronimul de la Structured Query Language) într-o aplicație ce se dorește crăpată prin intermediul unei căsuțe de input. Sau metoda mai simplă, în cazul în care un hacker găsește pe un site un formular de înscriere, el va încerca să introducă acolo scriptul SQL care poate citi cu ușurința baza de date.

Un astfel de atac în cazul în care are succes are consecințe devastatoare: comenzile de inserare, actualizare sau ștergere se pot folosi asupra bazei de date de catre atacator. De asemenea atacatorul poate să execute comenzi de administrator dar și să șteargă întreaga bază de date, în funcție de interesele acestuia.

În esență, atacul este realizat prin plasarea unui meta caracter într-o zonă de input a site-ului vizat pentru ca mai apoi să apară în panoul de control o comandă SQL care în mod normal nu trebuia să existe acolo.

Modul de acționare este simplu. În momentul în care hackerul a introdus, de exemplu, un nume de utilizator care contine caractere escape (nume_de_utilizator’), baza de date va returna automat un mesaj de eroare. Mesajul de eroare este mesajul clar catre hacker ca inputul utilizatorului a fost integrat în sintaxa SQL a site-ului, și că aplicația nu este capabilă să curețe singura eroare. Astfel, baza de date este vulnerabilă și usor de atacat și exploatat.

Cazul fericit era dacă în momentul introducerii unui astfel de nume de utilizator ar fi că aplicația nu ar fi permis astfel de caractere. Și numele de utilizator să fie afișat cu caractere escape șterse.

În momentul în care hackerul a observant că site-ul este vulnerabil la acest tip de atac, nu va face altceva decât să introducă scripturi mult mai complexe, menite să acapareze și să manipuleze usor întreaga baza de date. Va rămâne doar o chestiune de timp și încercări până când întreaga baza de date, precum și toate datele introduce, fie ele confidențiale sau nu, vor fi compromise. Indiferent dacă vorbim despre o companie mică, o afacere personală sau o companie de renume mondial, pagubele sunt semnificative din orice punct de vedere am privi.

Ținând cont de cele specificate, este bine de știut ca în cazul în care hackerul este și unul avansat, consecințele infectarii cu un script malițios SQL pot fi devastatoare pentru orice sistem:

Hackerul poate folosi SQL Injection pentru a trece peste autentificare sau a lua locul altor utilizatori

Una dintre funcțiile de baza ale lui SQL este selectarea datelor pe baza unei interogari și ieșirea rezultatului acelei interogari. O vulnerabilitate SQL Injection, în anumite cazuri, ar putea permite divulgarea tuturor datelor deținute pe serverul atacat.

Pentru că o aplicație web utilizează SQL pentru a modifica datele dintr-o bază de date, un atacator ar putea folosi usor SQL Injection pentru a modifica și el, la rândul lui, datele stocate în baza de date.Modificarea datelor afectează integritatea lor și astfel pot aparea probleme de repudiere, ca de exemplu, anularea tranzacțiilor, modificarea soldurilor curente sau apariția altor înregistrari.

Limbajul SQL este folosit pentru a șterge înregistrarile dintr-o baza de date. Un hacker se poate folosi de SQL Injection pentru a realiza acelasi lucru.

Deși se foloseste o strategie adecvată de salvare, ștergerea datelor ar putea afecta disponibilitatea unei aplicații până la restabilirea bazei de date

Unele servere de baze de date pot fi configurate (voit sau nu) pentru a putea permite executarea arbitrară a comenzilor sistemului de operare pe serverul bazelor de date. Având în vedere condițiile corecte, un atacator ar putea folosi SQL Injection precum un vector inițial într-un atac al unei retele interne care se afla în spatele unui paravan de protecție.

Voi exemplifica un cod SQL Injection clasic.

Presupunem că în codul sursa al unui site sau al unei aplicații se află urmatoarea comandă:

SELECT * FROM Users WHERE Username='$username' AND Password='$password'

Acest tip de comandă verifică dacă în baza respectiva de date se află o înregistrare cu un anume user dar și o parolă. Reprezintă scriptul clasic de autentificare. În cazul în care acel utilizator există în baza de date, i se va acorda accesul, în caz contrar, nu.

Voi presupune ca în câmpurile username și parola se vor introduce urmatoarele caractere:

$username = 1' sau '1' = '1

$password = 1' sau '1' = '1

Atunci, interogarea va fi de forma următoare:

SELECT * FROM Users WHERE Username='1' OR '1' = '1' AND Password='1' OR '1' = '1'

Iar datele dacă într-adevar vor fi trecute către site-ul www.exemplu.ro, cererea de logare va fi de forma:

http://www.examplu.ro/index.php?username=1'%20or%20'1'%20=%20'1&password=1'%20or%20'1'%20=%20'1

Astfel că această interogare va returna valoarea sau un set de valori, pentru că trebuie să fie întodeauna adevarată condiția 1=1. Rezultatul este ca un utilizatorul se poate loga la site chiar dacă nu a introdus userul și parola potrivită.

Detectarea vulnerabilităților SQL Injection

Primul lucru pe care un utilizator trebuie să il facă este să afle cand și unde site-ul sau aplicația deținută interactioneaza cu baza de date. Este extrem de important să fie întocmită o listă cu toate câmpurile de input, iar acestea să fie testate, fiecare în parte. Se cere atenție sporita și la câmpurile ascunse.

De obicei, aplicații precum:

formulare de contact

motoare de căutare de pe site

site-uri de cumparaturi on-line

sunt cele ce interogheaza în cele mai multe dintre cazuri baza de date.

Un test simplu pe care fiecare utilizator il poate realiza este includerea caracterelor (‘) sau (;) în formularul testat. În cazul în care aceste caractere nu sunt filtrate, atunci un mesaj de eroare va fi automat returnat.

Mesajul de eroare poate fi de forma:

“Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]Unclosed quotation mark before the 
character string ''. “

Un alt tip de test este de a introduce user name-ul și parola în exemplul specificat mai sus.

Pe lângă descoperirea dacă site-ul sau aplicația sunt vulnerabile la atacul SQL Injection, hackerul trebuie să cunoască și tipul bazei de date folosite. Astfel, deși limbajul SQL este standard, fiecare sistem de baze de date are ceva specific ce o face unică. Pentru a se trece la un SQL Injection ceva mai avansat, ce cuprinde comenzi mult mai complexe, trebuie cunoscute bine acele funcții sau metode specifice interogarii bazelor de date.

Tot într-un mesaj de eroare este subliniat și care este sistemul bazei de date.Spre exemplu:

ORACLE va returna un mesaj de tipul ORA-00933

“MySQL – check the manual that corresponds to your MySQL server version
Microsoft –  Microsoft SQL Native Client error”

Spargeri celebre folosind SQL Injection

Indiferent cât de precauți ar fi programatorii, întodeauna vor apărea vulnerabilități și breșe în sistemele de securitate. Companii de renume ce investesc sume enorme în aplicații și siguranța au picat în fața acestei tehnici incredibile de hacking. Exemplele pot continua:

În anul 2009, Departamentul American de Justitie a acuzat un cetatean American și doi cetățeni ruși de furtul a peste 130 de milioane de numere de card utilizând atacuri SQL Injection.

În anul 2010, site-ul Marinei Regale Britanice a fost pus la pamant de hackerul român cunoscut sub numele de TinKode

În 2010, de pe site-ul celor de la Sony au fost forate parolele a milioane de conturi, obtinându-se astfel informațiile utilizatorilor.

În anul 2012 au fost furate cu ajutorul acestui procedeu peste 450 de mii de nume de user și parolele specifice pentru accesul la Yahoo!

Atacul de tip CROSS SITE SCRIPTING (XSS)

Identificată pentru prima dată de câțiva programatori Microsoft în anul 1999, Cross-Site Scripting reprezintă chiar și în zilele noastre o problemă de securitate gravă, cu toate că în majoritatea cazurilor poate fi teoretic securizată ușor.

Din păcate subestimată de din ce în ce mai multi developeri, acest atac se menține ca fiind unul dintre cele mai comune vulnerabilități ale tuturor aplicațiilor web în anul 2017 si 2018, ocupând un loc ridicat în Top 10 OWASP.

Atacurile de tip Cross-Site Scripting reprezintă atacuri de tip injectie prin care scripturile create de hacker pentru a provoca pagube sunt injectate în codul sursă al unui site web “trusted”, care în mod obișnuit este considerat sigur și nu reprezintă o amenințare pentru niciun utilizator.

Vulnerabilitățile ce facilitează aceste atacuri sunt din păcate destul de răspandite și apar oriunde există o aplicație web ce utilizează date de intrare culese de la un user pentru generarea datelor de ieșire fără că acele informații să fie în prealabil verificate sau codate în vreun fel.

Tipuri de vulnerabilități. Cross Site Scripting are un nivel amenințător de mare

Dezavantajul este ca un hacker poate să folosească un atac XSS pentru a emite un script rău intenționat unui utilizator fără ca acesta să bănuiască ceva.Browserul pe care utilizatorul il folosește nu va recunoaște informația respectivă dacă este sau nu de încredere și va rula scriptul. Tocmai din acest motiv, software-ul malware poate accesa orice cookie, token de sesiune sau orice altă informație memorată de catre browser și utilizată împreună cu site-ul respective. Un astfel de tip de script, în unele cazuri poate rescrie întreg conținutul paginii HTML.

Aceste atacuri pot apărea atunci cand:

Sursa datelor ce intră într-o aplicație nu este deloc verificată

Datele sunt introduse într-o secvență dinamică ce este transmisă direct userului fără a fi examinată și filtrată contra malware în prealabil

Conținutul acestui tip de atac apare uzual sub forma unui segment JavaScript, dar poate include de asemenea și HTML, Flash sau orice alt timp de cod sursa pe care browserul il poate citi. Din pacate diversitatea acestor tipuri de atacuri este aproape nelimitată, însa de cele mai multe ori efectele sunt urmatoarele: transmiterea datelor confidentiale sustrase de la utilizator către atacator, redirectionarea victimei către site-uri controlate de catre hackeri ori efectuarea altor tipuri de astfel de operații rău intenționate pe terminalul userului.

Atacurile de tip XSS sunt clasificate în doua mari categorii, ținându-se cont de modul de injecție al conținutului malicios:

Stocate

Reflectate

DOM – DOM-based Cross site scripting

Atacurile încadrate în prima categorie presupun stocarea a codului rîu intentionat pe serverul țintă ( spre exemplu, poate fi injectat în baza de date, pe un forum oarecare sau în secțiunea de comentarii a unui blog). Utilizatorul va prelua automat script-ul injectat fără să știe în momentul în care va accesa informațiile stocate acolo.

În cazul atacurilor reflectate, codul injectat este “reflectat” de pe server (ca și în cazul rezultatului unei căutări, a unui mesaj de eroare sau oricare alt raspuns care include o parte ori întregul conținut al inițialei cereri). Atacurile XSS reflectate ajung la victima pe o alta cale decât cele stocate, spre exemplu prin intermediul unui e-mail sau printr-un alt site web. În momentul în care victima mușca momeala și urmează link-ul sau o altă forma de transmitere a datelor speciale creată special în acest scop, codul injectat va ajunge la serverul web vulnerabil, atacat, de unde atacul va fi mai apoi reflectat către browserul utilizatorului, fără ca acesta să fie conștient. În acel moment browserul va rula script-ul, considerând că informația este de încredere.

Al treilea tip al acestui atac se referă la executarea codului introdus de hacker în codul JavaScript al aplicației. Problema aceasta de securitate se ivește atunci când datele trimise de către utilizator sunt accesate prin JavaScript și direct introduse în pagină fără a mai fi verificate în vreun fel în prealabil.

Stored Cross-Site Scripting este cel mai cunoscut tip de atac XSS. Aplicațiile web ce permit utilizatorilor să stocheze date sunt predispose la acest tip de vulnerabilitate. Mai este numit și stored sau persistent, din cauza faptului că datele malițioase introduse de către atacator este stocat și afișat în momentul în care un utilizator accesează pagina infectată.

În exemplul de mai jos este afișată o aplicație prin care utilizatorii pot lasa recenzii referitoare la calitatea unui cinematograf. Aplicația stochează într-o baza de date comentariile iar mai apoi le afișează.

Ca și exemplu, va fi postat un comentariu al carui conținut este <b>test</b>; \ " ' = pentru a se verifica dacă aplicația filtrează sau nu informațiile introduse de catre un utilizator.

Din păcate se poate observa clar că niciunul din caracterele introduse nu a fost filtrat. Ceea ce ramane de facut este introducerea unui mic vector XSS,și anume <script>alert(1)</script>

Codul JavaScript introdus a fost rulat de către browser. De fiecare dată cand un utilizator va intra pe site îi va apărea acel alertbox. Același lucru se întampla când coduri performante sunt introduse, numai că efectul este altul, și este mult mai devastator.

Vulnerabilitățile la atacurile de tip XSS sunt foarte greu de identificat și dificil de eliminat dintr-o aplicatie web. Printre cele mai bune moduri de a depista o asemenea vulnerabilitate presupune efectuarea unei analize puternice de securitate asupra codului sursă al site-ului sau aplicației. Prin acest lucru nu va fi posibilă posibilitatea propagării datelor de intrare a unei cereri de tip HTML-request la ieșirea HTML. Unele tool-uri,cum ar fi Nessus sau Nikto ajută la scanarea site-urilor web pentru aceste slăbiciuni, însa permit numai o analiză generală, superficială, doar de suprafață a aplicațiilor sau site-urilor.

Protecție împotriva XSS

O metodă de protecție asupra acestor tipuri de atacuri este dezactivarea funcției “HTTP Trace” de pe absolut toate serverele web. Atacatorul poate sustrage informații din cookie-uri prin JavaScript și atunci când funcția “document.cookie” este dezactivată ori indisponibilă. Atunci când victima accesează un link rau intenționat creat de către hacker, este declanșat automat apelul către funcția HTTP Trce prin care sunt colectate și memorate toate informațiile din cookie-uri și trimise către alt server, de unde atacatorul le poate sustrage foarte usor. Situația poate fi evitată ușor în cazul în care această funcție este dezactivată.

Filtrarea datelor de ieșire reprezintă un aspect foarte important atunci când ne referim la stoparea atacurilor de tip XSS. Pentru că acest procedeu să fie realizat corect și să aibă efect, trebuie ținut cont de contextul în care informațiile sunt introduse.

În cazul în care datele primite de utilizator sunt introduse în interiorul unui tag HTML, sunt folosite funcțiile puse la dispoziție de PHP, și mai exact strip_tags(), htmlentities() și htmlspecialchars().

Se mai folosește de asemenea și UTF-8 ca default encoding charset și Content Security Policy (CSP).

Malware (software rău intenționat)

Un malware este reprezentat de orice software conceput pentru a provoca daune unui computer sau unei rețele de calculatoare. Malware-ul începe să provoace daune abia dupa ce este implantat sau introdus cumva într-un computer ținta și poate lua diverse forme: coduri executabile, conținut activ sau diverse scripturi. Codul este descris ca: viruși, viermi, cai troieni, ransomware, spyware, adware sau alte denumiri cunoscute de publicul larg. Malware-ul provoaca daune, acționând împotriva intereselor utilizatorului, de cele mai multe ori acesta fără să poată să facă mare lucru, și astfel nu include software care cauzează daune fără voie din cauza altor deficiente.

Evoluție

Acest termen, “malware”, a fost folosit pentru prima dată de cercetatorul în securitate informatică Yisrael Radai, în anul 1990. Deși, ideea de malware a aparut cu mult înainte de denumirea oferită. Unul dintre primele exemple cunoscute și demonstrate ale unui malware l-a reprezentat virusul Creeper, în anul 1971.Creat ca un simplu experiment realizat de către inginerul BBN Technologies de la vremea respectivă, Robert Thomas. Malware-ul a reușit să infecteze main framele pe ARPANET. În timpul în care malware-ul nu modifică nicio funcție sau nu fură ori sterge vreo dată, programul se mută abuziv dintr-un mainframe în altul fără a avea această permisiune, în timp ce mesajul "Sunt târâtorul: Prinde-mă dacă poți." era afișat constant.Creeper a fost modificat ceva mai târziu de către cercetatorul Ray Tomlinson, care i-a adăugat capacitatea de a se auto-replica, și astfel a luat nastere primul vierme cibernetic cunoscut. Acest concept de “malware” a ramas bine înrădăcinat în industria tehnologică, iar exemplele de viruși și viermi cibernetici au început să apară pe calculatoarele proiectate de Apple și IBM la începutul anilor ’80, înainte de a lua amploare, odată cu explozia Internetului în anii 1990.

Următoarea amenințare a venit în anul 1992. Numit Michelangelo, a infectat aproximativ 20 de mii de utilizatori de PC ce au raportat mai apoi pierderi de date.

Începând cu anul 2000, software-urile de acest fel au cunoscut un “bum” de creștere. Efectiv se răspândeau considerabil.

În anul 2005, numarul de malware crescuse de la 1 milion la 96 de milioane de versiuni diferite.

De cele mai multe ori, acest tip de software este folosit pentru a sustrage diverse informații ale utilizatorului memorate în computer, precum:

Parole

Date bancare

Alte informații confidențiale

O metodă pentru protecție împotriva programelor de acest timp este împiedicarea accesului acestui software asupra computerului țintă. Tocmai din acest motiv, antivirusul, firewall-ul sau alte metode sunt folosite pentru protejarea împotriva introducerii acestor tipuri de programe malware. Malware-ul provoacă daune după ce este implantat sau introdus într-un fel pe un computer ținta și poate lua forma unor coduri executabile, scripturi, conținut activ sau alte programe software.

Programele furnizate oficial de marile companii pot fi considerate malware dacă acționează în mod secret împotriva intereselor utilizatorilor. Spre exemplu, Sony a vândut către publicul larg rootkit-ul Sony, care, pe lângă soft-ul propriu zis, avea introdus un cal troian ce nu permitea copierea ilicită a conținutului. De asemenea, raporta obiceiurile de ascultare ale utilizatorilor acestui software și a creat, în mod neintenționat, vulnerabilități care mai tarziu au fost exploatate de un alt tip de malware cu care nu avea vreo legatură.

Au fost create special și software-uri pentru furtul de informatii:

Bancos – program ce sustrage informații în momentul accesării unui site web bancar de către un utilizator

Gator – program de tip spion ce monitorizează obiceiurile la accesarea Internetului ale anumitor utilizatori ale unor anumiți utilizatori și mai apoi sunt trimise toate datele către un server. Datele sunt folosite apoi pentru a fi trimise acelui utilizator.

LegMir – program de tip spion ce fură informații precum nume de utilizator, parole sau alte informații de acest fel aplicat la jocurile online.

Qhost – program de tip cal troian care modifică fișierele aflate pe serverul gazda pentru a-l redirecționa către alt server DNS, atunci cănd site-urile bancare sunt accesate cu scopul de a fura informațiile de autentificare ale userului.

Înca de la începutul anului 2015, o porțiune mare de malware-uri utilizează o combinație de numeroase tehnici menite să evite analiza și detectarea acestora.

Cea mai întalnită tehnica de evaziune este atunci cand malware-ul evită analiza și detectarea prin amprentarea mediului în momentul executării.

Cea de-a doua tehnică este reprezentată de metoda de detectare a instrumentelor automate confuze. Acest lucru permite ca malware-ul să evite cu ușurința detectarea prin tehnologii precum software-ul antivirus ce se bazează pe semnături prin schimbarea serverului folosit de malware.

Cea de-a treia tehnică comuna de evaziune este bazată total pe sincronizare. Mai exact, în momentul în care malware-ul rulează în anumite momente sau după anumite acțiuni întreprinse de utilizator, astfel încât aceasta să se execute în anumite perioade vulnerabile ale sistemului, precum procesul de încarcare, fiind în stare de latență totală în restul timpului.

A patra tehnică se face prin obsfucarea datelor interne, astfel încat instrumentele malware să nu poată detecta programul străin periculos.

O tehnică din ce în ce mai folosită este adware-ul , ce foloșeste datele furate pentru a dezactiva protecția anti-malware și viruși;din fericire există remedii tehnice pentru a face față acestui tip de setare periculoasă.

Totuși, în zilele noastre, una dintre cele mai sofisticate și mai sigure forme de evaziune este utilizarea tehnicilor de ascundere a informațiilor, și aici ne referim la stegomalware.

Cum funcționeaza un malware

Autorul unui malware folosește o mulțime de mijloace pentru a răspândi aceste programe pentru infectarea câtor mai multe rețele și dispozitive. Aceste programe pot fi livrate fizic către un sistem spre infectare printr-un USB, CD sau alte mijloace. Malware-ul se poate răspândi adeseori prin Internet prin descărcările de tipul drive-by, ce descarcă automat programe rău intenționate fără ca utilizatorul să fie atenționat. Acestea sunt inițiate în momentul în care utilizatorul vizitează un site periculos, spre exemplu. Atacurile de tip phishing reprezintă o altă metodă și un tip comun de livrare a programelor malware; e-mailuri ce par legitime ce conțin legături rau intenționate sau atașamente ce pot furniza executabilul unui malware, ce se va instala automat la descărcarea conținutului din e-mail de către utilizator.Aceste tipuri de atacuri includ adesea și existența unui server de comandă și control ce permite hackerilor să comunice cu serverele infectate, să descarce date sensibile ajungând până la acapararea și obținerea controlului dispozitivului.

Noi tulpini de malware apar din ce în ce mai des și include tehnici noi de evaziune și confuzie ce sunt concepute nu doar pentru păcălirea utilizatorilor, ci și pentru a trece de administratorii de securitate și peste produsele ce le-ar putea opri. Câteva din aceste tehnici se bazează pe tactici simple, precum utilizarea unor proxy-uri web pentru a ascunde traficul rau intenționat ori adresa sursă.Amenințări mai complexe sunt reprezentate de malware-ul polimorf, ce poate schimba în mod repetat codul său de bază pentru a evita detectarea de către instrumente de detectare bazate pe semnaturi; tehnici anti-sandbox, ce permit malware-ului să detecteze când este analizat și să întarzie executarea până când acesta părăsește spațiul de lucru; precum și malware fără fișiere, ce se localizează doar în memoria RAM a sistemului, pentru a evita a fi descoperit.

Metode eliminare malware

Printre cele mai bune metode de eliminare a malware-elor este utilizarea unor antiviruși sau firewall. În cazul în care uneltele recomandate nu ajută la repararea computerului, se urmează pași alternativi

Se repetă instalarea anti-spyware-ului. Se redenumește fișierul executabil și se lansează

Se pornește calculatorul în Safe Mode și se repetă instalarea malware-ului

Instalarea unui program anti-malware alternativ

Folosirea funcșiei SpyHunter Spyware HelpDesk

KALI LINUX

Kali Linux reprezintă o distribuție a Linuxului ce are la bază Debian. Kali Linux a fost creat pentru a oferi posibilitatea testării avansate de penetrare și audit de securitate. Acest sistem conține aproape câteva sute de tool-uri (instrumente) ce au fost create pentru a efectua diferite sarcini de securitate a informațiilor, precum testarea și încercarea penetrarii site-urilor, cercetarea din domeniul securității cibernetice, ingineria inversă sau criminalistică informatică. Kali Linux a fost dezvoltat de Mati Aharoni și Devon Kearns și este finanțat și întreținut de Offensive Security, o companie ce este lider de mulți ani pe piața securității informațiilor.

Ca și dată de lansare, Kali Linux a luat naștere în 13 martie 2013 că o variantă nouă și upgratată din toate punctele de vedere a vechiului BackTrack Linux, migrând complet la noile standarde de dezvoltare Debian.

Deține peste 600 de instrumente de testare și penetrare (incluzând Armitage (instrument grafic de gestionare a atacurilor cibernetice), Nmap (scanner de port), Wireshark (analizator de pachete), Air Crack-ng(suită de programe wireless pentru testarea penetrarii) și multe alte scannere de securitate pentru aplicații web). După ce a fost examinat fiecare instrument în parte, ce fusese inclus în BackTrack, au fost eliminate cele care pur și simplu nu funcționau sau erau copii după alte instrumente.

Este gratuit (dezvoltatorii ne asigură că așa va rămâne întodeauna. Kali Linux este gratuit așa cum era și BackTrack Linux.

Open Tree Git: Dezvoltatorii Kali Linux îmbrațișează modelul open source și pun la dispoziție tot arborele de dezvoltare. Codul sursă din componenta Kali Linux este disponibil pentru oricine dorește o optimizare a pachetelor pentru întregirea și satisfacerea dorințelor.

Compatibilitate cu FHS: Kali Linux aderă și el la standardul ierarhic al sistemelor de fișiere, astfel că permite utilizatorilor să acceseze și localizeze ușor biblioteci, fișiere de suport sau cele binare.

Kernelul este personalizat, pentru a oferi o manevrabilitate mai sporită.

Este dezvoltat folosindu-se un mediu complet sigur, de un numar relativ mic de oameni care au permisiunea de a comite pachetele, iar fiecare pachet în parte este semnat digital de către dezvoltator.Kali Linux are de asemenea un kernel personalizat, care este construit pentru injecția în wireless 802.11. Acest lucru a fost adăugat de către echipa de dezvoltatori deoarece au constatat că foarte multe din evaluări sunt wireless.

Mic istoric

În sine, proiectul Kali Linux a început în secret în 2012, când compania Offensive Security a decis să înlocuiască veritabilul proiect BackTrack Linux, ce era menținut manual, cu un soft ce ar putea deveni un puternic derivat autentic Debian complet, având toata infrastructura necesară și toate tehnicile de ambalare duse către un alt nivel. Această decizie a fost luată pentru a construi Kali Linux pe distribuția Debian, pentru că este bine cunoscut faptul că deține o calitate și o stabilitate de neclintit.

Prima versiune, mai precis 1.0 a luat nastere un an mai târziu, în martie 2013, și s-a bazat pe Debian 7 “Wheezy”, distribuția stabila a Debianului în acel moment. În primul an în care a fost dezvoltată, s-au împachetat sute de aplicatii și construirea infrastructurii. Deși numărul aplicații era semnificativ foarte mare, lista de aplicații a fost cucerită meticulos, abandonând aplicațiile ce nu mai funcționau sau cele ce aveau deja o dublură.

În acei doi ani de folosire a versiunii 1.0, pentru Kali au fost lansate mai multe actualizări incrementale, extinderea gamei de aplicații disponibile și îmbunătățirea suportului hardware, datorită lansării de noi kerneluri. Deși investițiile în integrare continuă, s-a asigurat că toate pachetele importante au fost păstrate într-o stare instabilă și că imaginile live personalizate (un semn distinctiv al acestei distribuții) ar putea fi întodeauna create.

În anul 2015, în momentul în care a apărut Debian 8 “Jessie”, s-a lucrat pentru a se renunța la Kali Linux. În timp ce Kali Linux 1.x a evitat GNOME Shell (bazându-se doar pe GNOME Fallback în schimb), în această versiune s-a decis îmbrațișarea și îmbunătățirea: s-au adăugat expresii GNOME Shell pentru achiziționarea caracteristicilor lipsă, mai ales când vorbim despre meniul Application. Rezultatul acestei lucrări a devenit Kali Linux 2.0, publicat în august 2015.

Ecran principal Kali Linux

Deși în Kali Linux se regăsesc cele mai multe dintre instrumentele BackTrack, primul obiectiv al Kali Linux a fost acela de a fi portabil și usor de instalat pe dispozitivele bazate pe arhitecturi ARM, precum tabletele sau Chromebook, ceea ce face ca instrumentele să fie disponibile ușor.

Există un dezavantaj foarte mare în folosirea instrumentelor de hacking tip open source – ele conțin o multimer de dependențe atunci când acestea sunt instalate pe Linux și trebuie să fie instalate într-o secvență de tip predefinită. Autorii instrumentelor de acest tip nu au pus la dispoziție utilizatorilor niște documente exacte, ceea ce le complică folosirea.

Kali Linux simplifică mult acest proces, conținând o sumedenie de instrumente preinstalate cu toate dependentele și aflându-se într-o stare gata de utilizare, astfel încât să puteți acorda o atenție sporită unui atac real și nu asupra instalării instrumentului. Actualizările disponibile instrumentelor preinstalate sunt publicate destul de des, ceea ce vă ajută să vă păstrați instrumentele mereu actualizate. Un site de instrumente non-comerciale care are toate instrumentele majore de hacking preinstalate pentru a testa rețelele și aplicatiile din lumea reală este visul tuturor atacatorilor etici dar și autorul Kali Linux a depus toate eforturile posibile pentru a ne face viata mai ușoară în folosirea acestuia, ceea ce ne permite să petrecem o perioadă mai mare în evidențierea defectelor decât spre construirea unui set de instrumente.

La Black Hat în SUA în 2015, pentru Kali versiunea 2.0 a fost lansat noul kernel versiunea 4.0. Are la bază Debian Jessie și a fost numit ca și Kali Sana. Versiunea precedentă majoră a lui Kali Linux a fost versiunea 1.0, ce a avut parte de actualizări periodice până la apariția versiunii 1.1. Toate modificările interfeței cosmetice au fost realizate cu scopul unei mai buni accesibilități și adăugiri ale instrumentelor mai noi si mai stabile.

Unele îmbunătățiri majore în Kali 2.0 sunt listate aici:

Actualizări de rulare continuă:In data de ianuarie 2016, ciclul întreg de actualizare al Kali Linux a fost imbunătățit odată cu trecerea la o versiune mult mai rulantă, cu un mare upgrade în dată de aprilie 2017. O distribuție cu lansare este una actualizată în mod constant, astfel încât utilizatorii să poată primi cele mai recente actualizări și pachete atunci cand acestea apar și sunt disponibile către folosire. Astfel, utilizatorii nu vor trebui să aștepte o lansare majoră pentru a obtine corecturile de eroare. În Kali 2.0, pachetele sunt trase în mod regulat din distribuția de testare Debian în clipa în care acestea sunt lansate. Acest lucru ajută la susținerea actualizării sistemului de operare Kali Linux.

Actualizări frecvente ale instrumentului: Offensive Security, organizația care a creat și întreține distribuția Kali Linux, a inventat o metodă diferită pentru a verifica toate instrumentele actualizate. Ei folosesc acum o noua versiune care verifică sistemul care trimite actualizări periodice atunci cand apare o versiune mai nouă a uneltelor. Prin această metodă, instrumentele din Kali Linux sunt actualizate imediat după lansarea dezvoltatorului.

Un mediu desktop modernizat: Kali Linux suportă de acum o sesiune GNOME 3 completă. GNOME 3 este unul dintre cele mai folosite medii desktop și este un favorit printre dezvoltatori. RAM-ul minim pentru rularea unei sesiuni complete și finite de GNOME 3 este de 768 de MB. Chiar dacă nu este asta o problemă, având în vedere configurațiile standard ale computerelor de astăzi, utilizatorul poate deține o mașină mai veche, se poate descărca o versiune mai light a lui Kali Linux care foloseste mediul desktop Xfce cu un set de instrumente mai mic și mai utile. Kali Linux suportă și mult mai multe medii desktop, spre exemplu KDE, MATE, E17, i3wm sau LXDE. De asemenea Kali 2.9 vine și cu noi imagini din spate (de fundal) o bara laterală personalizată și nouă, un altfel de aspect al meniului și foarte multe îmbunătățiri vizuale pentru a crea un alt mod de experiență, nemaiîntalnită utilizatorului.

Suport pentru diferite platforme hardware: Kali Linux este disponibil pentru toate versiunile importante ale Google Chromebooks I Raspberry Pi. Pentru NetHunter, distribuția hacking este concepută pentru dispozitivele mobile, care este construită pe Kali Linux, actualizată la Kali 2.0. S-au produs actualizări de asemena și la fotografiile oficiale ale VMWare sau Virtual Box.

Comenzi de bază linux

Poate unul dintre cele mai interesante părți ale sistemelor de operare ce au la bază Linux, îl reprezintă faptul că tot sistemul poate fi gestionat din terminal, folosind doar linia de comandă. Avantajul acestei linii de comandă este că, în cele mai multe din cazuri, numai cu câteva comenzi de bază Linux se pot gestiona multe lucruri și aplicații.

Gestionarea fiecărei distribuții în parte diferă în funcție de versiune, sau, altfel spus, de la un mediu grafic la altul. ( DE-DESKTOP Environment)

sudo apt-get update – împrospătarea depozitelor

sudo apt-get upgrade – actualizarea sistemului

sudo apt-get dist-upgrade – actualizarea întregii distribuții

sudo apt-get install (nume pachet) – instalarea unui pachet

sudo apt-get remove (nume pachet) – dezinstalarea unui pachet

sudo add-apt-repository ppa: (nume depozit) – adăugarea unor arhive de pachete personale

cp cale_fisier1 cale_director_final – copierea unui fișier dintr-un loc în celălalt

mv cale_fisier1 cale_director_final – mutarea unui fișier dintr-un loc în celălalt

mv nume_fisier_vechi nume_fisier_nou – redenumirea unui fișier

rm -R calea_catre_director – ștergerea întregului director

rm -R calea_catre_director/* – ștergerea întregului director, lăsând respectivul folder intact

mkdir nume_fisier – crearea unui fișier

sudo su – – obținerea accesului de administrator

CONTAINERE

Containerizarea este o metodă de virtualizare la nivel de sistem de operare ce simplifică implementarea aplicațiilor și necesită mai puține resurse decât cele masinilor virtuale. Conținutul pachetelor de aplicații cu bibliotecile de software de care acestea depind, permit dezvoltatorilor să creeze "construieste o dată, ruleaza de oriunde" aplicații de codare foarte portabile. Containerele nu necesită hypervisor, mai degrabă ei izolează resursele aplicațiilor într-un pachet mic care pot fi scalate rapid dinamic pe baza utilizării. Containerele sunt adesea o componentă fundamentală în noile baze "Devops" dezvoltarea de aplicații și procesele de livrare.

Containerele sunt utilizate pentru a moderniza aplicațiile existente și pentru a crea noi cloud-native.

Containerele într-adevăr explodează în popularitate,iar companiile le folosesc în afara testării și dezvoltării deoarece câștigă încredere în această tehnologie care se dezvoltă rapid.

Containerele sunt privite de factorii de decizie IT ca fiind critice pentru cloud, DevOps,și va ajuta la rezolvarea provocărilor privind portabilitatea aplicațiilor.

Transformarea aplicației este încă în fază incipientă

În ciuda eforturilor lor pentru a crește agilitatea și eficiența, multe companii sunt lente.Adopția de microservicii este în degradare în comparație cu adoptarea de containere și acest lucru poate împiedica realizarea beneficiilor de adoptare a containerului. În timp ce exprima îngrijorarea cu privire la siguranța containerelor astăzi, factorii de decizie câștiga experiență și încredere în securitatea containerizată a microserviciilor si este vizibila o creștere semnificativă în desfășurarea misiunii critice aplicațiilor anticipate.

Organizațiile realizează beneficiile containerelor

Acei care au adoptat containerele au fost determinate să facă acest lucru cu așteptările de infrastructură sigură, rapidă și portabilă care crește eficiența dezvoltării și creează un proces de desfășurare consecvent. Aceste companiile au raportat că au experimentat de fapt fiecare dintre acestea beneficii și multe altele.

Care este diferența dintre containere și virtualizare?

Cu ajutorul tehnologiei de virtualizare, pachetul care poate fi transferat este o mașină virtuală și include un întreg sistem de operare, precum și aplicația. Un server fizic care rulează trei mașini virtuale ar avea un hypervisor și trei sisteme de operare separate care rulează pe el.

Prin contrast, un server care rulează trei aplicații containerizate cu Docker rulează un singur sistem de operare și fiecare container împarte nucleul sistemului de operare cu celelalte containere. Părțile partajate ale sistemului de operare sunt doar citite, în timp ce fiecare container are o montare proprie (adică un mod de accesare a containerului) pentru scriere. Asta înseamnă că containerele sunt mult mai ușoare și folosesc resurse mult mai puține decât mașinile virtuale.

Diferenta dintre Containere si VMWare (masina virtuala)

Cât de sigure sunt containerele?

Mulți oameni cred că containerele sunt mai puțin sigure decât mașinile virtuale, deoarece dacă există o vulnerabilitate în kernel-ul gazdei containerului, ar putea oferi o cale în containerele care o distribuie. Acest lucru este valabil și pentru un hypervisor, dar deoarece un hypervisor oferă o funcționalitate mult mai mică decât un kernel Linux (care implementează de obicei sisteme de fișiere, rețele, procese de procesare a aplicațiilor și așa mai departe), acesta prezintă o suprafață de atac mult mai mică.

De exemplu, Docker (și alte sisteme de containere) includ acum o infrastructură de semnare care permite administratorilor să semneze imagini ale containerului pentru a împiedica desfășurarea containerelor nesigure.

Cu toate acestea, nu este neapărat cazul în care un container de încredere, semnat, este sigur să se execute, deoarece vulnerabilitățile pot fi descoperite în unele dintre software-ul din container după ce acesta a fost semnat. Din acest motiv, Docker și alții oferă soluții de scanare a securității containerului, care pot notifica administratorii dacă imaginile containerului prezintă vulnerabilități care ar putea fi exploatate.

DOCKER

Docker este un instrument conceput pentru a facilita crearea, implementarea și rularea aplicațiilor utilizând containerele. Containerele permit unui dezvoltator să împacheteze o aplicație cu toate părțile de care are nevoie, cum ar fi bibliotecile și alte dependențe, și să o livreze în întregime ca un singur pachet. În acest fel, datorită containerului, dezvoltatorul poate fi sigur că aplicația va funcționa pe orice altă mașină Linux, indiferent de setările personalizate pe care ar putea să le aibă mașina, care ar putea să difere de mașina utilizată pentru scrierea și testarea codului.

Într-un fel, Docker este un fel de mașină virtuală. Dar spre deosebire de o mașină virtuală, Docker permite aplicațiilor să utilizeze același kernel Linux ca și sistemul pe care rulează și nu cere doar ca aplicațiile să fie livrate cu lucruri care nu se execută deja pe computerul gazdă. Acest lucru oferă un impuls semnificativ de performanță și reduce dimensiunea aplicației.

Și, important, Docker este open source. Acest lucru înseamnă că oricine poate contribui la Docker și poate să-l extindă pentru a-și satisface propriile nevoi dacă au nevoie de funcții suplimentare care nu sunt disponibile din cutie.

Pe măsură ce se realizează acțiuni la o bază de bază Docker, straturile sistemelor de fișiere sindicale sunt create și documentate, astfel încât fiecare strat să descrie pe deplin modul de recreare a unei acțiuni. Această strategie permite imaginilor ușoare ale Docker, deoarece doar actualizările de strat trebuie să fie propagate (de exemplu, față de VM-urile complete).

Potrivit unui articol din Linux.com,

Docker este un instrument care poate pachete o aplicație și dependențele acesteia într-un container virtual care poate rula pe orice server Linux. Acest lucru ajută la facilitarea flexibilității și a portabilității în cazul în care aplicația poate funcționa, indiferent dacă se află în clădire, în cloud public, în cloud privat, în metale goale etc. [31]

Docker implementează un API de nivel înalt pentru a furniza containere ușoare care rulează procesele izolate. [11]

Bazându-se pe facilitățile furnizate de kernel-ul Linux (în primul rând cgroups și namespaces), un container Docker, spre deosebire de o mașină virtuală, nu necesită sau nu include un sistem de operare separat. [31] În schimb, se bazează pe funcționalitatea kernelului și utilizează izolarea resurselor pentru CPU și memorie, [28] și spații de nume separate pentru a izola imaginea aplicației de sistemul de operare. Docker accesează funcțiile de virtualizare ale kernelului Linux fie utilizând direct biblioteca libcontainer, care este disponibilă din Docker 0.9, fie indirect prin libvirt, LXC (Linux Containers) sau sistemd-nspawn [30] [13]

La ce este folositor Docker?

Docker este un instrument conceput pentru a beneficia atât de dezvoltatori, cât și de administratorii de sistem, făcând parte din multe unelte de instrumente DevOps (dezvoltatori + operațiuni). Pentru dezvoltatori, înseamnă că aceștia se pot concentra pe scrierea codului fără a se îngrijora de sistemul în care se va desfășura în cele din urmă. De asemenea, le permite să obțină un start capabil folosind una dintre mii de programe deja concepute pentru a rula într-un container Docker ca parte a aplicației lor. Pentru personalul de operațiuni, Docker oferă flexibilitate și poate reduce numărul de sisteme necesare datorită amprentei sale mici și a cheltuielilor mai mici.

Docker aduce securitatea aplicațiilor care rulează într-un mediu comun, însă recipientele singure nu reprezintă o alternativă la luarea unor măsuri de securitate adecvate.

Dan Walsh, lider în domeniul securității informatice, cel mai bine cunoscut pentru munca sa pe SELinux, își dă perspectiva asupra importanței asigurării siguranței containerelor Docker. De asemenea, oferă o detaliere detaliată a funcțiilor de securitate aflate în prezent în Docker și modul în care funcționează.

DESCRIEREA APLICAȚIEI

Conceperea aplicației

Scopul acestei lucrări este acela de a scoate în evidență niște vulnerabilități ale platformei WordPress ce vor fi exploatate cu ajutorul unor instrumente preinstalate ale sistemului Kali Linux. Pe durata acestor procese, se va afla userul și parola de conectare la Dashboard a site-ului ce are la bază platforma WordPress ce urmează a fi atacat. Se va prelua controlul site-ului iar apoi se va crea un post ce poate fi accesat de un utilizator extern, introducându-se un mic script XSS ce va afișa un mesaj de eroare de fiecare dată când cineva din exterior accesează acel post.

Urmările pot fi și mai grave în momentul în care cineva obține accesul la site, ducând până la ștergerea întregului site.

Am lucrat in linia de comanda folosind comenzi Linux, atat pentru instalarea site-ului WordPress dar si pentru aflarea userului si parolei.

Exploatarea aplicatiei

În această aplicație am folosit platforma WordPress ceea ce reprezintă baza site-ului web, dar și utilitarul WPScan ce scanează vulnerabilitățile WordPress-ului. Conform site ului  www.cvedetails.com, unde sunt prezente vulnerabilități descoperite la versiuni inferioare ale platformei WordPress, am ales o versiune mai veche a acestei platforme pentru a-i exploata una din vulnerabilități.

WPScan este un utilitar ce vine automat odată cu instalarea Kali Linux. Rolurile sunt diverse, reușind să scaneze orice site bazat pe WordPress și descoperind toate vulnerabilitățile de care suferă versiunea respectivă.

Astfel, bazându-mă pe complexitatea instrumentului de lucru WPScan, aplicația in sine va exemplifica un atac de tip Brute-Force pe baza unui dicționar text, ca mai apoi, după obtinerea accesului, să fie lansat în secțiunea “Comentarii” a unui post creat special, un mic atac XSS, ce va genera un mesaj de eroare de fiecare dată când cineva accesează acel post, fie că este vorba de utilizatorul cu drepturi de administrator sau un utilizator din exterior.

Exploatarea acestui sistem conduce către întarirea subiectului privind securitatea web și exemplificarea unui test de penetrare, în vederea verificării securității unui site, indiferent de complexitatea acestuia.

Scenarii de test

Primul scenariu constă în folosirea utilitarului WPScan asupra unui site local WordPress, scanând vulnerabilitățile și executând un atac de tip Brute Force , utilizând metoda dicționarului . După obținerea accesului se va crea un post și se va introduce un mic script PHP ce va executa un atac de tip XSS, returnând un mesaj de eroare.

Desktop Kali Linux

Primul pas este acela de a introduce comanda pentru împrospătarea depozitelor și pornirea pachetelor apache2 și mysql pentru a porni serverul local.

Site-ul WordPress este de asemenea funcțional

Pentru a scana site-ul WordPress am folosit instrumentul WPScan, un instrument folosit practic pentru a scana un site ce are la bază platforma WordPress și afișarea tuturor informațiilor legate de acel site. Mai jos este reprezentată interfața grafică a instrumentului.

Voi folosi comanda wpscan -u http://127.0.0.1/wordpress-4.0/wordpress pentru a scana întreg site-ul

Se poate observa că acest instrument a descoperit că această versiune de WordPress folosită are 56 de vulnerabilități ce pot fi exploatate.

În continuare voi folosi comanda wpscan -u http://127.0.0.1/wordpress-4.0/wordpress / –enumerate vt pentru ca WPScan să afișeze toate temele ce sunt vulnerabile si pot fi exploatate.

După rularea comenzii sunt afișate multe informații, precum versiunea de Apache folosită, link-ul aplicației, dar și ceea ce am cerut, versiunea temei, numele temei, autorul acesteia și informația pe care multi hackeri o vânează: versiunea temei este învechită.

Urmează să utilizez comanda wpscan -u http://127.0.0.1/wordpress-4.0/wordpress / –enumerate vp pentru ca WPScan să afișeze plugin-urile instalate și vulnerabile

Instrumentul rulează corespunzator și afișează plugin-ul care este “out of date” și poate fi exploatat usor, mai ales printr-un atac XSS asa cum este afișat în imagine.

Voi folosi comanda wpscan -u http://127.0.0.1/wordpress-4.0/wordpress / –enumerate u , comandă ce afișează utilizatorii disponibili, pentru ca mai departe, prin folosirea Brute Force metoda dicționarului, să se poată afla parola pentru conectare.

Instrumentul WPScan a afișat numele utilizatorilor disponibili în sistem

Voi folosi un atac Brute Force prin metoda dicționarului pentru a afla parola utilizatorului descoperit, pentru a mă putea conecta la site-ul WordPress. Practic, fișierul dictionary.txt conține un numar de parole, iar atacul în sine încearca pentru numele de utilizator “utilizator1” fiecare parolă existentă în fișier.

Acest tip de atac simplu dar eficient are o rata de succes proportională cu numarul de parole existente în fișier. Cu cat numarul de parole existente în fișier este mai mare, cu atat atacul este mai eficient.

Comanda wpscan -u http://127.0.0.1/wordpress-4.0/wordpress –wordlist /root/Desktop/(nume_dictionar)/ –username + (nume utilizator)

Comanda a fost rulată cu succes, parola fiind descoperită. Astfel, accesul la site este acum disponibil.

Dupa accesarea site-ului WordPress, este disponibil Panoul de Control cu toate opțiunile disponibile.

În acest moment voi crea un post nou, numit “Scam post” ce poate fi disponibil oricărui utilizator extern fără drepturi de administrator. În secțiunea de comentarii a postului voi introduce un mic cod XSS, și anume “ <script>alert(‘XSS’);</script>”. După postare, prin acest cod va fi afișat un cod de eroare de fiecare dată când un utilizator va deschide acest post. Astfel, am exploatat vulnerabilitatea câmpului de comentarii și am demonstrat înca o data ca nicio platformă, indiferent că este vorba de WordPress sau alta, nu este niciodată sigură și trebuie constant îmbunătățită din toate punctele de vedere, chiar dacă vorbim despre teme, plugin-uri sau întreaga platformă.

Un alt scenariu este instalarea platformei WordPress prin intermediul software-ului Doker și al containerelor . De asemenea este instalat în aceeași manieră și instrumentul WPScan. Sistemul de operare folosit este Ubuntu 14.0.

Desktop Ubuntu

În imaginea de mai jos se pot observa versiunile programelor Docker și Docker-Compose, de asemenea și site-ul WordPress ce functionează în parametri optimi.

Lansarea containerului WPScan prin Docker pentru scanarea site-ului WordPress

CONCLUZII

Istoria ne-a arătat de-a lungul timpului, înca de la apariția Internetului că există persoane bine voitoare dar și persoane rău voitoare. Balanța binelui și a răului este valabilă și în lumea virtuală, lumea cibernetică.

Dezvoltarea sistemelor, creșterea volumului de tehnologie, modernizarea diverselor metode ce ușurează viața omului aduc cu ele și imense riscuri, vulnerabilități și extreme.

Lumea cibernetică a luat o amploare imensă și marea majoritate a tranzactiilor, convorbirilor sau diverselor activități sunt realizate online. Comoditatea, siguranța și ușurința realizării lucrurilor sunt cateva atuu-uri ale acestor tehnologii.

Însa, așa cum este de așteptat, nicio pădure nu este lipsită de uscăciuni. Este de reținut și de subliniat faptul că absolut niciun sistem sau platforma existentă în acest moment nu sunt 100% sigure.

Întodeauna vor exista persoane ce vor compromite diversele activități sau în cele mai grave cazuri întreaga rețea globală prin atacuri asupra sistemelor.

Existența testelor de penetrare este ca o gura de aer proaspăt pentru toți dezvoltatorii software, astfel încat se pot realiza la timp patch-uri și update-uri care să pună la punct vulnerabilitățile și eventualele erori apărute.

Însă, aceste teste trebuie lansate și facute periodic, deoarece hackerii nu au program. Atacurile pot fi lansate oricând, fără a fi cunoscută intensitatea acestora și eventualele daune create.

În acest razboi continuu ce probabil nu se va sfarsi niciodată, castig de cauza nu au decat părțile ce se vor proteja cel mai bine. Pe de o parte, dezvoltatorii încearca să își protejeze sistemele cat mai bine și clar, pe de altă parte hackeri ingenioși găsesc de fiecare dată metode pentru a penetra sistemele și a fura date sau sume de bani, în același timp ascunzându-și urmele pentru a fi cat mai greu de găsit.

Protecția în spațiul cibernetic este totul. Nimeni nu este vizat, dar oricine poate deveni oricând o victimă.

BIBLIOGRAFIE

https://searchsecurity.techtarget.com/definition/malware

https://www.wikipedia.com/

https://www.acunetix.com/websitesecurity/sql-injection/

http://www.wpbeginner.com/beginners-guide/what-are-wordpress-plugins-how-do-they-work/

https://books.google.ro/books?id=yulODwAAQBAJ&pg=PA41&lpg=PA41&dq=informatii+kali+linux&source=bl&ots=oVvlqC6SJz&sig=mXK5lyHAECOb1ph6oAFPJmHqcAs&hl=ro&sa=X&ved=0ahUKEwjH3bKzh-DbAhWhK5oKHTXQCzsQ6AEIsgEwFg#v=onepage&q&f=false

http://www.hackingarticles.in/wordpress-penetration-testing-using-wpscan-metasploit/

Comenzi pe care orice începător în Linux trebuie să le cunoască

https://www.cio.com/article/2924995/software/what-are-containers-and-why-do-you-need-them.html

Containers: Real Adoption and Use Cases in 2017

Similar Posts