dá sa po hacknutí Macrona veriť počítačom?

hacknutie budúceho francúzskeho prezidenta je veľká vec ešte z iných dôvodov, než o akých sa píše. Že nastane počítačový útok na kandidáta stojaceho proti Marie Le Pen sme vedeli už pred pol rokom, v okamihu zverejnenia e-mailov Hillary Clinton. Nevedeli sme, že ním bude Emmanuel Macron, ale vedeli sme, že útok bude, kto za ním bude stáť a ako bude prebiehať. Vedeli to francúzske tajné služby, vedeli to počítačoví experti a keď to začalo, ihneď to spozorovala security firma TrendMicro.

aj tak sa nepodarilo zabrániť tomu, že uniklo množstvo dôvernej korešpodencie a dokumentov, ani tomu,  že k nim bol pridaný falošný obsah a teraz sa nedá hodnoverne rozlíšiť, čo je Macronove a čo nie je.

existuje lepší dôkaz o absolútnej kríze počítačovej bezpečnosti, či celého odvetvia softvérového priemyslu? Ak sa neubránil francúzsky prezident predvídateľnému útoku, dokáže sa ochrániť netušiaci bežný človek či organizácia? Dá sa ešte veriť počítačom?

počítače bežia naše životy, takže by sa veľmi hodilo im veriť. Ak by som dokázal tlesknutím dlaní vypnúť všetky počítače, zastavili by sa fabriky, zhasli by svetlá, havarovali by lietadlá, neboli by peniaze v bankách. Nastali by nepokoje a veľa ľudí by umrelo. To sme pritom len na začiatku počítačovej éry, na obzore máme internet vecí, či autonómne autá.

žiaden vynález nezmenil ľudské životy tak ako počítač, ale veriť sa im nedá.

viera v softvér
s príchodom internetu verili ľudia počítačom bezhranične a bolo to nesprávne, lebo softvér, na ktorom internet bežal, bol plný bezpečnostných dier, zariadenia pripojené na internet si medzi sebou hlúpo verili a vzájomnú komunikáciu nešifrovali. Boli to prví hackeri, neškodní študenti, ktorých komunitu som v 90-tych rokoch spoluvytvoril, kto to verejnosti okázale demonštrovali. Pomohlo to? Ľudia síce pochopili, že hocijaký nezbedník vie v počítači pomeniť jednotky na nuly, ale zmizli z počítačov bezpečnostné diery? Nie.

vôbec nezmizli a keď sa pýtam kamarátov sekuriťákov, ako sa teraz veci majú, svorne mi vravia, že je všetko ešte deravejšie, ako za starých časov. Subjektívne? Popátral som vedecké zdroje, problematikou výskytu bezpečnostných chýb v softvéri sa zaoberá nespočet vedeckých štúdií. Sumár? Softvér je deravý ako ementál, situácia je horšia, ako si väčšina ľudí myslí.

biblia poctivého kódera je zdá sa kniha Code CompleteAutor Steve McConnell v nej odhaduje, že “priemyselný štandard” v chybovosti softu je 15 až 50 chýb na 1000 programových riadkov. Nie každá chyba je bezpečnostná diera, ale skúste si trochu ponásobiť – OS Windows má 50 miliónov riadkov kódu a prehliadač Firefox ich má 16 miliónov.

uznávaná hlavička na všetky štatistiky ohľadne softvérového vývoja je zjavne chlapík menom Capers Jones, ten vo svojej štúdii odmieta metriku “bug per riadok kódu”, lebo to diskriminuje niektoré jazyky, on meria poruchovosť per funkčný bod, čo označuje jednu funkčnú oblasť, ktorú daný softvér “robí”. Koľko chýb podľa neho obsahuje každý funkčný bod? V priemere 5, slovom päť. Sodoma-Gomora.

takže informatika je pre nás čím ďalej dôležitejšia, hardvér je čím ďalej výkonnejší, ale softvér je precpaný chybami a dierami. Neubránil sa ani Macron a budúcnosť ľudstva neohrozujú Kim-ove jadrové bomby, ale softvérový bug. Je to nevyhnutné?

nie je. Existujú vedecké metódy písania softvéru, overené postupy na analýzu existujúceho kódu, či metodiky testovania, ktoré vedia zaručiť bezporuchový softvér. Existujú dokonca počítačové jazyky vyvinuté s cieľom nemať bugy, príkladom je jazyk SPARK. V ňom je napríklad napísaných 250 tisíc riadkov kódu na riadenie letovej prevádzky nad Anglickom, ktoré sú údajne bez jedinej chybičky.

prečo sú diery
prečo je teda tak veľa softvérových dier, ak nie sú nevyhnutné? Moja manželka robí projektovú manažérku softvérového vývoja a ak len skategorizujem niektoré jej povzdychy na túto tému, mám za hrsť dôvodov:

  1. rýchla doba kladie na najvyšší piedestál agilitu a čas dodania. Kvalita je v úzadí.
  2. testovanie nenájde všetky chyby, lebo je nereálne otestovať všetky scenáre, nič nenahradí dôkladnú analýzu kódu.
  3. bezpečnostných chýb môže byť aj viac ako tých funkčných, lebo vývoj sa sústredí na to, aby softvér fungoval a nie na to, aby bol bezpečný.
  4. programuje hocikto a hocijako, “moderné” jazyky umožňujú programovať “klikaním”. Programátori nepoznajú a nepoužívajú vedecky známe metodiky bezpečného programovania.

možno je problém, že nikto neberie informatiku vedecky, že je celý obor prepchatý ľuďmi, ktorý ju neštudovali, že trpí na “instantných mudrcov”, obchodníkov, manažérov, ktorí jej reálne nerozumejú, aj keď ju riadia. Vo všeobecnosti dnes málokto vie čo robí,  je o tom fajn epizóda Pod Lampou.

je to azda aj tým, že je softvérové inžinierstvo tak mladé odvetvie, je tu len pár desiatok rokov. Poľnohospodárstvo či stavebníctvo majú históriu dlhú tisíce rokov, možno preto sa tam takéto kixy nestávajú. Pamätám sa ako sme s partičkou informatikov popíjali na brehu Dunaja v deň, keď fenomenálne osádzali most Apollo a debatovali sme – koľko by most stál a či by vydržal, ak by ho stavali informatici (100-násobok a padol by). Gartner tvrdí, že 75% veľkých IT projektov zlyhá.

výsledkom je zlatá baňa bezpečnostných dier a prívlastok o zlate je doslovný, za jeden 0-day, ako sa nazýva pred tým nepoznaná bezpečnostná diera, sa dá zarobiť aj niekoľko stotisíc eur. Americká vláda dokázateľne na ich nákup míňa desiatky miliónov dolárov.

raz v živote som našiel 0-day, bolo to veľmi dávno, pol roka som si to užíval, človek sa cíti ako Boh, poletuje si svetom cudzích počítačov, cítil som sa vyvolený, potom som to zverejnil, mal som vtedy jednak pocit totálnej exkluzivity a jednak toho, že to raz nebude. Oboje bol veľký omyl.

ďaľším problémom je, že má informatiku pod palcom relatívne malá hŕstka IT firiem. Posledných 20-rokov som sa viac krát pýtal v krčme svojich IT priateľov záludnú otázku – koľko ľudí by bolo treba, aby spolu “vypli Slovensko”. Odpoveď je za tie roky konzistentná – asi 10 ľudí. Teraz nemám na mysli 10 hackerov útočiacich zvonka, ale hypotetický scenár, že akosi presvedčím konkrétnych 10 slovenských IT profesionálov, aby konali krivo, napríklad cez legitímne, či pri servisných prácach zriadené diaľkové prístupy pomazali zálohy a zničili primárne stroje v dôležitých inštitúciách. Nerálne? Tento rok sa jedinému chlapíkovi v Amazone podarilo vypnúť skoro pätinu celosvetového Internetu.

funguje IT bezpečnosť?
Macronov štáb potreboval k svojmu fungovaniu softvér so stovkami miliónov riadkov kódu, ak len zrátam Windows, MS Office, Android, Outlook, atď., bez toho sa asi nedá zaobísť a keďže všetko je deravé, dá sa pochopiť, že to kadekto môže byť schopný nabúrať. Prečo ale všetky Macronove IT veci niekto z počítačovej bezpečnosti neobohnal stráženou hradbou firewallov, anti-vírov, či intrusion-prevention-systémov?

neviem na to úplne odpovedať, IT security pokladám za funkčné odvetvie. Dobre poznám slovenský svet IT sekuriťákov, sú to študovaní a fundovaní ľudia u ktorých svorne badať to, čo už v informatike málokde – práca je ich koníčkom, bezpečnosť je im vášňou, sú nadupaní a neustále sa posúvajú. Možno Macronov štáb odmietol isté užívateľské obmedzenia, nevyhnutné pri zabezpečených systémoch. Možno naozaj zlyhalo IT security odvetvie, naposledy som mal ten pocit, keď vyplával najavo Stuxnet – ten totiž nepozorovane poletoval svetom celé tri roky, pred nosom desiatok anti-vírových firiem.

spása v číslach
riešenie nájsť musíme, lebo bez počítačov sa už nedá. Informácie hrajú v našej spoločnosti pridôležitú rolu a väčšina z nich je na hard diskoch. Aj na Slovensku je reálna hrozba, že napríklad pri ďalších voľbách niekto niekoho hackne a vyplávajú nejaké informácie a my sa nebudeme vedieť vysomáriť, či su pravé alebo nie. Jedno riešenie je písať poriadny softvér a vykoreniť všetky tie horespomínané dôvody, ale to je prinajmenšom nadlho.

Druhá vec je nevyhnutnosť pasovať bezpečnosť za absolútne najvyššiu prioritu všade tam, kde sú informácie dôležité, čiže skoro všade. Nie užívateľské prostredie, nie time-to-market, nie kontinuálna prevádzka, ale bezpečnosť a integrita dát musia byť prvoradé.

aha a ešte tu máme niečo, čo nás spasí. toto:

2 + 2 = 4

áno, zachráni nás matematika (a ja nadväzujem na svoj článok v Denníku N o blockchaine). Respektíve, zachráni nás konkrétne kryptografia, ale to je len matematika. Súkromný či verejný kľúč je len jedno dlhé číslo, šifrovanie je len matematický algoritmus, RSA je len súčin dvoch veľkých prvočísiel. Kým softvérové inžinierstvo je ľudský vynález starý ledva päťdesiat rokov a stavebníctvo ledva päťtisíc, matematiku tu máme od počiatku vesmíru a neohne ju nik.

matematika naozaj skrýva riešenie na naše aktuálne problémy, treba ju len použiť a poskytne nám:

  • súkromie – šifrovaním
  • overovanie identity – digitálnymi podpismi a certifikátmi
  • integritu – hešovaním a podpismi
  • neschopnosť poprieť udalosť – podpisom odoslania správy či udalosti
  • nemožnosť nekontrolovane duplikovať informácie – blockchainom
  • transparentnosť v práci s dátami – blockchain

a ešte azda všeličo, o čom zatiaľ ani netušíme.

ak by Macron všetko šifroval, bol by v suchu, nič čitateľné by neuniklo. Ak by všetko podpisoval a hešoval, vedeli by sme, čo je jeho a čo je vymyslené. Ak by povedzme ukladal bezpečnostné logy do blockchainu, možno by sme hodnoverne vedeli, kto ho hackol.

nerozumiem, prečo to tak nie je. Keď som si pred 22 rokmi vygeneroval svoj aktuálny PGP kľúč, predstavoval som si, že v dnešnej dobe budú šifrovať všetci všetko. Nie je to user-friendly? To som si vtedy myslel, nakódil som grafickú nadstavbu nad PGP pre Windows, releasol som to ako shareware, zarobil som trochu peňazí a potom to zakapalo.

každého, komu záleží na informáciách, treba naučiť používať kryptografiu. Každý politik, novinár, bankár, aktivista, podnikateľ, štátny zamestnanec by mal SMS-kovať s  Threemou, mailovať s GnuPG, na disku mať BitLocker, šifrovať dokumenty, zálohy, podpisovať, overovať, browsovať cez Tor.

bremeno zúfalého stavu s dôverou voči IT totiž neleží len na softvérových inžinieroch a sekuriťákoch. Leží aj na každom jednom užívateľovi, lebo kryptografia umožní každému jedincovi uchopiť dôveru v počítače do svojich vlastných rúk. Len tak nájdeme vo svete počítačov opäť svoje súkromie, dôveryhodné úložisko, chránený priestor a spoľahlivý nástroj.

 

 
sub-buzz-22392-1494022984-1

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *