Vlákno názorů k článku Windows 10: analýza probíhající komunikace od Jakub Vrána - Díky za skvělý výzkum. Myslím, že by stálo...

  • Článek je starý, nové názory již nelze přidávat.
  • 9. 9. 2015 2:09

    Jakub Vrána

    Díky za skvělý výzkum. Myslím, že by stálo za to přeložit článek do angličtiny a vydat ho i mezinárodně.

    Bylo by možné zveřejnit surová data? Tedy pokud jste používal účty na jedno použití nebo po anonymizaci těch dat. Jednak by to vzalo vítr z plachet pochybovačům, kteří mají za to, že jste některé zajímavé požadavky vynechal. A jednak by v tom třeba někdo dokázal vyšťourat ještě něco dalšího.

  • 9. 9. 2015 9:30

    safsdffdd (neregistrovaný)

    <i>"Jednak by to vzalo vítr z plachet pochybovačům, kteří mají za to, že jste některé zajímavé požadavky vynechal"</i>

    Myslite, ze nie je mozne vynechat cast poziadavkov, keby mu uz o to islo? Proste by spojenia na par IP poslal priamo a potom moze zverejnovat, co chce.

    Par ludi poukazalo aj na inu moznost - co ked si to kontroluje serverovy certifikat a odosiela to tajne data iba ked je "spravny"? (U mna sa to bez aktivneho odposluchu chovalo rovnako, takze pravdepodobne nie, ale ktovie...)

    Mne zase vadi nevypnutelne stahovanie suborov, lebo je mozne, ze v spracovani niektorych je buffer overflow alebo take nieco. Potom si MS moze robit co chce a moze to popriet - proste to bude pri naleze oznacene za bug.

  • 9. 9. 2015 9:52

    Filip Jirsák
    Stříbrný podporovatel

    Par ludi poukazalo aj na inu moznost - co ked si to kontroluje serverovy certifikat a odosiela to tajne data iba ked je "spravny"?
    Pořád nechápu, k čemu by byla implementace tajné plošné šmírovací funkce, která by se takhle snadno prozradila a hlavně by ji bylo možné takhle jednoduše vypnout.

    Konspirační teoretik totiž všechna tvrzení zařazuje jen do dvou kategorií. Buď si myslí, že to tvrzení potvrzuje jeho domněnky, tedy že má pravdu. Nebo si myslí, že to tvrzení vyvrací jeho domněnky, což je důkaz ještě většího spiknutí – a tedy má opět pravdu.

  • 9. 9. 2015 10:09

    strepty (neregistrovaný)

    Keby sme neuvazovali plosne sledovanie ale len jednoduchu prevenciu proti tomu aby tretie strany mohli odchytavat telemetriu?

  • 9. 9. 2015 11:21

    Filip Jirsák
    Stříbrný podporovatel

    Tedy by stejně nešlo o sledování, ale o pouhou telemetrii. Navíc čemu by vadilo, kdyby uživatel sám (nebo někdo, s kým uživatel spolupracuje – žádná „třetí strana“) mohl zachytávat telemetrii ze svého počítače? Pokud by Microsoft chtěl, aby tu telemetrii nemohl nikdo odchytávat, tak to jednoduše zašifruje asymetrickou šifrou.

  • 9. 9. 2015 12:42

    fdsafadsfaadf (neregistrovaný)

    Navíc čemu by vadilo, kdyby uživatel sám (nebo někdo, s kým uživatel spolupracuje – žádná „třetí strana“) mohl zachytávat telemetrii ze svého počítače?
    Alebo niekto, kto moze mat root certifikat v uzivatelovom PC. Zamestnavatel moze chciet u zamestnancov certifikaty kvoli VPN a zrazu ich moze aj sledovat (problem u BYOD).
    Zamestnavatel nemusi mat na sledovanie takych dat pravo a to znamena, ze ked zamestnavatel nechce mat problemy s UOOU, tak zamestnanci nemozu pouzivat Win 10.

    Tomu sa moze chciet MS vyhnut, lebo pravne problemy s nasadenim => menej nasadeni => menej $$$.

    Pokud by Microsoft chtěl, aby tu telemetrii nemohl nikdo odchytávat, tak to jednoduše zašifruje asymetrickou šifrou.
    Co myslis, ako funguje HTTPS?
    Overenie certifikatu je stale overenie verejneho kluca. Netreba jeden kluc, ktory by sa mozno raz prelomil.

    Pořád nechápu, k čemu by byla implementace tajné plošné šmírovací funkce, která by se takhle snadno prozradila
    Ako jednoducho? Ze neposiela vsetky data, ked je certifikat od zlej autority? Vsak to robim aj ja v mojom programe, lebo chcem data chranit.

    a hlavně by ji bylo možné takhle jednoduše vypnout.
    Za jednoduche vypnutie nepovazujem "spravte si mimo svojho PC HTTPS proxy, presmerujte cez nu prevadzku a nainstalujte certifikat do systemu".

  • 9. 9. 2015 12:56

    Filip Jirsák
    Stříbrný podporovatel

    Co myslis, ako funguje HTTPS?
    Overenie certifikatu je stale overenie verejneho kluca. Netreba jeden kluc, ktory by sa mozno raz prelomil.

    HTTPS funguje tak, že se podle certifikátu ověří protistrana, pak se s ní dohodne klíč pro symetrické šifrování a tím se šifruje komunikace. Pokud se důvěřuje uživatelem definovaným certifikačním autoritám, má uživatel samozřejmě možnost tam podstrčit jiný certifikát a tedy komunikaci následně odchytávat.

    Pokud by Microsoft chtěl, aby tu telemetrii nemohl nikdo odchytávat, tak to jednoduše zašifruje asymetrickou šifrou. Tj. ve Windows by byl jen veřejný klíč, tím by se údaje zašifrovaly a odeslaly do Microsoftu. Tam by měly soukromý klíč a zprávu by rozšifrovali. Pokud by se k datům dostal někdo po cestě (třeba přes MitM, jako autor článku), nedokázal by je rozšifrovat a zjistit, co se přenáší. Nanejvýš by dokázal přenos těch dat blokovat. Jediná možnost by byla vyměnit ten veřejný klíč ve Windows, a to je už zase jiná úroveň.

  • 9. 9. 2015 16:23

    asdadsasdad (neregistrovaný)

    HTTPS funguje tak, že se podle certifikátu ověří protistrana, pak se s ní dohodne klíč pro symetrické šifrování a tím se šifruje komunikace.
    Podla certifikatu sa overi verejny kluc protistrany. Prostrednictvom asymetrickej kryptografie sa dohodne symetricky kluc.
    A to je ako komunikacia pri asymetrickej kryptografii.

    Ze sa data sifruju symetricky? To aj pri asymetrickej kryptografii, lebo je to rychlejsie. Akurat pri HTTPS sa symetricky kluc dohodne a pri klasickom jednostrannom RSA sa zasifrovany pripoji k datam.

    Pokud by Microsoft chtěl, aby tu telemetrii nemohl nikdo odchytávat, tak to jednoduše zašifruje asymetrickou šifrou.
    Ale ta asymetricka sifra nakoniec pouziva rovnake symetricke sifrovanie. Podvod?

    Jediná možnost by byla vyměnit ten veřejný klíč ve Windows, a to je už zase jiná úroveň.
    Ale to je dost podobne aj pri pripadnej HTTPS implementacii, kde by sa overovalo, kto certifikat podpisal. Akurat by Windows nepotreboval konkretny kluc, ale stacil by mu kluc podpisany autoritou od MS.

    Zhrnme si rozdiely:
    1. Microsoft by dost mozno musel implementovat dalsiu asymetricku kryptografiu, mal by vlastne riesenie, ktore by dost pravdepodobne obsahovalo viac bugov. To je rozdiel oproti 2 riadkom testovaneho kodu.

    2. Obmedzil by sa na jeden kluc. Tu moze mat tych klucov lubovolne mnozstvo (kolko podpise, tolko ma)

    3. Stratil by moznost revokacie. Proste ten jeden kluc by tam bol bez zmeny programu az naveky.

    Takze o akej asymetrickej kryptografii sa bavime?

  • 9. 9. 2015 16:50

    Filip Jirsák
    Stříbrný podporovatel

    Rozdíl je v tom, že při HTTPS komunikaci předáváte data komukoli, kdo má certifikát, jehož certifikační autorita je přidaná v uživatelem editovatelném seznamu. Naproti tomu při šifrování odesílaných dat by ta data dokázal dešifrovat jedině majitel privátního klíče, tedy Microsoft. Ano, bylo by možné i tu HTTPS komunikaci implementovat tak, že se nebudou používat certifikáty v systému, ale nějaký certifikát napevno zabudovaný v aplikaci. Jenom by to byla zbytečná komplikace, jednoduší je ta data zašifrovat – pak už transportní kanál nemusíte řešit. Navíc to šifrování by umožnilo data dešifrovat v nějakém speciálním oddělení, zatímco při použití HTTPS komunikace musíte mít ten privátní klíč na každém webovém serveru a přeci jen se kolem toho motá mnohem víc lidí.

    Možnost změny klíče nebo zadrátovaného certifikátu je tu vždycky, Windows během updatů aktualizují kde co, takže by klidně mohly aktualizovat i ten zadrátovaný klíč nebo certifikát.

  • 9. 9. 2015 17:26

    adasdasd (neregistrovaný)

    jehož certifikační autorita je přidaná v uživatelem editovatelném seznamu.
    Ale to nie je ziadna podmienka. Ja si v mojom programe overujem, ci sa komunikuje s klucom podpisanym mojou certifikacnou autoritou a editovatelny zoznam tam nemam.

    Jenom by to byla zbytečná komplikace,
    To je teda komplikacia, namiesto volania sifrovania na data si jednou funkciou ziskam, kto podpisal kluc a to overim.

    musíte mít ten privátní klíč na každém webovém serveru a přeci jen se kolem toho motá mnohem víc lidí.

    Nemusim mat vsade TEN privatny kluc. Mozem mat na kazdom sledovacom webserveri iny. Vdaka tomu moze mat server napr. BIS a ta moze sledovat CR (cez server MS) a NSA bude stale sledovat USA.

    Naproti tomu při šifrování odesílaných dat by ta data dokázal dešifrovat jedině majitel privátního klíče, tedy Microsoft.
    Nikto nenuti Microsoft CA podpisovat kluce inym. (Alebo mozno NSA ano, ale ta by chcela pristup tak ci tak. Teda uz davno tam ma NSAKEY)

    Možnost změny klíče nebo zadrátovaného certifikátu je tu vždycky, Windows během updatů aktualizují kde co, takže by klidně mohly aktualizovat i ten zadrátovaný klíč nebo certifikát.
    To je dost narocne, az skoro nemozne. Cim sa podpise ta aktualizacia? Starym klucom? To sa potom bude stale pouzivat stary, aj ked bol dovod ho zmenit (napr. ho niekto prelomil). Potom ten niekto moze pouzit prelomeny kluc, aby dovtedy neaktualizujucim ludom vnutil inu aktualizaciu, ktora napriklad zakaze dalsie updaty.
    Alebo to podpisat niecim zatial nedoveryhodnym? To moze spravit kazdy.

  • 9. 9. 2015 18:49

    Filip Jirsák
    Stříbrný podporovatel

    Ale to nie je ziadna podmienka.
    Není. Ale Windows 10 to tak evidentně mají v současné chvíli implementované.

    To je teda komplikacia, namiesto volania sifrovania na data si jednou funkciou ziskam, kto podpisal kluc a to overim.
    Ono to není zas až tak jednoduché správně ověřit celou certifikační cestu. Ale hlavně, co budete dělat, když zjistíte, že certifikát nesedí? Vymýšlet nějaká důvěryhodná podvržená data? Není jednodušší ta data zašifrovat a odeslal - a jediný problém, který může nastat, je ten, že nedojdou?

    Nemusim mat vsade TEN privatny kluc.
    Což je úplně jedno, podstatné je, že všude se ta data dešifrují.

    Nikto nenuti Microsoft CA
    Co je to Microsoft CA? Kde najdu její certifikační politiku?

    To je dost narocne, az skoro nemozne.
    Vidíte, a přesto to Microsoft zvládá každý měsíc, vždy druhé úterý v měsíci.

    Cim sa podpise ta aktualizacia?
    Tím samým, čím se podepisují všechny ostatní aktualizace. Ona by ta aktualizace měla být co nejméně nápadná, nemusí hned prozrazovat, kde je ten klíč schovaný a kde si ho má vyměnit zájemce o ty šifrované informace.

  • 9. 9. 2015 23:22

    asfasdfasdf (neregistrovaný)

    Ale Windows 10 to tak evidentně mají v současné chvíli implementované.
    U spominanych dotazov ano, inde sa nevie (ani ci ine su).

    Ono to není zas až tak jednoduché správně ověřit celou certifikační cestu.
    Nie je treba overovat celu certifikacnu cestu, staci posledny podpis, ze je od tej spravnej (hardcoded) autority.

    Ale hlavně, co budete dělat, když zjistíte, že certifikát nesedí?
    To iste, co by ste robili vy pri zisteni, ze vasu komunikaciu blokuje firewall. Bud by sa to ignorovalo / nekomunikovalo by sa, alebo by sa hladala cesta, ako to obist a komunikovat inak tak, ze to prejde bez odchytenia.

    Což je úplně jedno, podstatné je, že všude se ta data dešifrují.
    To su dve, lebo si podpisovy kluc mozem zavriet do trezoru a bude problem ho najst a pouzit aj pri kryptoanalyze gumovou hadicou - to sa prezradi max 1 sajta. Vo vasom pripade staci prezradit jeden kluc a bolo by prezradene vsetko.

    Co je to Microsoft CA? Kde najdu její certifikační politiku?
    Ked myslite tu verejnu, tak tu:
    http://www.microsoft.com/pki/mscorp/cps/
    (MS moze mat aj nieco, co tak verejne neprezradza)

    Vidíte, a přesto to Microsoft zvládá každý měsíc, vždy druhé úterý v měsíci.
    On snad kazdy mesiac meni kompromitovane kluce?

    Tím samým, čím se podepisují všechny ostatní aktualizace.
    Jo, tu by bol problem az o uroven vyssie - pri prezradeni root certifikatu, ktory je vo vysledku treba na podpisovanie aktualizacii.

  • 9. 9. 2015 23:25

    adfasdfadsf (neregistrovaný)

    Este k tym neverejnym autoritam, jedna je napr.
    "Microsoft Root Certificate Authority"
    ktora podpisala certifikat pre update.microsof­t.com. Takze myslim, ze je to nieco, ako som pisal.

  • 10. 9. 2015 8:11

    Filip Jirsák
    Stříbrný podporovatel

    To iste, co by ste robili vy pri zisteni, ze vasu komunikaciu blokuje firewall.
    Já bych v takovém případě nedělal nic speciálního. Prostě se pokusím navázat spojení, a pokud se to podaří, odešlu data. Jestli tam je nějaký proxy server, který ta data zachytává, je mi úplně jedno.

    On snad kazdy mesiac meni kompromitovane kluce?
    Zvládá každý měsíc aktualizovat software.

    To su dve, lebo si podpisovy kluc mozem zavriet do trezoru a bude problem ho najst a pouzit aj pri kryptoanalyze gumovou hadicou - to sa prezradi max 1 sajta. Vo vasom pripade staci prezradit jeden kluc a bolo by prezradene vsetko.
    Poněkud jste to obrátil. Na počtu klíčů nezáleží, ten blob je klidně možné šifrovat náhodně jedním z 10 klíčů. Záleží na tom, v jak exponovaném prostředí se ty klíče nacházejí. Pokud je komunikace šifrovaná HTTPS, je dešifrována na každém webovém serveru, který obsluhuje danou doménu. Vzpomeňte třeba na chybu Heartbleed, kvůli které se vyměňovala spousta certifikátů – protože útočník teoreticky mohl získat z paměti webového serveru privátní klíč (pomiňme teď fakt, že je to nešťastná implementace, a že manipulaci s privátním klíčem a dešifrování by měl mít na starosti jiný proces, než webový server – takováhle implementace je dnes běžná). Pokud se zpracovává šifrovaný blob, mohu ho doručit až na nějaké bezpečné zařízení, které je zcela oddělené od sítě, a dešifrovat až tam.

    Jo, tu by bol problem az o uroven vyssie - pri prezradeni root certifikatu, ktory je vo vysledku treba na podpisovanie aktualizacii.
    Přičemž při takovém problému by fakt, že někdo může číst šifrovanou telemetrii, byl nevinný žertík v porovnání s tím, jaký prů–švih by znamenalo to prolomení aktualizačního mechanismu.

  • 9. 9. 2015 14:46

    Jenda (neregistrovaný)

    > Pořád nechápu, k čemu by byla implementace tajné plošné šmírovací funkce

    Já taky ne. Ale konkurence různé plošné šmírovací kampaně pomocí backdoorů dělá, takže to asi nějaký smysl mít bude.
    http://www.beneaththewaves.net/Projects/Motorola_Is_Listening.html
    https://en.wikipedia.org/wiki/Carrier_IQ#Rootkit_discovery_and_media_attention

    > která by se takhle snadno prozradila

    Jak snadno? Musel byste reverse-engineerovat velký kus microsoftích blobů.

    > a hlavně by ji bylo možné takhle jednoduše vypnout.

    To půjde asi vždycky…

  • 9. 9. 2015 14:53

    Filip Jirsák
    Stříbrný podporovatel

    Jak snadno?
    Tak snadno, že porovnám odkloněnou komunikaci (jak to udělal autor článku) s neodkloněnou komunikací.

    To půjde asi vždycky…
    Půjde ji vypnout odpojením počítače od internetu. Ale jinak by mohl Microsoft to vypnutí pěkně zkomplikovat, případně zamíchat šmírovací komunikaci mezi takovou komunikaci, která je pro běh systému nutná. Pokud by při zjištění toho, že se uživatel pokouší dostat ke šmírovaným datům, odesílání vypnul – místo toho, aby data jednoduše šifroval – dává tím všem do ruky jednoduchý nástroj, jak odesílání zablokovat.

  • 9. 9. 2015 16:33

    asdasdasdad (neregistrovaný)

    Pokud by při zjištění toho, že se uživatel pokouší dostat ke šmírovaným datům, odesílání vypnul – místo toho, aby data jednoduše šifroval – dává tím všem do ruky jednoduchý nástroj, jak odesílání zablokovat.
    Jednoduchy? Kolko % ludi ma znalosti a prostriedky na to, aby si spravili HTTPS proxy mimo svoj PC a presmerovavali tadial vsetku komunikaciu?
    To chce zvlast PC, hodi sa chytry router (inak sa to da obchadzat). To uz je jednoduchsie na firewalli povolit len zname IP a MS ma problem.

    Alebo jednoduche riesenie. Ak uz mam takuto HTTPS proxy a odchytim tam napriklad nieco bez dostatku HTML tagov, tak to nepreposlem. Ak odchytim nieco velke, tak rovnako.

    Efekt je rovnaky.
    Ak by to chcel Microsoft nejak skryt (nahodne vkladanie tagov), tak sa to da podobne odhalit.

  • 9. 9. 2015 16:42

    Filip Jirsák
    Stříbrný podporovatel

    Vzhledem k tomu, za jak obrovský problém označují domnělé šmírování konspirátoři, je to jednoduché řešení. Navíc se z toho klidně dá udělat instantní řešení – kupte si RPi, nainstalujte si tam tenhle obraz a postupujte podle návodu.

  • 9. 9. 2015 17:12

    asdadasdasd (neregistrovaný)

    RPi je pomale. A treba si aj kupit switch/router, co na nom pobezi nieco schopne presmerovat komunikaciu, co nepusti nic priamo von.

    Kolko ludi na to ma? Vazne je to jednoduche?
    Uz podla otazok pod clankom myslim, ze by to vacsina ludi nezvladla.

  • 9. 9. 2015 19:10

    j (neregistrovaný)

    Boze jirsak, ty ses fakt tupec ... zablokovat komunikaci na externim firewallu pujde vzdy, a M$ stim nic nenadela. Co by ale nadelat moh, je to, aby ta komunikace pri naruseni bezpecnosti (= podvrzeny certifikat) nebyla videt, a tudiz se neda nijak snadno zjistit, co se vlastne posila.

    Presne stejne, jako nerespektuje hosts/dns. Coz je samo o sobe doslova na nakopani prdeli.

    Jasne, muzes dekompilovat binarky widli, a zkoumat, co ze to delat muze.

    BTW: Jirsak, cet si smlouvu kterou si podepsal bance? Vis ze je tvoji povinosti overit, ze certifikat je platny a podepsany spravnou autoritou? Vis, ze se v opacnym pripade banka zrika odpovednosti?

  • 9. 9. 2015 18:43

    palo (neregistrovaný)

    ako som pisal vyssie, v MS nepracuju idioti, aby pripadne citlive data posielali tak aby boli lahko detekovatelne.
    konspiracnik odmieta vsetko. test v clanku tu ale neodmieta nikto, iba sa poukazuje na mozne medzery.

  • 9. 9. 2015 18:55

    Filip Jirsák
    Stříbrný podporovatel

    ako som pisal vyssie, v MS nepracuju idioti, aby pripadne citlive data posielali tak aby boli lahko detekovatelne.
    To pak ale vede přesně na to, co jsem psal jinde - to, že nikdo seriózně žádná citlivá data nezachytil, je pro konspirátory důkaz toho,že spiknutí existuje, a spiklenci to dělají tak mazaně, že to nikdo neodhalil.

  • 9. 9. 2015 22:00

    palo (neregistrovaný)

    daj tomu par rokov.. ak si za ten cas nikto nic nevsimne, ms pravdepodobne nic neposiela.

  • 12. 9. 2015 23:02

    snehuliak (neregistrovaný)

    Clanok je dobry a prezentuje fakty. Problem je v tom ze WIN10 sa moze uplne inak spravat v Ceskej Republike, v Britanii alebo v Amerike...
    MS moze dodrzovat miestne zakony a je dost mozne ze Cesko (ani Slovensko) nie je krajina zaujimava na odber dat kedze nekomunikujeme po Anglicky.
    Vsetko ku nam dochadza opozdene - naprkiklad kupovanie aplikacii v Google Play atd a tak si dovolim spekulovat - mozno aj smirovanie prichadza neskoro... ;)