Archive forSecurity

The Age of Insecurity

Nu, nu exagerez. Hai să vedem câteva din cele mai importante știri din ultimele câteva luni:

  1. Algoritmul de criptare folosit pentru protocolul GSM a fost spart. O dată. Și a doua oară. Complexitate – suficient de mică pentru a rula programul în 2 ore pe un singur PC.
  2. Protocolul de comunicație folosit pentru comunicația cu un card cu chip (știți voi care – alea cu „e mai secure, că are chip!”) are o vulnerabilitate majoră – nu autentifică verificarea PIN-ului. Ca urmare, este foarte ușor de creat un device care să spună „PIN corect” la orice PIN introdus. Mai multe detalii aici (și dacă tot sunteți acolo, puteți citi încă o serie luuuungă de vulnerabilități ale cardurilor / terminalelor POS).
  3. Protocolul de autentificare 3DSecure (sau MasterCard SecureCode, sau VerifiedByVisa…) are și el o serie de vulnerabilități importante.

Nu vi se pare prea grav? Hai să vedem ce pot însemna cele de mai sus:

  1. Orice conversație GSM, ascultată de oricine, oricând. Costuri? Minime.
  2. În cazul pierderii/furtului unui card, faptul că doar tu știi PIN-ul nu te mai protejează. Mai mult – ținând cont că log-urile tranzacției arată „PIN corect introdus”, ai toate șansele ca banca să nu îți dea nici un ban înapoi. Pe motiv că „nu ai ținut PIN-ul secret”.
  3. Iei card cu 3DSecure, că „e mai sigur” (sigur ați văzut și voi diversele reclame…). Și de fapt constați că singurul „avantaj” al 3DSecure este… pentru bancă. De fapt, dacă vă uitați pe diversele vulnerabilități de pe site, veți constata un lucru foarte interesant (pe care îl menționam și eu acum ceva timp). Practic toate tehnologiile noi au introdus (și chiar au fost promovate prin) „liability shift”. În cazul unei tranzacții frauduloase, banca/procesatorul de plăți/vânzătorul aruncă pisica decedată în spinarea clientului. Și le iese din ce în ce mai bine!

Comments (4)

StartSSL – Quick HowTo

După cum ziceam, am reușit să găsesc o alternativă la (acum defunctul) Thawte Web of Trust, și anume WoT-ul de la StartSSL. A venit timpul să detaliez un pic modalitatea de validare în sistemul respectiv.

Pasul 1 – cauți doi notari ( startssl.com / WoT / notary finder / Bucharest ).

Pasul 2 – ceri validare de la cei doi notari aleși. (request validation)

Pasul 3 – te întâlnești cu ei, și le arăți 2 documente de identitate (cu poză/semnătură). Nu ai nevoie de copii, doar de originale. De asemenea, semnezi și formularul de validare.

Pasul 4 – după 2 validări, ai un certificat digital (Class-1 validated), cu numele tău în el, valabil timp de 1 an.

Pasul 5 – după un an, sari din nou la pasul 1 :)

Din păcate, la StartSSL este un pic mai dificil să devii notar. Pentru că trebuie să plătești o validare de identitate Class-2 (40 USD în momentul actual). Dar odată ce ai devenit notar, îți menții statusul pe termen nelimitat, cât timp ești validat periodic (la intervale de 1 an) de alt notar. ;-)

Comments

StartSSL Notary

Vă povesteam acum câteva zile de StartCom. Ei bine, nu am rezistat și am plătit un „identity validation” la ei. Mi-a plăcut că sistemul nu este numai electronic – trimit și o scrisoare recomandată cu un cod de validare (pentru o confirmare suplimentară a persoanei/adresei).

Astăzi am primit scrisoarea, și sunt oficial validat în sistemul lor. Cireașa de pe tort? Prin aceasta am devenit și notar în sistemul lor WoT. Vrea cineva validări? :-D

Acum caut încă un om care să devină notar. Pentru că:

  • oricine altcineva are nevoie de 2 validări de la 2 notari diferiți
  • noi doi ne putem valida între noi pentru a ne menține validarea de identitate activă pe termen nelimitat.

Doritori? :-D

Comments (6)

An Alternative to Thawte?

Vă spuneam mai devreme că Thawte Web of Trust nu mai există. Ei bine, am găsit un posibil înlocuitor…

E vorba de StartSSL. Care până acum văd că oferă:

  • Certificate SSL (recunoscute de ffox/IE). Gratuit!
  • Certificate e-mail (gratuite pentru CN=„free user”, pe bani dacă se cere validarea persoanei)
  • OpenID provider (de forma http://choose_your_username.startssl.com)

Îmi place mult și modelul de business – nu plătești pentru certificate, ci pentru validare. Adică plătești o dată pentru validarea domeniului, după care poți emite oricâte certificate pentru domeniul respectiv (sau subdomenii). La fel și pentru persoane – plătești validarea identității personale, după care poți emite oricâte certificate de mail.

Cireașa de pe tort? Mai nou există și un sistem de tip „Web of Trust”. Care este doar la început, dar… eu unul sper că va deveni o alternativă viabilă la (fostul) Thawte WoT.

Dacă sunteți curioși cum arată un astfel de certificat, ubergeek.ro folosește un certificat de la ei.

Comments (3)

Cu datele-n nori

Citeam un articol despre un sistem care permite datelor trimise electronic să „dispară” (sau, mai degrabă, să devină inaccesibile) după o perioadă de timp.

Sistemul pare chiar interesant (citiți pagina oficială a lui pentru detalii – practic cheia de criptare este sparta in multe bucati, si trimisă într-un sistem P2P. Unde… dispare în timp :) ). Sau, pentru și mai multe detalii, citiți direct documentul tehnic [PDF] . Și da, autorul principal este o româncă.

Revenind totuși la articolul din Cotidianul, nu pot să nu comentez – parcă unele cuvinte ar fi fost bine să rămână în engleză…

  • În plus, conceptul de “cloud computing” (informatică în nori) lua avânt semnificativ
  • păstrarea confidenţialităţii datelor stocate în norii informatici”
  • utilizatorii nu pot să spună unde, cum şi pentru cât timp datele lor sunt stocate în aceşti nori.”
  • încercăm să le oferim utilizatorilor control asupra unui anumit aspect al datelor lor stocate în nori sau în web”
  • am început să lucrez la probleme legate de migrarea către norii informatici.”

Comments (4)

DD-WRT Vulnerability

DD-WRT este unul din cele mai populare firmware-uri open-source folosite de routere. Ei bine, se pare că build-urile recente au fost afectate de o vulnerabilitate destul de gravă.

Practic este suficient un HTTP request care să treacă prin router pentru a permite… remote command execution pe echipament. Ca root (!).

Detalii despre vulnerabilitate aici și aici .

Comments (1)

Între useability și stupidity

Am primit zilele trecute de la Meekuu un articol (apărut pe slashdot) care mi-a dat niște fiori reci pe șira spinării. Nu pentru că ar exista indivizi care consideră că înlocuirea parolelor cu steluțe este prea mult pentru capacitățile utilizatorilor obișnuiți. Ci pentru că respectivii sunt „experți” și „guru”, și încep să am sentimentul că opinia lor începe să devină majoritară.

Nu de alta, dar nu sunt decât câteva luni de când citeam un thread pe un forum românesc în care o altă serie de bizoni indivizi se plângeau că ei nu vor Internet Banking cu token, că le e greu să care tokenul după ei (un dispozitiv de mărimea a 2 cărți de credit, și de câteva zeci de grame – asta în condițiile în care par să nu aibă nici o problemă în a căra un laptop de 2 kile, ca să „intre pe internet banking doar de pe laptop-ul propriu”).

OK, recunosc că sunt somewhat of a „security geek”. Și că mă deranjează până și faptul că pe telefonul meu mobil apare în clar ultimul caracter al parolei (deși trebuie să recunosc că soluția respectivă e un compromis destul de bun între „steluțe” și „toată parola în clar”). Mă uimește totuși că inclusiv Bruce Schneier (unul din oamenii pe care chiar îi consider experți în securitate) pare să fie de acord cu soluția.

Cum nu pot să nu mă amestec în discuție, încerc să explic de ce eu în continuare consider soluția respectivă una neinspirată:

  1. Utilizatorii se împart în 2 categorii: tehnici, și non-tehnici. Soluția este destinată celor non-tehnici (tehnicii au parole lungi, complicate, și le ia mai puțin să scrie din nou parola decât să corecteze un typo în „MyV3ryC0mpl3xP@55w0rD” :-P ). DAR! Persoanele non-tehnice în general nu sunt touch-typists, și cât scriu parola au ochii pe tastatură, nu pe ecran. Și atunci nu îi ajută foarte mult faptul că apare parola scrisă.
  2. Autorul spune „steluțele nu ajută, că un individ care stă lângă tine poate vedea ce scrii”. Așa am crezut și eu, până când (acum mulți ani) am întâlnit un individ care mi-a explicat că nu e chiar așa. Și la ora actuală sunt dispus să provoc pe oricine să stea lângă mine cât timp eu îmi scriu parola. De zece ori. El stând cu ochii în tastatură, fix pe mâinile mele. Dacă la final el știe parola, dau o bere. Sau zece!
  3. Continuând ideea de mai sus – dacă de citit pe tastatură e practic imposibil (cel puțin pentru un individ care scrie relativ repede), de citit (și reținut) ceva de pe ecran e incredibil de ușor. Acum câteva zile mă uitam la un CBTNugget. Și soft-ul demonstrat de individ era din categoria „parole în clar”. Deși parola respectivă a stat pe ecran sub o secundă (cât i-a luat lui să o scrie și să apese „enter”), am văzut-o, mi-a atras atenția, și ca urmare am reținut-o. Fără să dau filmul înapoi, și fără slow-motion. Era „Mtncl1mbr” (nu mai știu dacă era cu M mare sau mic, dar nu cred că asta e o problemă pentru cineva :-P ). Ca urmare, mai fac un pariu – cine vrea, scrie parola lui cât de repede poate, în clar. Cu mine undeva în spatele lui. Sunt convins că din maxim 5 încercări știu destul din parolă cât să mă descurc la un login (un pic mai dificil cu parolele de tip „Tqbfj0tld!”, dar nu imposibil :) )
  4. Majoritatea utilizatorilor au parole identice (sau foarte asemănătoare) pe mai multe servicii. Dacă una singură din parolele respective este compromisă, restul se duc prin efect de domino.

Și fix când voiam să spun „nu cred că a posibil ca o bancă având sistemul respectiv de <clear-text passwords> ar trece vreun audit de securitate, găsesc un comentariu interesant pe blog-ul lui Schneier: „I have worked as CISO in several banks and can confirm that shoulder surfing does take place. Consequently, I would ban any system that displays passwords in a shared office or in public.”

Înainte să îmi spuneți „dar noi nu vorbeam de bănci, ci doar de sisteme low-risk”, vă întreb – ce înseamnă „low-risk”? Parola de wireless (care se poate vedea în clar în Win7) înseamnă pentru mine ca administrator accesul unui atacator din parcare în rețeaua mea internă. Parola de login pe sistem este de multe ori parola de domeniu a utilizatorului, și permite un foarte frumos caz de identity-theft electronic între colegi (cu consecințe care pot fi din cele mai neplăcute – nu mai devreme de săptămânile trecute un coleg de facultate a ajuns aproape de exmatriculare printr-o astfel de situație). Adăugați ce spuneam mai sus despre parole similare pentru scopuri diferite, și veți înțelege de ce nu consider nici o parolă „neimportantă” (întrebați-l pe Meekuu ce-a pățit când a vrut parola de pe un sistem de-al meu :-P )

Slightly OT: Autorul mai spune “Password masking has become common for no reasons other than (a) it’s easy to do, and (b) it was the default in the Web’s early days.”. O fi el expert în usability, dar aici e cam pe lângă. Mecanismele de „password hiding” există de pe vremea mainframe-urilor, fără nici o legătură cu „the Web’s early days”.

Așa că oameni buni, încetați cu argumente de genul „ăla chiar e expert, SIGUR are dreptate”!! Ați auzit de „argumentum ad verecundiam”? Dacă X e „expert”, nu înseamnă că nu poate da cu bâta-n baltă ocazional. Și experții sunt oameni, și orice om poate greși :-P

Comments (3)

Despre securitate

Ca de obicei, XKCD ne aduce încă un comic absolut genial…

Security-XKCD

So true… oh, so true… :-P

Comments (3)

Să hacker-im edu.ro

Dacă tot vorbeam de SIVECO, uite încă un articol interesant. Despre un portal (edu.ro) aparținând Ministerului Educației, creat de firma menționată mai sus:

http://hackersblog.org/2009/02/03/compromiterea-serverului-portaleduro-prin-lfi/

In aceasta dimineata o sa vorbim despre portalul edu.ro creat de SIVECO Romania S.A.

Acesta sufera de o vulnerabilitate de tip Local File Inclusion, adica, putem include orice fisier de pe server pentru a fi executat ca si php, limitati fiind numai de userul sub care ruleaza serverul de HTTP.

[...]

Astfel codul nostru php este executat si rezultatul dupa cum vedeti mai jos, full access asupra serverului(baze de date, fisiere cu informatii sensibile, etc.)

Dacă vă plictisiți, aveți acolo instrucțiuni pas cu pas despre cum se poate executa atacul (din fericire nu sunt atât de detaliate încât să le poată urma oricine – trebuie să știi un pic de PHP :) ). Informațiile sunt furnizate în scop educativ, și „nu ne asumăm nici o responsabilitate pentru eventuale pagube cauzate de folosirea acesteia de catre cititorii noștri”. ;)

Credits go to LifeTester for this one :)

Comments (1)

Twitter și securitatea

În ultima vreme, twitter pare să fie o țintă preferată a diverselor atacuri. După o serie de atacuri de tip phishing, un cont de administrator a fost spart printr-un (cât de poate de banal) dictionary attack.

De ce a reușit atacul? Simplu: număr de login-uri eșuate nelimitat, CAPTCHA lipsă la login, etc. Ce mi se pare absolut fascinant este că un site de torrenti sau warez cu câteva mii de utilizatori are întotdeauna elementele respective – în schimb un site cu milioane de useri nu.

Comments (2)

« Previous entries