Sociotechnika (sociální inženýrství)

Sociotechnika je ovlivňování a přesvědčování lidí s cílem oklamat je tak, aby uvěřili, že sociotechnik je osoba s totožností, kterou předstírá a kterou si vytvořil pro potřeby manipulace. Díky tomu je sociotechnik schopný využít lidi, se kterými hovoří, případně dodatečné technologické prostředky, aby získal hledané informace. [1]

Úvod a základní pojmy

Sociální inženýrství – termín pro metodu, jež vede legitimní počítačové uživatele k poskytnutí užitečných informací, které pomáhají útočníkovi získat neautorizovaný přístup do jejich počítačového systému.

Sociální inženýrství – způsob získávání důležitých informací od uživatelů bez jejich vědomí, že toto činí

Definice podle [3] (upraveno):
Sociální inženýrství – pojem užívaný mezi crackery pro crackovací techniky, které spoléhají spíše na slabé stránky wetware než software; úmyslem je oklamat lidi, aby prozradili hesla či jiné informace, které snižují bezpečnost cílového systému. Klasickým příkladem je telefonát oběti s požadovanými informacemi, při kterém se útočník vydává například za servisního technika nebo zaměstnance téže firmy s neodkladným problémem.

Cracknout – nezákonně se vloupat do počítače, obvykle za účelem zcizení či zničení dat, případně zamezení přístupu k systému ostatním uživatelům [2]

Wetware – [pravděpodobně z románů R. Ruckera] 1. Lidský nervový systém, jako protiklad k počítačovému hardware či software. "Wetware má 7 plus mínus 2 dočasné registry." 2. Lidské bytosti (programátoři, operátoři, administrátoři) svázané s počítačovým systémem, jako protiklad k systémovému hardware či software. Viz liveware, meatware. [3]

Phreaking – souhrnný termín pro vloupávání se do telefonních systému, převážně za účelem vedení bezplatných hovorů, odposlouchávání nebo narušování telefonních služeb [2]

Phishing – prohledávání Internetu za účelem získání informací o určité osobě [2]


Existuje spousta definic, nicméně ze všech plyne, že pokud jde o bezpečnost počítačových systémů, nejslabším článkem je vždy člověk (nejlépe s patřičnými přístupovými právy). V definici tak, jak ji uvádí [3], bylo pro označení tohoto nejslabšího místa dokonce použito speciálního termínu “wetware” (jehož synonymy jsou také “meatware” nebo “liveware”).

Hlavní myšlenka je následující: Proč se obtěžovat s používáním brutální síly na prolamování hesel, když jednodušší je přinutit někoho, kdo heslo zná, k tomu, aby nám jej řekl? Navíc při dobře vedeném útoku si oběť v drtivé většině vůbec neuvědomí, že něco vyzradila nepovolané osobě. Toto je nejnebezpečnější rys problematiky sociálního inženýrství. Když nám ukradnou peněženku s kreditní kartou, hned je nám jasné, že tuto skutečnost musíme ohlásit a příslušná karta bude zablokována, ale v případě, že je použito sociální inženýrství, se vůbec nedozvíme, že v tu chvíli nás někdo okrádal (o informace).

Ačkoli je třetí tisíciletí nazýváno informačním věkem a stále častěji můžeme slyšet, či se dokonce sami přesvědčit, že úspěšný bude ten, kdo bude ovládat schopnost získávat, hledat a správně vyhodnocovat informace, lidé si stále ještě neuvědomují jejich hodnotu. Málokoho napadne, že informace je také nutno odpovídajícím způsobem střežit.

Druhá příčina toho, že je možné provádět sociotechnické útoky na poměrně důležitých místech, podle mě plyne z pocitu přílišné virtuality oboru informačních technologií. Chybí zde schopnost domýšlet přesahy do reality. Zjednodušeně bych to ukázal na následujícím příkladu: Pokud sousedovi odcizím automobil, je všem intuitivně zřejmé, že jsem spáchal zločin, neboť po mém skutku dotyčnému sousedovi onen automobil evidentně chybí. Ale pokud bych od souseda zkopíroval jeho program či výsledky půlroční práce (samozřejmě nikoli tak, že bych se vloupal do jeho domu, ale elektronickou cestou), nic se neděje – sousedovi přece vše zůstalo, neutrpěl žádnou hmotnou újmu.

Většina lidí si myslí, že průniky do počítačových systémů jsou čistě technické záležitosti, následek skulin v systému, kterých je útočník schopen využít. Pravdou je, že v úloze pomocníka pro překonávání bezpečnostní bariéry hraje sociotechnika velkou roli. Nedostatečná informovanost uživatelů často poskytuje báječnou příležitost použít je jako vstupní bránu i v případech, kdy útočník nemá vůbec autorizovaný přístup k systému.

Sociální inženýrství je v drtivé většině případů ten nejlevnější a pro znalého člověka i nejjednodušší způsob, jak narušit bezpečnost jinak velmi robustních systémů. Obecně se o sociálním inženýrství dá říci, že útoky mají velmi vysoké procento úspěšnosti a jsou velice zákeřné. Při dobrém skrývání útočníka navíc téměř není možné vystopovat. A dopad je někdy drtivý.

Kevin Mitnick

Kevin Mitnick je tím, kdo poprvé termín sociotechnika definoval. Kevin Mitnick je hacker, který se stal ne vlastním přičiněním mediální hvězdou. Jako jedné z nejhledanějších osob v historii FBI mu za jeho neoprávněné průniky do počítačových systémů velkých korporací hrozil trest několika set let odnětí svobody (vzhledem k tomu, že v Americe se při spáchání více trestných činů tyto nepohlcují, ale sčítají). Považuji proto za důležité se o osobě Kevina Mitnicka zmínit.

Mitnick se k počítačům vlastně dostal přes telefonní systémy. Jeho první zábavou byl v mládí tzv. phreaking. V této oblasti je známý především spoluzakladatel firmy Apple Steve Wozniak a jeho zařízení "Blue-box", což byl generátor telefonním ústřednám podobných zvuků. Už v té době byl odsouzen k roku soudního dohledu za krádež manuálů (s použitím sociotechniky) ve firmě Pacific Bell. Ovšem ústředny postupně začaly přecházet na modernější počítačové, a tak se Mitnick musel přeorientovat.

Jeho kariéra hackera (jak on sám tvrdí, vždy když sebe takto označoval, používal tohoto termínu v jeho původním významu - tedy ten, kdo experimentuje s počítači, píše efektivnější programy, či hledá lepší řešení daných problémů) začala na střední škole. Pak studoval informatiku v Los Angeles. Na školní síti našel bezpečnostní díru v operačním systému a získal veškerá práva na počítačích IBM. Protože nikdo nedokázal odhalit, jak se to Mitnickovi podařilo, došlo tehdy asi k prvnímu případu "zaměstnání hackera". Měl totiž na výběr vyloučení ze školy, nebo v rámci semestrální práce opravit zabezpečení školního systému.

V roce 1982 mu byl vyměřen trest za neautorizované použití počítačů patřících Univerzitě Jižní Kalifornie v délce šesti měsíců. O pět let později následoval další rozsudek, tentokrát 36 měsíců soudního dohledu za průnik do systému Santa Cruz Operation. V roce 1989 byl Mitnick odsouzen za vloupání do firmy DEC na rok vězení a protože byl shledán závislým na počítačích – na půl roku ve středisku pro léčbu závislostí.

V dalších letech Mitnick například nezákonně vniknul do počítačového systému kalifornského registru vozidel, na jiný server poslal software firem Nokia, Novell, Motorola, Fujitsu nebo NEC. 15. února 1995 došlo k dalšímu Mitnickovu zatčení, tentokrát s výsledkem v podobě trestu na 8 měsíců za vlastnictví ilegálně upravených telekomunikačních zařízení a 14 měsíců za porušení podmínek dohledu.

27. června 1997 dostal zákaz používání počítačů a mobilních telefonů po dobu tří let od propuštění z vězení, v listopadu 1998 došlo k zamítnutí odvolání, ve kterém se požadovalo povolení řízení ve věci propuštění na kauci. 9. srpna 1999 byl Mitnick odsouzen na 46 měsíců vězení a k pokutě ve výši 4150 dolarů za celkem 7 doznaných přestupků.

Po propuštění z vězení (21. ledna 2000), kde strávil celkem 68 měsíců, Mitnick změnil svůj život. Vydal se na druhý břeh řeky a je z něj uznávaný expert na bezpečnost počítačových systémů. Nedávno svou návštěvou poctil i Českou republiku.

Mitnick vždy tvrdil, že veškeré jeho konání pocházelo čistě ze zvědavosti, nikdy nezničil data na jediném počítači do kterého pronikl, ani ze svých akcí nikdy neměl finanční prospěch. Nicméně o protizákonné kroky šlo, jakkoli neměly zlé úmysly. I když není pravda, že odposlouchával FBI, nebo že se vloupal do počítačů NORAD (Severoamerické velitelství protivzdušné obrany), Kevin Mitnick se, myslím, nesmazatelně zapsal do dějin výpočetní techniky.

Metody útoku

“Pouze dvě věci jsou nekonečné: vesmír a lidská hloupost. Ačkoli tím prvním si nejsem jist.”
Albert Einstein

Jak už to tak bývá, nejjednodušší metody bývají nejspolehlivější. Když Kevin Mitnick vypovídal před americkým Kongresem o tom, jak získával od firem hesla a jiné citlivé informace, uvedl: "Představil jsem se jako někdo jiný a prostě jsem o ně požádal."

Jako médium pro sociotechnický útok slouží kromě klasické pošty hlavně telefon a Internet (e-mail, IRC, ICQ). Zkušení sociotechnici mohou provádět i útoky “tváří v tvář”.

V případě, že útočník dokonce zná oběť osobně, může uhádnout její heslo na základě informací, které o ní má. Typicky zkusí zadat místo narození, přezdívku, název vesnice, ve které má oběť chatu, jméno psa, atd. Je až s podivem, jak velké množství lidí jednoduchá hesla tohoto typu používá i pro zabezpečení přístupu k vysoce důležitým dokumentům a účtům. Když o oběti neznáme bližší údaje, je možno využít techniky zvané phishing.

Sociotechnici využívají běžných vlastností lidí, jako je důvěřování druhým, občasná lenost, přehlížení drobných odlišností, ochotu pomoci druhým a strach před tím, aby se nedostali do problémů. (Poznámka: zvláště Američané jsou až příliš důvěřiví, nepodezíraví a soucitní).

Pokud útočníkovi na úspěchu akce velice záleží, neváhá věnovat delší časové období na tzv. budování důvěry. Například útočník s obětí třeba i několik týdnů chatuje a při jednom z rozhovorů (kdy už pro oběť není někým neznámým, ale naopak důvěryhodným) ji přinutí k instalaci drobného užitečného prográmku. Jenže spolu s tímto programem většinou dojde i k tiché instalaci (silent install – tzn. uživatel si vůbec neuvědomí, že k něčemu došlo) nějakého monitorovacího programu – tzv. spyware. Tento speciální software slouží ke skrytému sledování a odposlouchávání veškerého dění na počítači – navštívené internetové stránky, sledování elektronické pošty, stisk kláves při zadávání hesel, atd.

I. Přímý přístup

Útočník bez okolků přímo požádá oběť (například recepční) o její uživatelské jméno a heslo. I tato metoda může mít někdy nárok na úspěch.

II. Důležitý uživatel

Útočník předstírá, že je někým z vedení firmy, má problémy, které velice rychle potřebuje vyřešit a požádá o informace typu: typ používaného software pro vzdálený přístup, jeho konfiguraci, telefonní čísla k vytáčení, další informace nutné k přilogování se k serveru. Pracovník technické podpory samozřejmě "nadřízenému" rád pomůže (nerad by měl konflikty a nerad by přišel o práci).

III. Bezmocný uživatel

Útočník si vybere identitu například nového zaměstnance (nebo zaměstnance nepříliš zručného v ovládání počítače), který má potíže s prvním přihlášením do firemní sítě (popřípadě zapomněl heslo a nutně potřebuje pracovat na svém projektu). Skutečný zaměstnanec-oběť se snaží dotyčnému pomoci (pracujeme přeci v jedné firmě, v jednom týmu, tak proč nepomoci), například tím, že dočasně poskytne útočníkovi své uživatelské jméno a heslo, v případě administrátora pak tím, že například vygeneruje pro daný účet nové heslo.

IV. Pracovník technické podpory

Útočník předstírá, že patří do firemního oddělení informatiky. Tímto způsobem lze získat zaručeně pravdivé informace od běžných uživatelů. Typicky může jít o zaslání e-mailu, který se tváří, že je od administrátora a požaduje s jakýmkoli odůvodněním znovupotvrzení loginu a hesla. Řadoví zaměstnanci, kteří nejsou školeni, samozřejmě nemají ani ponětí o tom, že hlavička Odesílatel vůbec nemusí obsahovat pravdivé informace.

V. Obrácená sociotechnika

Situace se obrátí. Útočník obvykle zaranžuje události tak, aby se na něj s prosbou o pomoc obrátila samotná oběť.

Technické zázemí

Sociotechnik tedy díky svým schopnostem může manipulovat s lidmi. Tato vlastnost je mu sama o sobě jistě v některých případech dostačující, nicméně (ne)úspěch celé akce většinou závisí také na jeho znalostech v oblasti počítačových či telefonních systémů.

Sociotechniky ve spojení s technickým vybavením se užívá například v oboru průmyslové špionáže. Dříve bylo pro útočníka nutností dostat se fyzicky na půdu firmy – ale proč by se o to pokoušel, když to s pomocí výpočetní techniky lze provést výrazně jednodušeji.

Vpád do systému bývá agresorovi často usnadněn také faktem, že správci si nedali tu práci a nezměnili defaultní hesla operačních systémů, routerů či pobočkových ústředen. Jejich seznam je pro všechny přístupný na Internetu (například http://www.phenoelit.de/dpl/dpl.html).

Enumerace – proces odhalující služby dostupné na daném serveru, jeho operační systém a názvy uživatelských kont, které mají přístup do systému. Jako obvykle je možné vhodné nástroje najít na Internetu (http://mtslenth.0catch.com).

Slovníkový útok – uživatelé většinou chtějí mít dobře zapamatovatelné heslo. A tak v mnoha případech volí za hesla své přezdívky, jména domácích mazlíčků, značku auta, název města, název oblíbené skupiny nebo sportovního týmu. Většinou jsou to výrazy, které lze najít ve slovníku. Slovníkový útok zkouší postupně výrazy ze slovníku jako heslo jednoho či více uživatelů.

Útok hrubou silou – strategie odhalování hesel, která spočívá v testování všech možných kombinací alfanumerických i speciálních znaků. Jedním z vynikajících nástrojů na hádání hesel je L0pthcrack3 (www.atstake.com). Správci používají L0pthcrack3 na vyhledávání "slabých" hesel a hackeři na jejich prolamování. L0pthcrack umožňuje zkoušet hesla s kombinacemi písmen, číslic a většiny symbolů včetně !@#$%^&. Tento program pracuje s neuvěřitelnou rychlostí, která může na počítači s frekvencí procesoru 1 GHz dosáhnout hodnoty 2,8 milionu pokusů za sekundu.

Další nápomocné nástroje jsou například výše zmíněné monitorovací programy.

Komplexní příklad na závěr

Mladý hacker, říkejme mu Peters, si dal za cíl získat zdrojový kód nové hry. Bez potíží se dostal do firemní sítě, protože jeho hackerský kolega se už dříve dokázal nabourat na jeden z jejich webových serverů. Po odhalení jisté slabiny v softwaru zjistil, že má přístup i do vnitřní sítě. Avšak jednalo se o globální korporaci se stovkami serverů, která neposkytovala indexy vývojářských systémů či jiné průvodcovské služby po svých datech.

Místo toho, aby k nalezení serveru, na který se potřeboval dostat, použil technologické metody, využil metodu sociotechnickou. Nejprve zavolal na technickou pomoc oddělení informatiky, představil se jako zaměstnanec firmy a řekl, že by rád probral jistý problém spojený s rozhraním produktu, na kterém pracovala jeho skupina. Požádal o telefonní číslo na šéfa projektu ve skupině programátorů, kteří se zabývali hrami.

Potom zavolal na toto číslo a předstíral, že je pracovníkem oddělení informatiky.
"Ještě dnes večer," řekl, "budeme měnit router a chceme se ujistit, že lidé z vaší skupiny neztratí spojení se serverem. Který server používáte?"
Síť byla neustále vylepšována a sdělení jména serveru nemůže ničemu vadit, že? Vždyť je přece chráněn heslem a samotná znalost jména nikomu nic nepřinese. A tak šéf projektu uvedl jméno serveru. Ani se nepokusil o zpětné zavolání a ověření této historky nebo alespoň o zapsání jména a telefonního čísla volajícího. Prostě sdělil jména serverů: ATM5 a ATM6.

Nyní se Peters vrátil k technologickým metodám, aby získal autentikační informace. Ve většině případů je prvním krokem identifikace účtu se snadným heslem, které dovolí získat v systému první opěrný bod. Nejprve použil Peters enumeraci, která umožňuje odhalit podrobnosti o systému. Věděl, že firma používá servery na platformě Windows a stáhl si z Internetu enumerační nástroj NetBIOS. Zadal IP adresu serveru ATM5 a spustil program.

Po identifikaci existujících kont stejný program umožnil spuštění slovníkového útoku. Peters provedl slovníkový útok ve třech fázích. V první fázi použil seznam 800 nejčastěji používaných hesel. Seznam obsahuje taková slova jako secret, work nebo password. Kromě toho program tvořil permutace těchto výrazů s doplněnými číslicemi nebo s číslem aktuálního měsíce. Bez výsledku.

Ve druhé fázi zadal Googlem vyhledat výraz "wordlist dictionaries". Našel tisíce stran obsahující seznamy slov a anglické i jiné slovníky. Stáhl si celý elektronický anglický slovník a doplnil ho o několik dalších seznamů výrazů (např. obsahující příjmení, slova a jména z Bible, jména hrdinů z animovaných seriálů, postavy a citáty ze Shakespeara, Tolkiena či Hvězdných válek). Atakující program může být zkonfigurován tak, aby tvořil anagramy – to je další oblíbená metoda uživatelů, která má zvětšit jejich bezpečnost. Člověk by si myslel, že takový útok bude trvat velice dlouho, ovšem ve skutečnosti – v závislosti na druhu napadeného systému a rychlosti připojení – může být plná slovní zásoba z anglického slovníku otestována za 30 minut.

Během útoku zapnul Peters druhý počítač a rozběhl podobný útok na druhý server, který používala skupina programátorů, ATM6. O dvacet minut později došlo k prolomení hesla – jeden z uživatelů si zvolil heslo "Frodo", jméno jednoho z hrdinů Pána Prstenů.

S heslem v ruce se mohl Peters přihlásit k serveru ATM6. Čekala tam na něj dobrá a špatná zpráva. Dobrá, že konto, na které se naboural, mělo administrátorská práva. A špatná, že tam nikde nemohl najít zdrojový kód hry. Zřejmě byl na druhém serveru, ATM5, který se slovníkovému útoku ubránil.

V některých operačních systémech jsou zašifrovaná hesla přístupná každému, kdo má přístup na počítač. Důvodem je fakt, že hesla nelze dekódovat zpět a tedy není důvod je chránit. Tato teorie je mylná. Pomocí dalšího nástroje si Peters stáhl zakódovaná hesla ze serveru ATM6. Když měl soubor u sebe na počítači, použil další nástroj, který používal tzv. útok hrubou silou. O několik hodin později našel program hesla všech členů skupiny programátorů. Byla to však hesla uživatelů na ATM6, kde nebyl zdrojový kód. Peters si uvědomoval zlozvyky většiny uživatelů a došel k závěru, že si někdo z členů týmu mohl vybrat stejné heslo na obou serverech. A bylo to tak. Před Petersem se otevřely dveře k hledání zdrojového kódu...

[1] zkráceno, upraveno

Reference

[1] Mitnick, Kevin – Simon, William: Umění klamu. Helion, Gliwice 2003.
[2] Deaver, Jeffery: Modrá sféra. Domino, Ostrava 2001.
[3] The Jargon Dictionary [online]. URL: http://info.astrian.net/jargon/terms
[4] Říha, Petr: Slovník počítačové informatiky. Montanex, Ostrava 2002.
[5] Jagodzinsky, Marcin: Hledá se: Kevin Mitnick [online]. URL: http://mitnick.helion.pl
[6] Mitnick, Kevin – Simon, William: Historie Kevina (Missing Chapter) [online].
URL: http://mitnick.helion.pl
[7] Stewart, James Michael: Thwarting social engineering attacks [online].
URL: http://info-center.ccit.arizona.edu/~ccitinfo/newsletters/april2002/and_here.html
[8] Social Engineering [online].
URL: http://rf-web.tamu.edu/security/SECGUIDE/V1comput/Social.htm
[9] Armstrong, Del: Social Engineering [online].
URL: http://www.seas.rochester.edu:8080/CNG/docs/Security/node9.html
[10] Rusch, Jonathan: The "Social Engineering" of Internet Fraud [online].
URL: http://www.isoc.org/inet99/proceedings/3g/3g_2.htm
[11] Gaudin, Sharon: Social Engineering: The Human Side Of Hacking [online].
URL: http://itmanagement.earthweb.com/secu/article.php/1040881
[12] Search Security Definitions [online].
URL: http://searchsecurity.techtarget.com/sDefinition/0,,sid14_gci531120,00.html
[13] Granger, Satan: Social Engineering Fundamentals - Part I: Hacker Tactics [online].
URL: http://www.securityfocus.com/infocus/1527
[14] Harl: The Psychology of Social Engineering [online].
URL: http://cybercrimes.net/Property/Hacking/Social%20Engineering/PsychSocEng/PsySocEng.htm
[15] Hanke, Hynek: Šifrování na Internetu X. [online].
URL: http://www.novinky.cz/archiv/Index/Internet/7296.html
[16] KillahDragon: Guide to Social Engineering [online].
URL: http://www.astalavista.com/library/accesscontrol/social_engineering/howto1.shtml

Kolokviální práce do předmětu PV109 Historie a vývojové trendy ve výpočetní technice
Faklulta informatiky, Masarykova univerzita Brno
Richard Šimek, 2003