Documente Academic
Documente Profesional
Documente Cultură
LUCRARE DE DIZERTAIE
Securitatea i vulnerabilitile platformei WordPress
Coordonator
Bucureti
2015
1. Introducere
ntr-o lume a vitezei nevoia de dezvoltare rapid a aplicaiilor web este mai mult dect
necesar. Ideea de rapid development n web a atins apogeul o dat cu apariia
sistemelor de administrare a coninutului (CMS).
Utilizarea unui CMS n crearea unui website sau a unei aplicaii web reduce timpul de
dezvoltare cu pana la 50%, iar administrarea se face mult mai uor chiar i de persoane
neexperimentate (majoritatea CMS-urilor avnd un sistem WYSIWYG de editare a
paginilor).
Pe lng avantajele prezentate mai sus, utilizarea unui CMS are i dezvanataje, iar cel
mai mare dintre acestea ar fi vulnerabilitatea n faa unui atac. Aceast vulnerabilitate
este data, printre altele, de structura arborelui de fiiere pe care orice CMS o are n
standard. Astfel toate paginile de login sunt cunoscute pentru toate CMS-urile dac
utilizatorul nu a schimbat calea ctre acestea.
n particular, pentru platforma Wordpress calea ctre login este http://www.numesite.ro
/wp-login
nc
de
la
primele
versiuni,
iar
la
Drupal
calea
este
http://www.numesite.ro/?q=user
sau
pentru
Joomla
http://www.numesite.ro/administrator.
Necesitatea unui modul/plugin care va asigura securitatea acestor platforme este mai
mult dect necesar.
2. Noiunea de CMS
Un sistem de administrare a coninutului sau CMS (n englez Content Management
System, CMS) este un sistem software creat pentru automatizarea ct mai deplin a
gestiunii coninutului, n special a siturilor web. Scopul este de a reduce sau elimina
intervenia programatorilor la editarea i administrarea siturilor lor. CMS-ul faciliteaz
organizarea, controlul i publicarea de documente sau alt tip de coninut, cum ar fi imagini
i resurse multimedia. Un CMS faciliteaz adesea crearea in comun de documente. Un
"CMS web" este un CMS cu faciliti adiionale pentru uurarea publicrii de coninut pe
diversele situri.
Date fiind complexitatea siturilor web i inexistena unui model standard, definirea unitar
a CMS precum i a prilor sale componente este foarte greu de realizat. Graniele dintre
portale, sisteme CMS, DMS (Document Management System Sistem de Administrare
a Documentelor) i ECS (E-commerce Systems Sisteme de Comer Electronic) nu sunt
evidente i acestea adesea se suprapun.
Sistemele de administrare a coninutului web sunt folosite adesea pentru stocarea i
controlul documentelor cum ar fi articole, manuale tehnice sau de alte naturi, ghiduri de
vnzri i brouri demarketing. Un CMS poate avea urmtoarele funcii:
-0-
De obicei un asemenea sistem ofer unelte software prin care utilizatorii fr cunotine
de programare pot totui crea i organiza coninutul cu relativ uurin. Majoritatea
sistemelor folosesc o baz de date pentru stocarea coninutului, i un layer de prezentare
pentru afiarea acestuia vizitatorilor obinuii, bazat pe un set de modele sau mostre
(templates). Administrarea se face n mod normal printr-un browser web, dar unele
sisteme pot fi modificate i pe alte ci.
Un CMS web difer de creatoare de situri precum FrontPage sau Dreamweaver prin
faptul c un CMS permite utilizatorilor fr cunotine tehnice s fac schimbri n sit
cu training puin sau deloc. Un CMS este uor de folosit i permite utilizatorilor autorizai
s administreze un sit web. Un CMS este mai mult o unealt de ntreinere dect de
creere de situri.
Un sistem de administrare a coninutului web ofer urmtoarele faciliti cheie:
-1-
2.1 Terminologie
Urmtorii termeni sunt adesea folosii referitor la CMS-urile web, dar nu sunt nici standard
nici universali:
Bloc - Un bloc este un link ctre o seciune din situl web. Blocurile pot de-obicei fi
setate sa apar n toate paginile sitului (de exemplu pe un meniu de navigaie) sau
doar n pagina principal.
Modul - Un modul de coninut este o seciune a sitului, de exemplu o colecie
de articole de tiri, o seciune FAQ, etc.
Tem - O tem definete aparena fiecrei pagini din sit, controlnd proprieti cum
ar fi culori i fonturi.
3. Wordpress
WordPress este o platform de tip surs deschis pentru publicarea blogurilor.
Platforma WordPress este scris n limbajul PHP, folosind pentru gestionarea bazelor de
date sistemul MySQL. Dispune un sistem de abloane scrise n limbajele HTML i CSS.
Avantajele majore prezentate de WordPress sunt simplitatea i numeroasele plugin-uri
create de ctre comunitate care pot modifica funcionalitatea WordPress-ului
tranformndu-l n aproape orice tip de site web. De asemenea interfaa poate fi schimbat
foarte uor cu ajutorul multitudinii de teme gratuite sau premium cu doar un clic.
-2-
3.1 Istoric
Wordpress a aprut n anul 2003 ca succesor al platformei de
blogging b2/cafelog, care era utilizat de aproximativ 2000 de bloguri la acea vreme. Ca
o parantez, ambele platforme sunt scrise n PHP i folosesc MySQL. b2/cafelog a aprut
n 2001, iar n mai 2003, doi dezvoltatori, Matt Mullenweg i Mike Little au creat
WordPress aducnd modificri platformei b2/cafelog. Numele de WordPress a fost
sugerat de Christine Selleck, o prieten de-a lui Matt Mullenweg.
Cum e i normal, sunt mai multe versiuni de WordPress, ncepnd cu 0.70 pn
la 3.8. Multe dintre ele, ncepnd cu 1.0, sunt numite dup cte un celebru cntre de
jazz (Charles Mingus, Ella Fitzgerald, Dexter Gordon i alii).
n versiunea 1.2 (2004) se adaug suportul pentru Plugin, unul din motivele
pentru care WordPress este aa de folosit. Versiunea 1.5 a venit cu suport pentru
Template-uri, un alt lucru pentru care este apreciat WordPress, iar versiunea 2.0 (2005)
ne-a adus o nfiare nou.
ncepnd cu WordPress 2.2 (2007) este introdus suportul pentru Widget-uri, lucru
care ne face nou viaa mai uoar de multe ori. Versiunea 2.5 (2008) a avut parte de un
redesing al Paginii de Administrare.
Dac pn la versiunea 2.6 plugin-urile i template-urile trebuiau instalate manual
(adic trebuiau urcate manual pe server folosind FTP), o dat cu versiunile 2.7 i 2.8 a
venit i posibilitatea de a instala plugin-urile i Tempalte-urile direct din Pagina de
Administrare. Asta pentru ca WordPress s fie mai uor de folosit de majoritatea
persoanelor. Versiunea 3.0(2010) ne-a adus un nou template implicit, TwentyTen i alte
mbuntiri de sub capot.
Wordpress 3.8.1 (2014) este ultima variant stabil lansat.
3.2 Versiuni
Vezi Anexa 1.
-3-
Acesta conine toate uneltele necesare pentru a modifica i customiza website-ul dup
dorina utilizatorului.
-4-
Dashboard
Posts
Media
Pages
Comments
Appearance
Plugins
Users
Tools
Settings
Crearea unor pagini noi se poate face uor prin simpla accesare a
tab-ului Pages din meniul panoului de administrare.
-5-
Schedule plugins
Gallery plugins
SEO plugins
Backup & Restaurations plugins
Security plugins
Contact form plugins
Language plugins
-6-
Aceste extensii sunt gratuite, dar unele au dezvoltat i o versiune pltit ce ofer,
de obicei, noi funcii.
-7-
Este logic c nu putem proteja un site pana nu ii stim toate punctele slabe i
ameninrile cu care ne confruntm. Deci hai s incepem n cunostin de cauz.
N acest capitol vom pregti scena prin prezentarea hackerilor i a trucurilor lor. De
asemenea vom lua n considerare i modul n care aceste trucuri ne pot afecta site-ul,
direct sau indirect.
Ia n considerare malware-ul
Ai putea crede c toate astea nu au nici un impact asupra securitii WordPress. Te-ai
nela.
Site-ul tu este la fel de sigur ca i cea mai slab legtur a sa: dispozitivele care te
ajut la administrare, securitatea fizic, disciplina ta online. Ca s impun acest punct de
vedere, v dau un mic exemplu: dac ai un blog wordpress administrat de Automattic
sau ai un hosting dedicat, dac un hacker i procur o parol din calculatorul tu,
atunci ai pierdut toate pariurile.
Dar s stabilim un lucru de la nceput. Nu exist securitate complet i oricine spune
altfel are sigur ceva de vnzare. Cu toate astea, ceea ce noi putem realiza cu atenie i
dedicare, este de a nelege, de a ne bloca locaiile, de a consolida legturile i de a ne
disciplina practicile n faa computerului.
Chiar i aa nu vom avea nici o garanie.
Risc calculat
Deci care este riscul, n sine? Uite o modalitate de a privi problema:
Risc=VulnerabilitatexAmenintari
-8-
O vulnerabilitate este o slbiciune, o gaur in armura ta. Un internet wireless setat prost
sau un plugin codat prost, un stickz note pe care e scris parola sau un email necriptat.
Sau poate e doar tipul obosit de la securitate. Pot fi 1000 de lucruri diferite. Concluzia
este c vulnerabilitatea ine strict de ignorana noastr.
O ameninare, pe ealalt parte, este o exploatare, un mod de a profita de defecte i a
compromite un PC, un router, un telefon sau site-ul tu. Este o unealt care ne
intercepteaz wirelessul, emailurile i aa mai departe.
Riscul este probabilitatea de a fi hckuit. Dac upgradezi pluginul cu defecte, de
exemplu, atunci ameninarea este mic, astfel reducnd riscul. Unele riscuri rmn
pentru c, unde o vulnerabilitate este gsit, va fi cineva undeva care va gsi o
modalitate s o exploateze. Aceast lupt de-a oarecele i pisica se numete
securitate.
Probabil c te ntrebi, de ce s ne deranjm s calculm riscul? Pn la urm orice
vulnerabilitate ne cere atenia. Nu ai grei dar securizarea diferitelor bunuri , iar fiecare
pot aduga riscuri, este foarte complex. Prioritizarea riscurilor ne ajut s identificm
problemele cele mai urgente i, ideal ajutai de o poli de securitate, s asigurm
mentenan continu.
Securizarea unui site nu se face o singur dat. Ameninrile sunt att de vaste nct a
devenit o disciplin continu.
-9-
poate ncuia i anume serverul. Deci practic invitm oameni nu numai s citeasc dar
s i manipuleze fiiere i date.
Aplicaie, mrime i complexitate. Aplicaiile au nevoie oricum de securitate dar, daca
lum n calcul mrimea i complexitatea lui WordPress, sunt mai multe probleme de
rectificat.
PHP, coduri tere, plugin i teme. Iat o dinamic cu totul nou. Folosirea codurilor
PHP prost scrie sau prost ntreinute invit atacuri.
Baza de date SQL. Conin cele mai valoroase date, MzSql i alte aplicaii de date sunt
disponibile utilizatorilor, astfel devenind inte sigure.
Date. Datele userilor, de la email pn la declaraii financiare sunt rvnite de cibernetici
iar compromiterea lor i implicit a contentului, ne cost de la reputaie pn la interdicie
n motoarele de cutare, astea pe lng costurile financiare.
Content i media. Contentul este copiat cu regularitate fr permisiune. La fel i cu
fiierele media, care pot fi expuse pe alte site-uri n timp ce tu plteti pentru storare i
limea benzii.
Site-uri. Acestea-la plural- adaug un risc pentru c un compromis aprut la unul din
ele le compromite pe toate.
Web server. Tehnologia de server poate fi spart direct sau prin WordPress, punnd n
pericol att site-ul ct i datele i poate fi folosit ca ramp de lansare pentru atacuri mai
ample.
Sistem de fiiere. Fiierele nesecurizate corespunztor pun la dispoziie o metod de
penetrare a site-ului.
Administrare la distan. Content casual sau nesecurizat, site-ul, serverul i
administrarea permit atacuri multi-faetate si asta necesit disciplin, un mediu de lucru
sigur i o conexiune impenetrabil.
Cunoate hackerii
Poate sun ca o anatem dar o mare parte a acestei cri este legat de transformarea
inocenei tale n isteimea unui hacker.
Acesta nu este vreun plan viclean ns lucrurile chiar aa stau. Ca s prinzi un ho
trebuie s gndeti ca un ho.
- 10 -
n plus, nu toi hackerii sunt att de ri. n mare exist trei tipuri plria alb, plria
gri i plria neagr fiecare cu subgrupurile sale.
Plriile albe
Un precedent important plaseaz plriile albe deasupra tuturor celorlate grupe:
permisiunea.
Cunoscui i ca hackeri etici, aceti oameni deceni sunt motivai s:
Testeze vulnerabilitile
S raporteze probleme
S sftuiasc
Plriile negre
Fr doar i poate, au intenii necurate i sunt subcategorizai astfel:
Botnet
Un botnet este o reea de roboi automatizai, sau scripturi, adeseori implicai n activiti
malicioase, precum spamming sau minarea datelor. Reeaua tinde s fie alctuit din
mainrii zombie, precum serverul, care pot cauza haos la comand.
Operatorii botnet, acele plrii negre, nu au interes n dunarea site-urilor. Vor ns un
control tcut al resurselor serverului pentru ca mailbotul s ppoat rspndi malware
sau atacuri DoS ( Denial of Service).
- 11 -
Cybercriminali
Acetia sunt hackeri a cror activitate variaz de la scrierea i automatizarea malware
pn la data-mining, extracia informaiei sensibile pentru exploatare sau vnzare. Nu e
bine s-i ai de dumani aa c voi mai aduga doar c sunt foarte inteligeni.
Hacktiviti
Oameni cu gndire politic i adeseori nclinai ctre informarea liber, aceti hacktiviti
ar putea face parte i din primul grup.
Scraper
Dei nu sunt tehnic hackeri, acetia fur coninut adesea feed-ul site-ului pentru
benefitul propriilor bloguri.
Script kiddies
Acest grup vast conine tot, de la novici bine intenionai pn la artiti de graffiti online
care, cnd i-au invadat site-ul, l stric doar pentru distracie.
narmai cu tutoriale i un share plin de warez malicios, sunt o ameninare considerabil
pentru c fac cte pagube pot.
Spammeri
Din nou nu sunt tehnic hackeri dar acest grup vast triete de pe urma blogurilor sau
listelor de mailing pentru a-i promova afacerile care, cel mai des se nvrt n jurul
produselor farmaceutice. Pot automatiza bombe de marketing sau s ncastreze link-uri
ascunse dar, nu conteaz ct de educaionale sunt comentariile lor, spammerii sunt n
general doar o pacoste i nu o ameninare.
Misfit
Nu este un jargon de data asta, acest grup include angajai nemulumii, oamenii care
nu sunt iubii i acel tip de peste drum care nu te-a plcut niciodat.
Plriile gri
Acetia pot avea intenii bune dar se pare c i pierd busola moral.
Hackeri i crackeri
Strict vorbind, hackerii sunt doar plrii albe crora le place s vad cum funcioneaz
lucrurile.
- 12 -
Crackerii sunt plrii negre sau gri. Probabil au mprumutat jucriile altora pe care le-au
transformat n explozibil.
De-a lungul anilor, liniile dintre cracker i hacker s-au bruiat pn la punctul n care
hackerii nemulumii se descriu ca fiind hackeri etici.
n spiritul simplicitii ne vom referi la toi cei care ncearc sa intre n site, indiferent c
sunt buni sau ri, ca hackeri.
Pn acum, am marcat importana unui mediu de lucru sigu i a unei reele sigure.
Acum vom ncepe s aprofundm i vom analiza mai nti riscurile fizice care trebuie
luate n considerare.
Riscurile se mpart n dou categorii: fizice i tehnice, iar aici ne preocup cea din urm.
Riscul fizic se refer la pierderea sau folosirea neautorizat a materialelor care conin
date:
ntrirea pazei, indiferent dac ai supraveghere sau nu. Cine are cheile?
Fra Ethernet
Asta nu este o list complet. Pentru companii mijlocii spre mari, e abia nceputul i tu,
cel puin, ai nevoie de un consultant n securitate care s te sftuiasc pe toate
planurile, inclusiv pregtirea angajailor.
- 13 -
Dzc lucrezi n echip cel puin ai nevoie de o poli referitoare la fiecare dintre aceste
elemente, indiferent dac i afecteaz munca direct sau indirect.
Ingineria social
Este o practic veche de a pcli oamenii ncreztori s execute ceva sub pretenii
false. Tehnicile foarte eficiente pot fi puse n aplicare att online ct i n persoan. Iat
cteva exemple ferme:
Telefoane
Persoane sau angajai de companie pot fi targetai cu un telefon din partea cuiva care
pretinde a fi un coleg nou, un ef iritat, un manager de resurse umane sau un
administrator IT ngrijorat. Acest inginer ar putea pretinde sau cere informaii sensibile
precum un nume, contact, un username sau o parol. Pot suna chiar i din holul
instituiei sau un caller ID fals pentru a le oferi credibilitate.
Walk-IN
Alternativa Walk-In a scamatoriei telefonice ne prezint un inginer social jucnd un rol
pentru a avea acces ntr-o cldire i a ctiga ncrederea oamenilor.
URL-uri ademenitoare
Ca s nu mutm pe varianta tehnic, un link atractiv, eventual adugat pe site fr
cunotina proprietarului, i atrage atenia aa c dai click pe el. i astfel ai fost supus
unui atac Cross Site Scripting (XSS). Site-ul recuperat este malitios dar tu nu vei
suspecta asta. Ai putea fi ademenit n descrcarea unui malware dac nu ai fcut asta
deja cnd ai intrat pe pagin. Acesta este un scenariu des ntlnit.
Phishing
Aceste neltorii pe email prolifice adeseori vor ncerca s te tenteze s intri pe un site
unde vei fi scalpat. Ca o alternativ, poi primi un email de la cineva pe care aparent l
cunoti i care i trimite un fiier. Odat executat, acest Trojan rootkit i ofer hackerului
o porti ctre calculatorul si reeaua ta.
Reeaua social (i aa mai departe)
Iat o pia n continu cretere. Cu acces la datele tale, avnd ncredere in orice
aplicaie social i friending toi strinii cu profile online pur i simplu ceri probleme.
Este extrem de simplu s creezi probleme att prin site-uri de socializare ct i prin
forumuri, site-uri personale sau business i n grupuri unde, spre exemplu, poi avea un
- 14 -
angajat nou care ntreab care e problema cu versiunea veche i vulnerabil a unui site
precum WordPress.
Protecie mpotriva ingineriei sociale
Ingineria social este greu de nvins, dar ce putem face este s aducem ct mai multor
oameni la cunotin i s crem nite polie care specific ce informaii au voie s
divulge membrii echiper noastre.
ine minte c acel tip care i copiaz in calculator o glum bun i poate uploada n
acelai timp i un worm, fata care se folosete de reeaua ta wireless i poate infiltra
reeaua iar colegul care i admir telefonul i poate copia datele. Trebuie s fii extrem
de atent n cine ai ncredere.
Risc tehnic. Hai s avansm ctre evaluarea i protecia riscurilor tehnice ale site-ului
tu i, prin relaie, problemelor de reea care i pot compromite munca.
Vom ncepe s evalum subiectul cu calculatoarele i vom termina cu serverele i siteul n sine.
Permisiile deny-by-default
Windows este demult targetul preferat al hackerilor din cauza popularitii sale. i mai
este un motiv. Pn la Vista, sistemele Windows erau foarte uor de ptruns datorit
permisiilor allow-by-default unde un utilizator standard nu are nevoie de privilegii
administrative pentru a executa un script. Ar putea fi un program prietenos sau ar putea
fi un virus.
Compar asta cu poliele deny-b-default ale lui Mac i Linux: nimeni nu poate executa
fiiere fr drepturi asemntoare cu cele ale unui administrator. Cnd auzi utilizatorii
acestor sisteme zicnd c nu folosesc un antivirus lucru care nu e recomandat oricum
- 15 -
Cele mai mari ameninri cu care ne confruntm, att local ct i pe server, sunt de la
cocktailuri de malware care, cu mixul de coninuturi, sunt capabile de atacuri
devastatoare.
Spre exemplu, combinarea unui worm cu un toolkit v va obine faimosul W32/Blaster.
Acest Blaster se folosete de deficienele lui Windows pentru propagarea sa iar
misiunea este de a executa un Denial of Service pe serviciul Windows Update de la
gazde infectate, toate n acelai timp. n vreme ce viermele n sine nu cauzeaz
probleme de durat, le ncetinete i blocheaz conexiunile de internet, ngreunnd
descrcarea instruciunilor pentru a remedia problema.
Amestecuile personalizate n schimb, tind s adune mai multe versiuni de Trojan, o
comparaie similar ar fi amestecarea arsenicului cu zahrul i s l numeti bomboan.
Crimeware
O mod mai nou cnd vine vorba de infraciuni cibernetice este crimeware, care oate fi
gsit n mult forme care i fur datele confideniale cu scopul de a le exploata
financiar.n general acest gen de atac este ndreptat ctre reele guvernamentale,
financiare sau de natur militar.
Data loggers
Ca n cazul malware, pot fi echivalente folositoare pentru data loggers i le folosim
frecvent, de exemplu, pentru a nregistra i repeta exerciii precum completarea
formularelor.
n termeni de folosire maliioas, aceti data loggeri pot fi integrai n tot felul de
malware i plantate n mainrii pentru a ne nregistra activitatea, datele, de fapt tot ce
facem.
Probabil c se cunoate termenul de keystroke loggers sau keyloggers care ne
nregistreaz tastrile i trimit textul cuiva care le dorete sau se folosete de ele. Acest
keylogger are o multitudine de subgrupe, i nici una din ele nu sunt foarte prietenoase:
Link loggers. Dac nu vrei ca ntreaga lumea s tie c pasiunile tale sunt
croetatul i tricotatul, fii extrem de atent cu acele link-uri ncurcate.
Sunt mult mai multe de att, capturarea mesajelor text, a numerelor de telefon,
controlarea webcamului i aa mai departe, cu variabile nu numai independente dar i
ataate programelor, la drivere pentru tastatur, infiltrate n fiierul kernel sau chiar
funcionnd ca un sistem virtual, ascuns de cel real.
Aceti keyloggers sunt aproape imposibil de detectat i ne dau un motiv extrem de bun
pentru a ne ntreine aparaura.
Virus Hoax
Virusurile hoax sunt doar o pcleal i n general vor lua forma unu chain mail. Vor
crea o panic n cazul n care cineva este convins s tearg fiiere importante sau s
viziteze un site rogue care poate planta malware.
Rootkit
Acestea te trdeaz prin oferirea unui acces back door la un calculator i astfel i ofer
hackerului control administrativ, asociat cu toate privilegiile reelei. n plus, nu este la fel
de uor de detetat precum un malware i poate fi confundat cu fiiere rootkit importante
i dorite.
Spyware
Aceste spyware sunt extrem de bgcioase i sunt folosite la tot, de la analize de
marketing pn la monitorizarea angajailor.
Muli sunt de prere c o form de spyware este i acel tracking cookie i, mai exact,
acel flash cookie care i nregistreaz obiceiurile i este mai dificil de ndeprtat dect
un cookie obinuit.
Cal troian
- 18 -
Acest cal troian este mascat ca ceva folositor dar, dup ce este instalat, activeaz un fel
de malware.
Virui
Aceti virui vin adeseori acompaniai de un cal troian i pot fi transmii prin descrcri,
e-mail sau media i sunt executai manual pentru a infecta fiierele. Virusul macro este
un virus care se ascunde n fiiere macro i executat n programe office.
Worm
Se multiplic automat n calculator i se rspndesc rapid, penetrnd reele.
Ziua Zero
n lumea plriilor negre, ziua zero este la creme de la meme.
Deci ce este ziua zero? Aceast ntrebare este un oximoron, pentru c prin natura lor,
nimeni nu tie ce este ziua zero pn cnd nu o descoper.
Zilele zero sunt vulnerabiliti abia descoperite, cu un timp msurat pn cnd apare un
patch. Dac cineva este norocos, va nimeri o plrie alb care va remedia problema
nainte ca priile negre s o atace.
n realitate, aceast zi zero i manipularea unui malware stau la baza problemelor de
securitate, de la dispozitivele noastre pn la internetul propriu-zis.
Grij mondial
Securitatea reelei nu trebuie luat n glum.O dat ce te-ai conectat la internet,
ameninrile cresc.
Versiuni de browser vechi
Din toate programele locale, este browserul care ne conecteaz cel mai mult cu
ameninrile. Browserele care nu sunt upgradate religios sunt predispuse la infecii,
care pot aduce riscuri critice precum permiterea instalrii de malware chiar dac
utilizatorul nu face nimic dect s navigheze pe un site.
Browserul nu este singura noastr grij. i aplicaiile ne dau bti de cap. Cele care se
folosesc de internet ar trebui s ne aduc un plus de griji. n zilele noastre, acestea
reprezint marea majoritate i trimit rapoarte napoi la dezvoltatori. Se recomand
tergerea fiierelor nefolositoare i setarea pe upgradare automat.
Trafic necriptat
- 19 -
Asta te asigur.
Hotspot Wireless
ntr-o manier similar, este destul de evident c aceste hotspot nu sunt sigure pentru
site-ul tu.
Exist i gemeni malefici, care imit o conexiune wireless dar a fost setat de un phisher
adeseori uzurpnd o reea de cartier adevrat. Te ademenete cu acces gratis dar i
va copia toate datele i informaiile tale de cont n scopuri financiare.
- 20 -
Baza zero
Cnd vine vorba de toate ameninrile posibile, internetul este baza zero. Este fabulos
i te mbpgete. Dar este i de-a dreptul periculos.
Securitatea site-ului tu, a reelei, a afacerii i a identitii tale depind de nelegerea
pericolelor internetului i contracararea lor.
Risc pentru site i server
Riscurile online i locale se transform n ameninri ndreptate ctre site i server.
ngrijorarea major nu e greu de neles. Serverul, ca un calculator, este asemntor
unui dulap. Are multe sertare-sau porturi- i fiecare n parte conin fiiere de care un
serviciu depinde. Din fericire, multe din aceste sertare pot fi sigilate. ns cnd vine
vorba de acele sertare administrative, de exempl cele care conin panoul de control,
acelea trebuie s ne fie accesibile doar nou, i trebuie s ne folosim de o cheie de
securitate n combinaie cu fiierele n sine pentru a ne asigura c nu exist nici o
slbiciune. Alte sertare, de exemplu cele care conin fiierele web, nu pot fi nchise
niciodat pentru c altfel nu am putea accesa site-ul. Exist o grij n plus c cineva
poate accesa intern, dintr-un sertar oarecare, celelate sertare i astfel ntreaga reea.
Vulnerabiliti fizice ale serverului
Ct est de sigur acel dulap_ Am acoperit securitatea fizic i am detaliat arta ingineriei
sociale. n principal, trebuie s ne ncredem n gazdele web c menin centrul de date i
c i aleg cu atenie partenerii i angajaii. O copie de rezerv n afara serverului este
vital.
Porturi deschise cu servicii vulnerabile
Gestionm porturile i astfel diferitele tipuri de trafic n reea printr-un firewall. Asta
permite sau blocheaz pachete de date n funcie de portul cu care navigheaz.
Pachetele FTP spre exemplu navigheaz cptre portul 21. Traficul web sigur- https n loc
de http- se ndreapt catre 443. i aa mai departe.Nu conteaz dac un server FTP
este instalat, dac portul 21 este blocat atunci orice trefic este blocat.
Deci iat problema. S spunem c permii un server FTP cu o slbiciune cunoscut.
Apare un hacker, exploateaz deficiene i are acces la calculator printr-un port.
Muli din comunitatea bloggerilor vor cunoate termenul de Digg of death, o problem
ntmpinat des atunci cnd un post popular care conine acest Digg cauzeaz un
traffic rush i,dac gazda nu intervine i blocheaz traficul, poate coplei resursele. Aici
a avut loc un denial of service neintenionat.
- 21 -
Ca n cazul multor atacuri, atacurile DOS vin ntr-o mulime de forme dar scopul
maliios, adeseori concetrat ctre site-uri mari sau reele, este n general de a inunda
serviciile i de a dezactiva HTTP. Variantele distrbuite sunt cele mai puternice,
sincroniznd puterea combinat a unei reele zombie sau botnet mpotriva intei.
Probleme de acces i autentificare
n majoritatea cazurilor, pur li simplu blocm accesul prin dezactivarea serviciului i
nchiderea portului.Muli dintre noi nu avem nevoie dect de porturi web i de
administrare.
Porturile de srever, pentru acces direct a server sau folosirea unei ci de mjloc ca un
panou de control, pot fi folosite pentru intrri nedorite dac serviciul corespondent poate
fi exploatat sau un hacker i afl credenialele.
Atac buffer overflow
Acest tip de atac al memoriei este asistat de un software prost compus care folosete o
bucat de cod adesea introdus prin wed sau un device de monitorizare porturi.
Ca exemplu, atunci cnd trimii date printr-un formular, acesta se va salva ntr-un spaiu
de memorie, un buffer, unde ateapt s fie procesat. Acum imagineaz-i c cineva
trimite un cod mai lung, care ocup mai mult spaiu dect programatorul a permis. Din
nou, acele date vor beneficia de buffer dar, fiindc e prea mare, se revars, rescriind
comenzile i se execut pe sine.
Ca n cazul multor atacuri, aceasta manipulare este posibil pentru c programatorul
codului nu a asigurat un user input validation corespunztor. Rezultatul poate fi
oricare de la un calculator stricat pn la controlul total al mainriei.
- 22 -
expus. Sunt ajutai foarte mult dac userul este cunoscut deci iat un indiciu mpotriva
folosirii username-ului clasic, admin.
Fora brut i mnnc timp, dar poate fi coordonat cu ajutorul unor zombie, grbind
procesul extrem de mult.
Atacurile dictionary arunc cuvinte de la A la Z mpotriva parolei iar atacurile hybrid
combin fora brut cu cea a atacurilor dictionary pentru spargerea parolelor naive, gen
pa55worD.
Pericolele scripturilor cross-site (XSS)
n acest caz utilizatorii de site devin o int secundar pentru c, atunci cnd viziteaz o
pagina hackuit, recupereaz codul i l infecteaz local.
Un exemplu este injecia iframe care adaug un link care duce, de exemplu, la o
descrcare dapuntoare pe un alt server. Cnd un vizitator vizioneaz aceast pagin,
o descarc local cu tot cu malware i astfel, atacatorul deine controlul asupra PC-ului.
Un alt exemplu clasic ar fi folosirea XSS pentru furtul cookie-urilor.
Tot ce necesit asta este injectarea codului ntr-o pagin care raporteaz unui fiier de
pe serverul hackerului. Vizitatorii vor avea cookie-urile salvate i sesiunile de navigare
deturnate cu tot cu privilegii. Dac userul e logat pe pagina de banking online, i poate
lua adio de la bani.
Ameninri clasificate cu cross-site request forgery (CSRF)
Nu este acelai lucru ca XSS dar exist similariti, principala fiind faptul c un site prost
construit este indundat de malware pentru a cauza un efect.
Un utilizator se logheaz pe site-ul tu i ca orice alt dat i se acord un session
cookie. Userul navigheaz pe cteva pagini, una din ele decorat cu un cod plin de
imaginaie, pe care browserul utilizatorului l va descrca.
Ce se poate ntmpla site-ului depinde de privilegiile utilizatorilor aa c variz de la o
schimbare de parol pn la un efect de tem numit digital soup.
Accesul nesecurizat este un factor de risc principar aa c acestea sunt ngrijorrile
majore:
Userii ca root sau admin sunt puncte de atracie pentru atacuri de for bruta
- 23 -
Un cod prost
Absena testrilor
- 24 -
script funcional. Validarea mpotriva exploatrilor ns, are nevoie de cunotine mai
avansate.
Aadar, unde se poate, orice site sau pachet de servere trebuie modifica n scopul
securitii, fr erori sintactice i cu logri protejate mpotriva editrilor. Orice altceva
invit atenie.
Fiiere inutile
Un volum mare reprezint un risc i mai puin nseamn mai mult aa c, pentru orice
aplicaie,plugin sau tem, dac nu o foloseti, terge-o. n acelai timp copiile de
rezerv nu trebuie s fie storate pe server.
Escalarea privilegiilor i oportuniti.
Sunt ngrijorri i la adresa utilizatorilor, cei ri. Sunt o mulime de pai care trebuie
urmai pentru a-i ine la distan pe cei ru intenionai. Scopul este sa-i menii la funcia
de subscriber i s le negi rolul de administrator. Multe dintre aceste tehnici nu sunt
presetate, adeseori necesitnd schimbri n setrile serverului, i anume fiierele
ownership i permissions.
Atacuri cu injecie SQL
Un mod de a crete privilegiile este cu un atac SQL.
SQL nseamn Structured Query Language, o multitudine de comenzi care creeaz i
editeaz o baz de date. Instalrile WordPress au tendina de a folosi brand-ul MzSQL.
O injecie SQL este chiar o injectare de cod i dac baza de date nu a fost corect
protejat, ori va accepta acel cod ori, dac are o sintax proast, va genera o eroare
plin de indicii.
Prin folosirea injeciilor SQL hackerul manipuleaz baza de date pentru a face orice poi
s faci cu phpMyAdmin aa c poate ncepe cu explorarea bazei i poate ajunge pn
la furtul de date.
Scurgerea de informaii
Folosirea unei injecii SQL pentru a fora o eroare nu e singurul mod de a descoperi
poteniale hackuri, spre exemplu, ce prefix de tabel foloseti.
Cnd ne gndim la o scurgere de date, exemplul care ne va veni n minte este
WordPress sau versiunea web a serverului, dar cnd hackerii construiesc un profil al
intei, tehnicile lor i pot duce mult mai departe dect sursa unui site sau o pagin de
- 25 -
eroare forat. Adunarea datelor implic tot, de la ingineria social la Google, citirea
rapoartelor WHOIS, vulnerabilitate i scanarea aplicaiilor.
Hackul Google pentru explorare
Hackerii nu au nevoie s viziteze un site penru a aduna date. De exemplu o cutare
Google:
site:somesite.com intitle:index of
Aceasta i va gsi pagini, inclusiv pe cele vechi, cu aceste cuvinte cheie n titlu i pot fi
folosie pentru verificarea mesajelor de eroare pe un site.
O alt metod foreaz site-ul prin imputarea unei adrese incorecte n browser,
dezvluinf informaii tip Apache sau PHP pe lng cele MySQL.
Atacuri la director
Acestea pot fi destul de oribile, din nou folosindu-se de bara de adrese a browserului
pentru a colecta date sensibile.Folosete comanda up-one-folder pentru a naviga n
fiierele web i apoi n folderul rdcin:
http://somesite.com/../../../../etc/passwd
passwd nu conine parole, n general. Conine ns alte date importante, inclusiv o list
cu username-uri.
Furt de content, SEO pillaging i depreciere SPAM
Majoritatea bloggerilor WordPress tiu puin mai mult despre content dect restul. Pn
la urm, WordPress este o unealt a scriitorilor.
Scraping i media hotlinking
Scraping i poate afecta n mod negativ poziia ta n search results i astfel venitul, n
unele cazuri.
Acest content are i el nevoie de securizare. n unele cazuri, mai mult dect orice
altceva. Realitatea este c nu putem securiza contentul preemptiv. Ce putem face este
s cutm pe Google hack-happz i s trimitem notificri de copyright violation.
Acestea fiind spuse, scrapingul nu este neaprat ceva ru pentru c, controlat
corespunztor, i va aduce trafic.
Spam, polemici i atacuri
- 26 -
Spamul este groaznic nu doar pentru c se aseamn unei opere de art proast dar i
pentru c polueaz valoarea unui content decent. n loc s adauge o vorb bun sau un
comentariu util, spam se bag n discuii reale, defaimeaz munca altora i mprtie
link-uri, astfel reducnd valoarea n search a site-ului tu.
Este i mai ru cnd este injectat n contentul paginii sau preioasa configurare
htaccess devin plin de redirecionri spam.
Toate cele enumerate ar trebui s ajute n formarea unei idei asupra vulnerabilitilor ce
pot aprea la adresa reelei tale , de la dispozitive la server deci implicit, asupra
WordPress n sine.
4. Securitatea n WordPress
4.1 Vulnerabilitile platformei Wordpress
Exista mai multe tipuri de vulnerabilitati descoperite de diverse persoane sau
companii de securitate. Este posibil ca ele sa fie legate sau pot fi separate. Cel mai
important este ca WordPress, producatorul, sa reactioneze rapid si sa lanseze o
actualizare.
Conform Trend Micro, site-urile compromise au o setare modificata ce
deturneaza URL-ul original. Astfel, site-ul afectat contine un script ce va redirectiona
vizitatorul spre o pagina infectata. Fisierul virusat este detectat ca TROJ_BUZUS.ZYX.
TROJ_BUZUS.ZYX, reprezinta o infectie in lant, care duce spre diversi alti virusi,
incluzand antivirusi de tip rogue: TROJ_FAKEAV.ZZY. Troienii Buzus se raspandesc de
regula prin mesaje primite prin yahoo! messenger, dupa cum v-am atentionat si eu in
aceasta postare. Ce se intampla in acest moment este o modificare a comportamentului
acestui virus.
O alta problema intalnita la mai multi utilizatori ai WordPress a fost descrisa de
Cristopher Penn. Este vorba de injectarea unui cod sub forma unu java script in baza de
date. In tabela wp_options, se gaseste o intrare de genul rss_ urmata de un sir de cifre
+ litere aleatorii. Codul java care este continut de aceasta intrare este de tip obfuscated
si apare cam asa:
FFPJ1JpnyfUnpDzz3h9tfaI92uDvyD/Of+r4XyJ2f2Uev6U539WDM39kP10QFLP5
3+Y5BaX3+0/a03rZ00nKX5Na27hXdOSw17TGuO7pDWt/+Na0+lVHHdrWrScqzVqdysq
ybmiWvILqqXzn5L+ehyvSzriIZHsfoIiUKwlJvcjvH69FR7SHB4UNXyXOaZw+ivT8dhjkZ6r
tGj+PPJRMlCW5ePEZVlLOj8YkgL80/26LuefqVXgStMY/Afw/
- 27 -
8. Eliminati ce nu folositi
Daca ati instalat plugins-uri sau teme pe care nu le mai folositi in prezent,
stergeti-le de pe server. Nu numai ca ocupa spatiu, dar pot reprezenta vulnerabilitati
suplimentare. Chiar daca pluginurile sunt dezactivate, vulnerabilitatile acestora sunt
prezente.
- 29 -
- 30 -
Pentru moment plugin-ul rezolv doar una dintre probleme platformei Wordpress
i aceea fiind vulnerabilitatea n cazul unui atac de tip brute-force asupra paginii de
login (wp-login.php).
Soluia prezentat i implemetat rezolv printr-o metod simpl i n acelai
timp eficient aceast problem: blocheaz accesul utilizatorilor timp de 60 de minute la
pagina de login n cazul n care parola este introdus greit de mai mult de 5 ori
consecutiv.
Acest timp de 60 de minute poate fi editat si schimbat din panoul de administrare
pe care utilizatorul l are.
Pentru a restriciona accesul, fiecrui utilizator i va fi salvat adresa IP n baza
de date ntr-o tabela separat pe care acest plugin o creaz automat la instalare.
Identificarea IP-ului fiecrui utilizator se va face printr-o functie simpl n PHP:
function GetIP()
{
foreach (array(HTTP_CLIENT_IP, HTTP_X_FORWARDED_FOR, HTTP_X_FORWARDED,
HTTP_X_CLUSTER_CLIENT_IP, HTTP_FORWARDED_FOR, HTTP_FORWARDED,
REMOTE_ADDR) as $key)
{
if (array_key_exists($key, $_SERVER) === true)
{
foreach (array_map(trim, explode(,, $_SERVER[$key])) as $ip)
{
if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE
| FILTER_FLAG_NO_RES_RANGE) !== false)
{
return $ip;
}
}
}
}
}
- 31 -
Accesarea pentru a putea face cteva setri pentru acest plugin se face din
seciunea Settings din panoul de administrare Wordpress.
- 32 -
- 33 -
- 35 -
6.1. Securitatea
Aplicaiile sunt peticite pentru un motiv i adeseori asta implic o ameninare nou.
Dac lai programe gen Apache sau PHP fr patch, serverul poate fi deschis
atacurilor.
Atenia acordat unui upgrade este important. Peticete acea slbiciune nainte s fie
exploatat. Asta este vital pentru WordPress i este deci vital pentru coduri tere
precum un plugin.
- 36 -
Baza de date
Directorul wp_content
Cnd ai ndoieli, f o copie de rezerv la tot: asta nseamn toate fiierele web de la
baza site-ului tu WordPress plus baza ta de date.
Hai s intrm n detalii, acoperind bazele prin comparare pro i contra al fiecrei
metode de salvare nainte de a detalia cele mai bune metode att pentru fiiere web i
date fr s trebuiasc s ii cont de tipul de hosting.
a. Salvarea fiierelor db+ pe serverul web
Pe scurt, o idee proast.
Salvarea pe serverul web este mai bun dect nimic, sigur. Pn primeti o eroare, sau
pn te alegi cu un server compromis. Sau pn cnd gazda web schimb serverele.
b. Salvarea fiierelor web prin gazda web
Este bine s verifici dac gazda web face copii de rezerv zilnic. Astea sunt lucruri
destul de standard, cu fiiere web i baze de date salvate pe o partiie ter.
Acestea fiind spuse, nu te baza pe asta dect ca o soluie extra, de ultim instan, care
poate funcioneaz.
c. Salvarea fiierelor db pe(web)mail
Probabil o opiune mai potrivit pentru bazele de date mai mici, copiile automate pot fi
trimise off-server prin e-mail. Un cont de webmail poate fi folosit pentru a elibera clientul
de mail local ns datele sunt tranferate i salvate ca text simplu.
Din plugin-urile disponibile, WordPress Database Backup ( WP DB Backup ) este cea
mai bun opiune lipsit de bti de cap i poate fi programat s ruleze oricnd, de la
o dat pe or pn la o dat pe sptmn.
WP DB Backup http://www.ilfilosofo.com/blog/wp-db-backup
- 38 -
e. Updraft
Din nou o funcie similar. Acest plugin nc n fa se testeaz destul de bine, att pe
un server mprit ct i pe o cutie VPS. Pe lng salvarea fiierelor i a datelor pe
Amazon, Updraft favorizeaz spaiul Rackspace Cloud i sunt n plan adugarea mai
multor centre:
Updraft http://langui.sh/updraft-wp-backup-restore
f. BackWPup
Aproximativ acelai lucru, BackWpup
BackWPup http://wordpress.org/extend/plugins/backwpup
g. VaultPress
Mai este i oferta personalizat a celor de la Automattic, i anume VaultPress, care le
seamn celor mai sus menionate dar este mai bine dezvoltat:
VaultPress - http://vaultpress.com
h. O soluie fr cloud
Folosirea acestuia ca un loc de stocare ieftin i uor de folosit a fiierelor WordPress va
exploda n urmtorii ani. Putem s ne ateptm ca stocarea virtual s devin mai puin
- 39 -
beta i mai mult alpha, uor de reparat, s ofere o gam larg de servicii, restaurri i
alte soluii de backup.
i.
Folosind un program gen freeware-ul matur al lui Luis Cobain, Cobian Backup, este cel
mai bun program pentru utilizatorii Windows, fr s conteze planul de hosting.
Asta dac eti zgrcit ca mine i nu vrei s cheltuieti mult pentru ceva gen
SyncBackPro, poate cea mai bun alternativ comercial:
SyncBackPro http://2brightsparks.com/syncback/compare.html
Instalat local, Cobian programeaz salvarea copiilor de rezerv fie remote-to-local fie
remote-to-remote ( pe un cloud sau un server web de exemplu ). Are opiuni full,
incrementale sau difereniale i o opiune de override manual. Poi folosi Transport
Layer Security ( TLS ) sau Secure Sockets Layer ( SSL ) pentru un flux de date sigur,
compresare pe loc i mult mai multe pe lng astea:
Cobian http://www.educ.umu.se/~cobian/cobianbackup.htm
Dezavantajul lui CObian este c, pentru cei mai muli dintr noi, este departe de a fi
simplu s configurezi irul de setri SSL, aa c nu o s ne deranjm astzi. n loc de
asta, vom folosi puntea super util FTP SFTP a lui Tunnelier pe care am menionat-o
n capitolul 5 pentru a descrie facilitile de backup online ale lui Cobain. Hai s le lum
pe bucele....
Acces SSH pentru a centraliza fiiere web amestecate de pe server i asta este
posibil cu orice host, dup cum am explicat n capitolul 5.
Nume server sau adresa IP pe care CPanel sau gazda vi-l furnizeaz
Numr port SSH desemnat de gazd, de obicei 22 dar este deseori schimbat
Cobian instalat pentru backup crend o punte ntre funcia sa FTP i funcia
SFTP a lui Tunnelier
Dou fiiere lot pentru a-i permite lui Cobian s controleze Tunnelier
- 40 -
- 41 -
Anexa 1
Versiune
Data de lansare
Versiune DB
0.70
0.71
June 9, 2003
0.711
0.72
1.0
January 3, 2004
1.0.1
1.0.2
1.2
1.2.1
October 6, 2004
1.2.2
2540
1.5
2541
1.5.1
May 9, 2005
2541
1.5.1.2
2541
1.5.1.3
2541
1.5.2
2541
2.0
3441
2.0.1
3441
2.0.2
3441
2.0.3
June 1, 2006
3441
2.0.4
3441
2.0.5
3441
2.0.6
January 5, 2007
3441
2.0.7
3441
2.0.8
February 8, 2007
3441
2.0.9
3441
2.0.10
April 3, 2007
3441
2.0.11
August 5, 2007
3441
2.1
4772
2.1.1
4773
2.1.2
March 2, 2007
4773
2.1.3
April 3, 2007
4773
2.2
5183
2.2.1
5183
2.2.2
August 5, 2007
5183
2.2.3
September 8, 2007
5183
2.3
6124
2.3.1
6124
2.3.2
6124
2.3.3
February 5, 2008
6124
2.5
7558
2.5.1
7796
2.6
8201
2.6.1
8204
2.6.2
September 8, 2008
8204
2.6.3
8204
2.6.5
8204
2.7
9872
2
2.7.1
9872
2.8
11548
2.8.1
July 9, 2009
11548
2.8.2
11548
2.8.3
August 3, 2009
11548
2.8.4
11548
2.8.5
11548
2.8.6
11548
2.9
12329
2.9.1
January 4, 2010
12329
2.9.2
12329
3.0
15260
3.0.1
15477
3.0.2
15477
3.0.3
December 8, 2010
15477
3.0.4
15477
3.0.5
February 7, 2011
15477
3.0.6
15477
3.1
17056
3.1.1
April 5, 2011
17516
3.1.2
17516
3.1.3
17516
3.1.4
17516
3.2
July 4, 2011
18226
3.2.1
18226
3
3.3
19470
3.3.1
January 3, 2012
19470
3.3.2
19470
3.3.3
19470
3.4
20596
3.4.1
21115
3.4.2
September 6, 2012
21707
3.5
22441
3.5.1
22441
3.5.2
22442
3.6
August 1, 2013
24448
3.6.1
22448
3.7
25824
3.7.1
25824
3.8
26691
3.8.1
26691