Breșe, scurgeri de date, atacuri de pagini Web

Breșe, scurgeri de date, atacuri de pagini Web

580
raoul
Raoul Chiesa, Fondator și președinte, Security Brokers SCpA rc@security-brokers.com
De ce sunt importante codările de securitate împreună cu soluţiile Cyber Intelligence și sursele corecte de informare

autor: Raoul „Nobody” Chiesa

În septembrie 2015 Security Brokers (SB) a definitivat o amplă analiză cu tema „Targeted Threats Team”, demarată în ianuarie 2013, bazată pe o cercetare de peste 24 de luni și corelarea datelor. Studiul a analizat cele mai importante incidente de Securitate și breșe de date identificate în ultimii 10 ani, cu începere din anul 2004. Lecţia învăţată a fost deosebit de impresionantă și a afectat întrucâtva tiparele de gândire și de operare de până acum. În prezentul articol ne propunem să trecem în revistă elementele cheie rezultate în urma acestui proiect de cercetare și noile elemente logice pe care nu le putem încă aplica intern în organizaţiile noastre în lunile următoare și în viitorul apropiat.

În prima parte a acestui articol vor fi prezentate cele mai importante tendinţe legate de ameninţările informatice, breșe, scurgeri de date și atacuri de pagini Web, precum și impactul acestora asupra organizaţiilor.

A doua parte a articolului oferă o vedere generală asupra importanţei conceptului «Secure Programming» și a greșelilor specifice care pot să apară în timpul rulării testelor de securitate sau activităţilor de tip Advanced Penetration Testing specific aplicaţiilor Web.

Introducere

Ideea unui articol dedicat a apărut în ultimele luni ale anului 2014, când au fost analizate datele studiului „World’s biggest data breach” (Ref. a) ce conţineau analiza a zece ani de evenimente de securitate, breșe, scurgeri, ameninţări, lansate împotriva tuturor sectoarelor de piaţă posibile, enume rate în Tabelul 1.

Tabel-1-Trends-No-4

Lista în sine ar trebui să fie suficientă pentru a realiza dimensiunile și mărimea problemei. Autorii raportului au organizat metodologia de scurgeri de date după următoarele criterii: Incidente publicate de hackeri, interne, laptopuri pierdute sau furate, dispozitive digital media pierdute sau furate și condiţii slabe de securitate.

În timp ce parcurgeam raportul toţi eram deosebit de uimiţi; ne aminteam de luna februarie 2014, când analizam excelenta lucrare „Strategies to mitigate cyber intrusions” publicată de Australian Signals Directorate (ASD), din cadrul Departamentului de Apărare din Australia: da, discutam despre acea deosebit de bine educată echipă folosită la investigarea și rezolvarea incidentelor de securitate din anii ‘90 (Ref. b).

Parcurgând ghidurile publicate de ASD, am rămas surprinși de faptul că nici un fel de recomandări sau reguli explicite nu au fost adoptate în privinţa unor domenii precum Secure Coding sau Secure Programming. Am găsit „Reguli de configurare a aplicaţiilor de utilizator” menite să adreseze intruziunile ce exploatează vulnerabilităţile Java sau macro codurile maliţioase din fișierele Microsoft Office, precum și Application whitelisting (#1 pe lista ASD), dar încă nu un item specific legat de exemplu de S-SLDC (Secure Software Life Development Cycle), OWASP Top-Ten, sau atenţionări generale despre nivelele de securitate ale programelor. Și după cum poate fi ușor de verificat, niciun fel de menţiuni legate de mediile Cybercrime Intelligence. Tocmai de aceea în cadrul echipei SB s-a decis rularea unei analize diferite care să evidenţieze aceste macro-erori, atât procedural cât și tehnologic, pe baza acestui volum impresionant de date, ajutând astfel audienţa și cititorii să înţeleagă cât de mult pot contribui cele două concepte Cyber Intelligence și Secure Coding la mai buna prevenire a unor scenarii atât de
neplăcute.

Prima concluzie evidentă ce a reieșit este oarecum înfricoșătoare: nici una dintre organizaţiile victimă nu știe „Cine sau Ce” i-a afectat, în ciuda unor bugete importante alocate pentru o „mai bună” Securitate IT, produse, software și consultanţi de vârf. Ceea ce este semnificativ și ne poate conduce către o paradigmă, ce va crește în importanţă în anii următori. La fel cum astăzi suntem conștienţi de faptul că informaţiile despre breșele din companiile noastre, precum și acele semnale și indicatori despre următoarele posibile atacuri trebuie găsite în afara mediilor noastre. Trebuie deci să vorbim despre Cyber Intelligence, unde Intelligence („information & data”) se aplică contextului și spaţiului unde acţionăm în fiecare zi.

Cyber Intelligence (Bazate Pe Open Sources)

Cyber Intelligence reprezintă un serviciu ce poate fi aplicat oricăror tipuri de afaceri, de la companiile private (Finanţe Energie, Apă, Modă, Jocuri. etc…) la organizaţiile guvernamentale și militare. Acest serviciu este obligatoriu, fiind în permanenţă actualizat cu ceea ce se întâmplă, pentru a înţelege mai bine ce s-ar putea și cu siguranţă se va întâmpla.

Aceste servicii sunt bazate pe două diferite modalităţi de abordare: bazate pe Open-Source și pe Closed-Source Intelligence. În primul caz, companii specializate culeg din mediile Web (IPv4, IPv6, siteuri Web, Portaluri de știri, etc.) toate informaţiile disponibile și le organizează pe sectoare, topologii și cuvinte cheie. Un exemplu este prezentat mai sus (în „Figura 1”), printr-o captură de ecran de pe portalul Web „BRICA” (Ref. c).

BRICA-Cover-Story-No-4

Așa cum se poate vedea, informaţiile și datele sunt corelate cu profilul clienţilor, fiind bazate în special pe sectoarele de business și infrastructura IT a acestora.

Risk-Intelligence-No-4În această abordare specifică, BRICA nu doar administrează și organizează acele alerte tehnice de securitate, ci și colectează, analizează și clasifică conţinutul alertelor incipiente („Early Warning type”) selectate cu atenţie și asociate diferitelor tipuri de riscuri și ameninţări cibernetice, din diferite Risk-Intelligence2-No-4zone de business. Informaţii corecte despre noile ameninţări globale, ameninţări malware și campanii Cybercrime, fraude și farse, ameninţări de mediu, activităţi infracţionale, precum și acţiuni de terorism sau ameninţări legate de sănătatea umană.

În fine, BRICA include ca trăsătură nativă un sistem pentru Online Risk Alerting & Management Portal, integrat cu interfeţele Web disponibile pentru abonaţii săi, de unde este administrat și modulul de Risk Intelligence; așa cum per total următoarele categorii sunt acoperite de diferite echipe de analiză:

Considerând natura acestui articol, e lesne de menţionat importanţa ce trebuie acordată categoriei „Aplicaţii” din zona ICT Technology Risks.

Pornind de la resursa dată ca exemplu (s-a ales BRICA pentru că asta se folosește) credem că fiecare organizaţie trebuie să aibă disponibilă o singură resursă de date, integrată cu elemente de analiză a riscului și securitatea informaţiei, ce poate contribui la prevenirea atacurilor IT.

Cyber Intelligence (Bazat Pe Closed Sources)

După această primă trecere în revistă a instrumentelor Cyber Intelligence bazate pe OpenSources, haideţi să le discutăm pe cele bazate pe Closed Sources. Trebuie să fie evident cât de importantă este corelaţia dintre conceptul de Cyber Intelligence și problemele legate de programarea nesigură și codurile afectate: multe organizaţii afectate au realizat că breșele de securitate au apărut când era prea târziu. De aceea este important ca informaţiile trebuie obţinute pe cât posibil înainte de producerea unui incident: este exact obiectivul pe care se bazează metodele Closed Sources din conceptul Cyber Intelligence.

Este vorba despre o abordare total diferită faţă de primele metode analizate, bazată în mod curent pe un abonament anual, ce poate fi rezumat ca:

  • AML (Anti Money-Laundering) Intelligence & Consulting:
    3C (Compromised Credit Cards), conturi bancare, etc.
  • BOTNETs Intelligence
  • E-CRIME Intelligence
  • MALWARE Intelligence (sau sisteme „POS”)
  • THREAT Intelligence
  • TARGETED THREAT Intelligence

În timpul diferitelor noastre activităţi am întâlnit informaţii ce proveneau din sectorul militar, în special despre date secrete furate din diferite calculatoare compromise („zombies”), cu parole de identificare și logare provenite din diferite secţii ale Ministerului Apărării.

În limbaj tehnic aceste informaţii sunt numite „feeds” și provin din atacuri ţintă plănuite special pentru organizaţiile vizate; furnizorul care se aseamănă cu o agenţie privată ce operează în spaţiul cibernetic, obţine aceste feeds din diferite medii precum „Cyber” (Cyber Intelligence), Human (HumInt – Human Intelligence, precum operaţiunile sub acoperire) și Signal ( SigInt, Signal Intelligence, de exemplu interceptarea traficului C&C din gâtuiri). Suma tuturor acestor informaţii este alocată centrelor Intelligence Data, analizate de către Intelligence Analysts, ce alocă un anumit număr de ore pe lună pentru fiecare organizaţie client.

Este clar că discutăm despre servicii speciale de securitate, cu o importantă valoare adăugată, pentru care costurile de subscripţie sunt ceva mai ridicate decât informaţiile provenite din Open sources.

Important este că în timp, am putut observa cum unele investiţii aprobate de diferite organizaţii pot returna valoarea, prin campanii targetate împotriva pericolelor interne, precum campaniile de hacking, atacurile de phishing, breșele de date, pagube legate de reputaţie și imagine, pierderea continuităţii în business.

Secure Coding (Sau Secure Programming)

După ce în precedentele capitole am putut vedea o imagine de ansamblu, putem realiza că este o mare greșeală să ne concentrăm doar pe siguranţa codării, fără a explica în ce măsură datele furate pot fi recuperate în exteriorul organizaţiei.

În ciuda tuturor atacurilor ce apar non-stop, 24 de ore pe zi, pe durata celor 20 de ani de experienţa ai companiei SB am observat că foarte puţine organizaţii apelează la soluţii de tipul Secure SLDC (Software Life Development Cycle).

Un alt semnal clar că „ceva este putred aici” este legat de numărul de organizaţii care aplică programe de instruire Secure Coding. Ca exemplu, SB oferă peste 80 de programe de instruire pentru securitatea informaţiei, dintre care circa 20 de cursuri din gama Secure Coding se află permanent în catalogul de training. Din păcate, doar 2% dintre clienţii SB investesc în programe de instruire specializate, un procent extrem de redus ce se explică parţial prin lipsa de investiţii în resurse umane și prin externalizarea scrierii de coduri către terţe companii, ce nu acorda atenţia cuvenită pericolelor de securitate.

De aceea am decis ca ultima secţiune a articolului să se bazeze pe informaţii provenite din propria noastră experienţă, bazată pe un număr de peste 1000 de teste de penetrare, prin diferite aplicaţii Web, comerciale sau Open source.

Chiar dacă suntem în anul 2015, încă întâlnim o sumedenie de probleme legate de penetrarea SQL, ceea ce arată că programatorii nu au învăţat încă lecţia. E dramatic faptul că echipele de securitate mai identifică încă acest gen de greșeli de programare – indiferent de limbajul folosit, de la PHP la .ASP – ce permite oricărui atacator extern să exploateze bug-urile aplicaţiei și să câștige accesul direct (citire, scriere, ștergere) la peste 10.000 de tabele din baza de date de back-end.

Aceasta conduce la vulnerabilitatea următoare, legată în principal de administrarea sistemului, de tipul „Excessive database user grants” ce permite atacatorilor să obţină sute de mii de parole de utilizator; această vulnerabilitate e asociată adesea cu „Weak password hashing algorithm”, ce permite atacatorilor să spargă mult mai rapid parolele utilizatorilor.

Destul de des am întâlnit vulnerabilităţi ce pot fi identificate numai prin metode „Privileged Testing”: chiar după testarea tipică de penetrare „black-box” în care echipa nu dispune de nicio informaţie de tipul UserIDs/Passwords, am cerut clienţilor să ne dea alte 3 seturi de identificare pentru fiecare profil pe care îl rulează în aplicaţie, precum „User”, „Special User” și „Administrator”. Vulnerabilitatea este numită „Cross-User Interaction” și am identificat-o aproape de fiecare dată în care am rulat un test de penetrare, probabil pentru că companiile de testare a standardelor de securitate nu furnizează clienţilor aceste tipuri de teste.

Acum putem vorbi despre atacurile de tip DoS, ce apar ca buguri în aplicaţii, ca de exemplu Slow Loris DoS (Ref d.) vulnerabilitate care spre deosebire de o sesiune HTTP nu expiră: cele mai expuse categorii de clienţi sunt cei din gama SME (Small and Medium size Enterprise), care în marea lor majoritate rulează servicii Internet pe linii ADSL standard.

Deoarece din experienţa de teren și diferitele scenarii întâlnite la client am acumulat peste 1000 de proiecte de testare a securităţii, vom rezuma principalele vulnerabilităţi în formă tabelară. Pentru fiecare vulnerabilitate redată în Tabelul 3 se detaliază impactul și se face o scurtă descriere.

Concluzii

Această lucrare s-a focalizat pe diferitele greșeli făcute de organizaţiile din întreaga lume, indiferent de mărime și maturitate în domeniul Securităţii Informatice.

Deși diferitele modalităţi de abordare și folosirea de diferite soluţii depind în mod categoric de resursele disponibile (buget, personal IT, experienţa și pregătirea administratorilor de sistem și programatorilor), credem că orice trebuie să înceapă cu măsurile care sunt foarte ușor de dezvoltat în interiorul oricărei organizaţii: popularizarea internă și instruirea tuturor angajaţilor.

Este un proces care ajută nu numai specialiștii IT, din Securitatea Informatică sau management, dar și colegii din alte departamente la buna îndeplinire a obiectivului comun: securitatea informaţiei din propria organizaţie. Un obiectiv ce trebuie să reprezinte o prioritate absolută pentru organizaţiile orientate către sectoarele critice de securitate a datelor.

Referințe

  • „World’s biggest data breach”: http://www.informationisbeautiful.net/visualizations/worlds-biggest-data-breaches-hacks/
  • Australian Signals Directorate „Strategies to Mitigate Targeted Cyber Intrusions”: http://www.asd.gov.au/infosec/top-mitigations/mitigations-2014-table.htm
  • Cyber open source Intelligence portal: https://brica.de/
  • Slow loris DoS: http://it.wikipedia.org/wiki/Slowloris