o problema prea putin tratata in ziua de azi. o tehnica pe care am folosit-o cu succes in mai multe ocazii din scurta mea viata. un subiect despre care am fost "atentionat" sa scriu dupa articolul "despre parole"…

   ce este de fapt social engineering? definitiile disponibile sunt multe. cateva sunt mai cunoscute ca "standard", insa adevarul este ca tehnicile, procedurile si tot ce implica ingineria sociala sunt greu de catalogat in cateva cuvinte. eu as opta catre o abordare mai generala. social engineering = totalitatea actiunilor care speculeaza slabiciunea umana in scopul obtinerii a diverse rezultate. nu este neaparat o tehnica din "za dark side", dar datorita aplicarii generale din ultimii 30 de ani, si-a castigat faima de "hacking method".

   in practica (si mai pe intelesul tuturor), social engineering inseamna in principiu manipularea oamenilor pentru a livra informatii sau pentru a intreprinde actiuni anume. mai detaliat, ingineria sociala presupune mult mai multe abordari. incepand de la cautatul prin gunoi, extrase, desfasuratoare telefonice si terminand cu plasarea de "momeli" prin birouri - practic nu exista limita, cat timp scopul final e atins.

   primul nume care sare intr-o discutie despre acest subiect este Kevin Mitnick. fost hacker, acum transformat in expert de securitate, a scris (printre multe altele) doua carti foarte populare despre fenomen. se numesc "The art of deception" si "The art of intrusion" si le recomand celor care sunt la inceput de drum. cu doua mentiuni: 1. cititi in ENGLEZA daca stapaniti bine limba si simtiti nuantele, pentru ca despre asta e vorba de fapt. 2. daca deja aveti o experienta solida in domeniul securitatii, nu va asteptati la revelatii. poate o sa va lase pe ganduri niste idei, dar cam atat. oricum, sunt un bun punct de plecare.

   cat despre victime, cred ca nu e companie importanta care sa nu o fi patit vreodata (public sau nu). ca sa nu mai vorbim de persoane fizice. multe dintre victimele din ambele categorii nici nu stiu ca au patit beleaua, decat cand e prea tarziu, pentru ca asta e toata arta. mai nou, firmele de "security assesment" ofera si teste de inginerie sociala incluse in cele de penetrare, insa putine companii opteaza pentru aceste verificari din doua motive: ori sunt prea mandri/incuiati sa isi dea seama de importanta, ori constientizeaza vulnerabilitatea deja.

   sa trecem un pic la practica, partea care probabil intereseaza la maxim pe multi script kiddies si alti pokemoni care vantura netul romanesc:

   1. aflu despre tine ca esti un copil de bani gata, care are contul vesnic alimentat cu sume frumusele de catre parinti. imi rezerv 2 zile pentru cercetare subtila. tehnica se numeste "footprinting" sau "pre-hacking". incerc sa aflu cat mai multe informatii de la cei din jurul tau, de exemplu colegii sau vecini. ma invart prin jurul blocului sa vad cand vine echipa de salubrizare sa deschida ghena (Daca e incuiata, cazul cel mai prost) si sa caut rapid ceva util. aflu daca esti activ pe internet. daca da, ai cam belit cucul din start. studiez tabelul de intretinere al blocului. ma prezint imbracat sters dar decent, cu ochelari aiurea pe nas si un desfasurator in mana la usa la tine sa vad ce informatii mai pot scoate, sub diverse pretexte. in cateva zile, am un dosar maricel despre tine si cei din jurul tau, iti cunosc obiceiurile, stiu ce cumperi de la supermarket, ce fumezi, ce conduci. talentul personal imi permite sa fac o fisa de personalitate. apoi nu am decat sa te sun, sa te intoxic cu cate informatii private ca sa iti castig increderea, apoi folosind tonul si formularea potrivite pentru tine, sa scot PIN-ul, numarul de card sau ce mai vrea muschiu meu. pare stupid, dar o pot face cu usurinta. peste ceva timp iti dai seama de teapa (sau poate nu), dar deja e prea tarziu, eu sunt un individ vag in memoria multora, prinde orbul, scoate-i ochii. tocmai esti victima unui furt de identitate superficial, folosind tehnici de inginerie sociala. tehnica descrisa brut in exemplul de mai sus este folosita insa si in scopuri mai bune. de exemplu detectivii apeleaza in anumite situatii la asa ceva pentru a stoarce informatii.

   2. la un magazin mai mare intr-un cartier platesti cu cardul. in timp ce ingramadesti ca robotul produsele in punga sau casti gura pe rafturi SAU ai o conversatie usoara cu mine, eu trec cardul tau prin cititorul de carduri legal, apoi printr-unul personal care salveaza toate informatiile, fara sa te taxeze imediat. ati remarcat ca sunt multe magazine la care P.O.S-ul (cititorul de card) nu este la vedere, doar tastatura pentru PIN?? ca exemplul sa fie mai bun, pot arunca o vorba cum ca daca platesti cu cardul, intri in promotia vietii blah blah.

   3. esti lucrator la un call center. in situatia asta SPER ca firmele serioase isi antreneaza  operatorii sa detecteze atacurile de social engineering, macar pana la un anumit nivel. stiu insa multe situatii unde tzepe se pot opera foarte usor. pot spune (din nefericire) ca pana si in firme de securitate, problema e tratata cu superficialitate.

   variatie: dau buzna in birou sub un pretext gen "verific instalatia electrica" si continui de-acolo. cum intru? destul de simplu: m-a chemat managerul la o discutie despre ceva office related si nu am cheie/card sau altceva in genul asta. introducerea unei persoane de rang superior in discutie ajuta mult si numele celor in asemenea pozitii este usor de aflat.

    cand atacul este planuit cum trebuie si la un nivel serios, exemplul 3 se poate extinde. victima poate fi convinsa sa colaboreze intr-un atac, folosind un asa numit "confidence trick". de exemplu, nu incerci abordarea asta folosind rangul superior (fals bineinteles), ordinele urgente sau frustrarea victimei. in schimb, te apropii usor usor, intri "pe sub piele". nu este o abordare cu rezultate imediate, insa este una din cele mai eficiente. eu prefer de exemplu tehnica "strong/weak arguments" . pornim de la premisa ca victima deja a fost studiata si exista un profil de personalitate deja format. ideal ar fi asigurarea unei cooperari minore anterioare. adica un contact vag inainte de atacul principal (tehnica se numeste "foot in the door" ). cu o zi inainte de exemplu suni victima si iti "faci intrarea" cum se spune, folosind un pretext banal care sa fie usor de rezolvat si care sa nu ridice suspiciuni. sansele ca victima sa coopereze si a doua zi cresc simtitor. cu cat gradul de implicare al victimei e mai mare, cu atat argumentele pregatite trebuie sa aiba greutate mai mare. de exemplu cineva care se afla la baza sistemului "de atacat" are nevoie de o argumentare cat mai puternica, pentru ca mintea umana tinde sa creeze contra argumente instant. aceasta posibilitate nu trebuie oferita. daca e vorba de persoane cu implicare de nivel scazut (carora nu prea le pasa de actiunea respectiva), argumente mai slabe sunt de-ajuns. de exemplu, un paznic obosit/batran sau un ingrijitor - nu au nevoie de un argument tehnic detaliat despre motivul pentru care tu vrei sa intri in firma seara cu laptopul, e de-ajuns sa zici ca esti Xulescu si ai venit sa lucrezi ceva 30 minute. daca dai de un sysadmin, ala o sa vrea detalii exacte despre ce vrei sa faci.

   o alta tehnica eficienta, mai ales in Romania, este "momeala". v-ati gandit vreodata ce s-ar intampla daca ati lasa printr-o cladire de birouri un CD intr-un plic pe care sa scrie "Salarii Decembrie 2007" sau vreo chestie care sa aiba in componenta cuvantul "Gratis". sau cateva memory stickuri la receptia unei firme, cu titlul de "promotie"? deja ar fi trivial sa explic in detaliu ce poa sa contina CD-ul/Stick-ul respectiv si intram usor-usor in tehnici combinate: social engineering + hacking tehnic. un troian bine plasat pe asa ceva scoate rezultate surprinzatoare…

   alte tehnici de inginerie sociala combinata sunt "phishingul" (electronic in general), "phone phishing" sau I.V.R. (interactive voice response). daca la phishingul simplu, prin mail, lumea deja s-a (mai) invatat, IVR-ul este extrem de distractiv (cel putin dpdv-ul meu :) ) si eficient. presupune simularea unui serviciu telefonic de la A la Z. victima e convinsa sa sune, iar la capatul celalalt al firului atacatorul simuleaza call-centerul LIVE. din nou, rabdare si studiu prealabil sunt necesare. pentru a simula un call center de banca, sunt necesare mai multe telefoane si discutii cu un operator real, pentru a obtine informatii generale despre abordare, timpi de raspuns, procedura samd. odata obtinute, e mai usor. daca v-ar suna un numar privat si s-ar recomanda cum trebuie ca ar fi de la relatii clienti Vodafone, cat de imuni credeti ca ati fi?

   alte exemple comune(folosite):

- intr-o companie mare, telefoanele in numele departamentului de "PR/HR" pot avea un real succes in cazul "pescuirii" de informatii si creearea de puncte de plecare. secretarele sunt foarte vulnerabile.

- simularea "prostiei" - un angajat nou care nu prea are treaba cu tehnica de calcul si are nevoie de ajutor. din nou, multe informatii de baza se pot obtine destul de usor.

- simularea rangului + violenta verbala - sunt mare scula pe bascula si am nevoie de chestia asta acum!

- simularea atributiilor + argumentare solida - eu sunt sysadmin si am nevoie de parola ta sa iti fac nush ce optimizare la calculator sa mearga netul sau excelu mai repede.

 

   sper ca ati inteles din randurile de mai sus ca a ignora asemenea amenintari este foarte periculos. invatati sa fiti circumspecti, nu va jenati sa cereti informatii cand aveti dubii. nu conteaza daca ati putea fi considerati paranoici, mai bine asa si sa aveti o singura data dreptate, decat sa o luati pe coaja. ca fapt general acceptat: NIMENI nu este invulnerabil, asa ca scapati cat mai repede de bashinile de genul "sunt prea 1337 sa mi se intample asa ceva" sau "lasa ca doar nu o sa mi se intample tocmai mie". contrar conceptiei generale, in cele mai multe cazuri slabiciunea o reprezinta factorul uman, iar pregatirea angajatilor imptoriva unor asemenea amenintari este de obicei mult mai grea/importanta decat securizarea unei retele/server. tineti minte ca parolele NU SE DAU, mai ales in contexte obscure. cei care au nevoie de acces pe masina voastra de calcul in mod cert au drepturile necesare separat, fara sa fie nevoie de datele voastre.

   daca aveti cea mai mica suspiciune ca ati fost pacalit in genul asta, contactati persoanele competente fara jena. numa cei neprofesionisti ar face misto de voi, indiferent daca situatia e reala sau doar o alarma falsa. ignoranta umana este unul din punctele de baza pe care se bazeaza un atac de inginerie sociala.

  si ca nota finala, social engineeringul nu da rezultate folosit doar in exclusivitate intr-un atac, decat in cazuri rare. de obicei e combinat cu atacurile tehnice clasice si este folosit ca "spargator de bariere" inainte de aplicare metodelor de hacking tehnic cunoscute (degeaba ai tu super antivirus daca eu te prostesc sa il inchizi…). de aceea am atins tangential subiectul in postul celalalt. oricare ar fi efectele insa, este o arta a manipularii si a deceptiei pe care nu o stapanesc prea multi la adevaratul potential…

 

L.E.: cand vedeti la televizor stiri de genul "doi barbati au pacalit mai multe persoane din localitatea X, recomandadu-se ca ofiteri de politie/agenti de asigurari/voluntari crucea rosie/whatever" - este un exemplu de inginerie sociala romaneasca perfect.

 

ps: aceeasi nota de subsol valabila ca si la postul despre parole.

Nota: sfaturile de mai sus sunt pentru un utilizator obisnuit. situatiile/exemplele prezentate nu sunt folosite efectiv de mine, m-am gandit la ele pe moment. pentru cei care sunt mai experimentati: nu o faceti pe desteptii va rog, puteam scrie de N ori mai mult, am incercat sa simplific cat am putut de mult si tot am scris o groaza…

securitate, social engineering, IT, life, work