Jsem členem security response týmu jednoho většího open-source projektu a také jednoho enterprise produktu a mohu zodpovědně prohlásit, že vaše odkazy jsou střelou do prázdna. Počet CVE je zcela irelevantní, protože _všechny_ _důležité_ bezpečnostní chyby jsou v upstreamu opraveny. Většina CVE jsou mimochodem složitě napadnutelné chyby, těch opravdu závažných je za rok málo. A opravují se i ty.
Ty závažné se objevují v updatech platformy. Google nemůže za to, že výrobci na uživatele kašlou a bugfixy nedělají. Pracuje se na lepším oddělení spodní vrstvy Androidu, ale je to běh na dlouhou trať. Zákazník má možnost volby, vždyť o tom je i ten článek! Jsem ten poslední, kdo by Google hájil, ale jistá otevřenost platformy Android a možnost velkého výběru hardwaru i softwaru je mi sympatická, rozhodně víc než uzavřený iOS. Mám jak Android tak iPhone, jak Windows tak i Linux a macOS a mohu porovnávat.
Ty informace jsou nic neříkající, což evidentně vůbec nechápete, proto je odkazujete pořád dokola, kdokoli přijde na přetřes téma Androidu. Počet objevených a ohlášených o bezpečnosti nevypovídá vůbec nic. Daleko důležitější je počet objevených, ale neopravených chyb. Kromě toho, v případě Microsoftu a Applu není vyjímkou, že chyba je označena jako záplatovaná, přestože opravena vůbec nebyla (klidně i několik dalších let).
Pokud máte přístup k Secunia Advisories, doporučuji si vylistovat vaše oblíbené produkty. Pravděpodobně přijdete o všehny vaše iluze. A ano, Adroid z Asie (včetně ťamťungu) nemá zrovna excelentní podporu. To ale není chyba Adroidu, ať už Android One nebo AOSP.
> Closed source model většinou nezveřejňuje exploit před tím, než byla vydána oprava, respektive se o to snaží. Pak už jde takřka o hodiny, než útočník prozkoumá rozdíl v opraveném kódu a podle toho vytvoří exploit na nezabezpečený systém. Proto je podpora včasné aktualizace tak důležitá a potvrzuje, že to výrobce myslí vážně. A jaké šance má open source?
K těm hodinám - zhruba jednou do měsíce pracuji na vážnější bezpečnostní chybě, některé se opravují pár dní, jiné několik měsíců od ohlášení. Po tu dobu je hlášení, pokud je postup nálezce správný, pod informačním embargem. V případě SPECTRE/Meltdown to bylo _sedum_ měsíců od nahlášení, chyba byla provalena dříve, než se plánovalo.
Prosím nevycházejte při svých diskusích z falešné doměnky, že projekty open-source mají veřejný zdrojový kód, tudiž útočníci mají hodiny/dny/roky na prostudování a "zaútočení" na své cíle. Kdežto Windows nebo macOS jsou closed-source, takže ve větším "bezpečí". Takhle to prostě nefunguje, firmy jako Red Hat, IBM, Intel, SUSE, Canonical, Oracle spolupracují na odstranění bezpečnostních chyb v Linuxu a jiných open-source programech a jejich zákazníci mají záplaty koordinovaně připravené _v den ohlášení chyby_! V ten samý den jde záplata obvykle do upstreamu a linuxové distribuce co jsou zdarma na to reagují v řádech hodin/dnů. V případě velmi vážných bezpečnostních chyb jsou vybraní zástupci neplacených linuxových distribucí notifikování předem a o chybě ví dopředu. Je zde velmi dobrá koordinace, profesionalita a spolupráce napříč obory, to mohu z vlastní zkušenosti potvrdit.
Jaké šance má open-source na opravu? Nejen stejné, ale lepší. Kvalita open source kódu byla v mnoha auditech a zprávách shledána jako lepší, než u uzavřeného softwaru. Nezlobte se na mě, ale žijete v bludu. Myslet si že nezveřejněním zdrojového kódu se software stává bezpečnější není nic jiného.
Mimochodem, macOS má jádro open-source (projekt Darwin). Ale to stejnak moc lidí nepoužívá, není to moc relevantní. Studovat kód jádra macOSu ale může kdokoliv. Včetně analýzy commitů bezpečnostních chyb.
> Pokud tedy většina chyb má přidelené CVE jen u open-source projektů, proč má stále Android výrazně větší počet než Linux?
Tohle rád vysvětlím, pojmem Linux se označuje jádro operačního systému, dnes se jedná o velmi rozsáhlý projekt. Linux běží od telefonů po superpočítače, pokud je vydána CVE na Linux, nemusí být nutně relevantní pro Android (např. ovladač SCSI není pravděpodobně v Androidu vůbec použit) a naopak.
Android je v podstatě Linux (jádro) + velké množství aplikací. Google nepoužil programy, které se běžně dávají do linuxových distribucí taktéž známé pod pojmem GNU (projekt GNU), ale využil aplikace licencované pod BSD. Je to kolekce _mnoha_ aplikací a příkazů. Nad tím je Android core stack, Dalvik (tzn. vlastní "java"), API a aplikace.
Android má více CVE proto, že se jedná o chyby ve všech těchto komponentách.
> Pak je tam další rozdíl a to je závažnost těch chyb, kde u Androidu počet těch kde lze spustit nežádoucí kód za rok 2017 strmě vzrostl ze 73 na 206.
Hodně lidí se rádo ohání pojmem "arbitrary code execution", ale je nutné si uvědomit kontext. Pakliže se jedná o chybu v nějaké systémové knihovně nebo programu, na který nemá uživatel bez roota nebo aplikace přímo přístup, je to sice bezpečnostní chyba která by měla být opravena (a ona taky je), ale attack vektor může být nulový. Jinýmy slovy, napadnutelnost není možná (tj. pouze za předpokladu lokálního přístupu - shellu, případně roota atd). I taková chyba má přiděleno CVE.
Android má od verze tuším 5.0 zapnutý SELinux, což je v podstatě sandbox pro aplikace. Dá se tím velmi snadno a efektivně zvýšit úroveň zabezpečení. Spravuji SELinux politiky našeho projektu i produktu a podporu vidím jako velké plus.
> Je to prostě odpad, nic horšího tu v historii zatím nebylo.
Android je velmi dobře navržený OS, má pěkné API a dobře se pro něj programuje, uživatelé jsou schopni jej dobře pochopit i ovládat, má "run everywhere" runtime, podporuje některé pokročilé funkce pro zabezpečení systému (SELinux) a je úspěšný.
Nadruhou stranu je to velmi otevřená platforma, uživatel má možnost si nainstalovat i nežádoucí aplikace. Takto se šíří škodlivý software. S tím nejde nic moc dělat, většina malwaru se šíří blbostí uživatelů, CVE nebo obecně počty bezpečnostních problémů s tím nemá co dělat.
Pokud si mám vybrat otevřenou platformu s možností stáhnutí nějakého toho malware když si nedám pozor a naprosto uzavřený svět Apple kdy firma peskuje firmy za to, že v aplikacích mají cokoli se jim nelíbí - beru všema ANDROID.
P2010 je znamy svou bezbrehou adoraci MS. Nejen, ze je MS spam pod kazdym clankem o Androidu. Ono uz se to objevuje i pod clanky tykajici se bezpecnosti (treba bankovni aplikace).
Neustale posila tyto dva odkazy, ktere, jak snad uz pochopi, jsou naprosto irelevantni. Ale tak hlavne ze ma MS mensi cislo, i kdyz znamena naprosto neco jineho :)
Chapu ze vira cloveka se da zmenit jen hodne tezko, ale tak jednou to zkusim.
napr. lzap napsal "Firmy Microsoft a Apple jsou známé tím, že vydávají bezpečnostní aktualizace bez přidělených CVE, pakliže na ně neupozornila třetí strana. Android je z drtivé většiny open-source a tam se CVE přiděluje téměř vždy. Ta čísla jsou neporovnatelná."
O tomto se pise treba zde, ale je to pomerne znama vec https://www.bleepingcomputer.com/news/security/nearly-8-000-security-flaws-did-not-receive-a-cve-id-in-2017/
Takze proste porovnavate neporovnatelne a to je treba jeden z duvodu proc si myslite ze se ridite fakty, ale spise to jsou dojmy (prani otcem myslenky).
Vyzkoušel jsem odinstalaci Hudby Play na XZ1 a Pixelu C, jde normálně zakázat, takže vám zmizí ze všech nabídek, odinstalují se updaty, aplikace se vypne a přestane alokovat jakékoli systémové prostředky. Uvidíte se s ní buď po její aktivaci nebo po obnovení továrního nastavení. Bežně mám ve svém telefonu zakázané aplikace, které nepoužívám.
Pokud nejde aplikace zakázat, je problém na straně Samsungu, protože autor ROM určuje, které aplikace půjdou zakázat a které ne. Zrovna Samsung je proslulý instalací tun bloatware, kterého se nedá zbavit.
Hovořím o API, nikoliv o programovacím jazyku. To jsou dvě diametrálně odlišné věci. Můžete mít skvělý jazyk a špatné API a naopak.
Android navíc neobsahuje žádný jazyk, Dalvik je JIT kompilátor, vstupem pro něj je bytecode nikoliv Java. A programovat Android UI aplikace lze navíc v čemkoliv JVM kompatibilním, backend v čemkoliv co běží na x86/arm Linuxu. Ten bytecode vytvoří Android SDK.
Vidím, že nerozlišujete elementární pojmy a vše je pro vás guláš. Tohle fakt nemá cenu...
Kdyz to chcete porovnavat zrovna s Linuxem, tak i Vas odkaz ukazuje, ze Linux ma zhruba 1.7x vic CVE nez Windows 10. Coz vice mene potvrzuje domenku, ze u open source projektu je casteji pridelene CVE.
Spolu s ostatnimi vecmi co rikali predrecnici, proste vychazi, ze porovnavate neporovnatelne.
Vase prispevky proste pusobi jako hate na android. Napriklad iOS (closed source) ma pocet CVE trochu mensi nez linux, ale o zhruba 1.5x vetsi nez windows 10. A pritom na iOS tolik nenadavate.
Můžete, buď si koupíte zařízení od Amazonu, které ja vázané na ekosystém Amazonu, nebo čínské produkty s originální ROM, kde o aplikace od Google ani nezavadíte. Nebo si můžete aplikaci Play Store na telefonu zakázat (mě to na Xperii XZ1 tuto možnost nabízí) a nainstalovat si jako store třeba F-Droid.
Na druhou stranu, argumentovat tím, že Java je horší jazyk než C# není sice tak relevantní pod tímto článkem, ale obecně musím souhlasit. Pracoval jsem jak v Javě (1.0-5.0), tak i v C# (.NET 1.0 - 3.5) a už od prvních verzí C# bylo jasné, že se jedná o fantastickou platformu. Troufám si tvrdit, že C# i .NET je to nejlepší, co kdy Microsoft vytvořil. Poučil se z mnoha svých chyb i chyb Javy a nebáli se riskovat a investovat spoustu peněz. A že bylo z čeho čerpat (Win32 API, OLE, MFC - do teďka je mi z těchto srágor blivno).
Mimochodem aplikace pro Android lze psát i v C#, C/C++, Golangu a mnoha jiných jazycích...
Dejme tomu že MFC je ok, ještě mi ale vlasy vstávají při myšlence na ActiveX, matně si pamatuji že byly všude UUID stringy. Ale je pravda že JS/ES6/Electron to je panečku teprve maso. A bude hůř, každý rok se prý počet programátorů (resp. coderů) zdvojnásobí pokud si to dobře pamatuji z přednášky Strejdy-C - https://www.youtube.com/watch?v=ecIWPzGEbFc
Xamarin je už dlouho takový polotovar, na druhou hodně investují třeba to bude lepší. Jsem moc rád, že to MS koupil, jinak by to furt tlačili do Linuxu (Gnome), nyní už je pokoj. Osobně se mi nejvíc líbí Golang, psal jsem jeden menší projekt a byla to radost - vše je jednoduché a hlavně dobře čitelné.
Úředníci v EU si vůbec neuvědomují proč Google v Androidu má ty přednastavitelné aplikace. A dokonce i je používá jako systémovou aplikaci která nejde odinstalovat.
Je to proboha k tomu že lidi když resetují mobil tak přes ty aplikace znovu mohou uvést svůj mobil do nastavení které používali před jeho resetem. A ano nejdůležitější apkou je googl play, protože z něho nainstalujete většinu aplikací které chcete používat na svém mobilu.
Pokud do licence napíšete "budete vydávat bezpečnostní aktualizace po dobu 5ti let" tak to hodně výrobců odradí. Navíc je to tězce uchopitelné, co je a není bezpečnostní aktualizace? Spíše než v licenční rovině by to mělo být v rovině technické, to by mohlo výrobce více motivovat. A na tom se pracuje, bohužel to přišlo dost pozdě a zatím je to spíše vlažné: https://www.mobilmania.cz/clanky/projekt-treble-po-roce-rychlejsi-aktualizace-zatim-neprichazi-zlepsi-to-az-android-p/sc-3-a-1341726/default.aspx
Co myslíte, byli by geronti v Komisi spokojeni, kdyby Google s Androidem přešel na obchodní model Apple? Tedy zaříznutí VŠECH ostatních výrobců, protože by si Android nechal pro sebe, zavedení možnosti používat POUZE vlastní prohlížeč a vyhledávač (viz prohlížeče na iOS mohou být alternativní, pokud se jedná pouze o změnu ksichtu ale uvnitř je povoleno pouze Safari), a zejména na model že pokud se nějaká aplikace nezávislého vývojáře ukáže užitečná, funkčnost okopíruje, zahrne do budoucího updatu, a původního tvůrce odřízne od peněz a aplikaci mu smaže, protože "duplikuje funkčnost systému", načež mu při protestu dá výstrahu před zrušením účtu a případně ho s AppStoru vykopne úplně?
Taky by to znamenalo, že budou k dispozici telefony výhradně vyráběné Googlem nebo pro něj pod jeho značkou, a celkem asi 4 modely. Za 4 až 20tinásobnou cenu proti dnešku.
Podle mě by to bylo optimální řešení a všichni by byli happy.
Dle mého názoru úředníci zbrusele nevěděli doteď co ten Android je a neví to pořádně ani doteď. Celé to bude podle mě jen lobbing výrobců software a hardware který chtějí využít antimonopolního řízení k tomu aby se na zádech Google dostaly k prodejům a ziskům,. které jinak nedají.
Už při minulé zmínce o žalobě Yandexu kterou údajně pro dobro zákazníku podniknul proti Google bylo jasný že Yandex phone bude stejně proti Samsungu, Nexusu, iPhonu a jiným telefonům které jsou nepsaným etalonem prostě looser phone.
Uvědomme si že na světe je víc lidí co si vystačí s předinstalovaným software než těch co si telefon rootnou. Takže pokud mu prodáte telefon se svým prohlížečem je vetší šance že ho bude používat furt .
Google nemůže za to, že výrobci na uživatele kašlou a bugfixy nedělají
Může, vždyť použití Androidu OEM je licencované. Včasné doručování aktualizací (které dnes splňuje jen zlomek přístrojů, Google pixel bez operátora) mělo být podmíněno právě touto licencí. Ookud se na to OEM vykašle, licenci by navždy ztratil. Jenže král je nahý a Googlu o nic jiného než zobrazování jeho reklam (= 99% všech příjmů) nejde.
Přesně pro Vás to EU dělá.
A tak tu zlotřilou aplikaci Google o velikosti cca 40MB tam mít nebude. A výrobce telefonu jí nahradí nějakou krásnou barevnou uber super hyper ultra aplikací od 鸭汤 o velikosti 130MB. Která aby Vám nic neušlo bude zobrazovat roztomilé reklamní proužky. A aby jste sní náhodou nic neudělal tak nepůjde odinstalovat.
No nebude to krásné ještěže ten Google potrestali že?
Však také na vývoj C# koupili kdysi toho správného člověka :-)
Náhodou MFC bylo ještě ok (každé MDI okno mohlo běžet ve vlastním threadu), blivno je mi z těch všech Electronů, co vrací vývoj někam na úroveň Windows 3.1 a kooperativního multitaskingu :-/
Pokud myslíte Xamarin, tak to lze bohužel jen částečně.
Kromě toho, v případě Microsoftu a Applu není vyjímkou, že chyba je označena jako záplatovaná, přestože opravena vůbec nebyla (klidně i několik dalších let)
Konktrétně? Tohle se přece děje hlavně opět u Androidu, Někteří výrobci včetně Samsungu lžou o aktualizacích Androidu. Zůstávají nezabezpečené.
Jsou případy, kdy chyba byla opravena nedokonale nebo ještě hůře, umožnila další útok (Meltdown/Specte na Windows 7), to samozřejmě ano. Nikdy jsem netvrdil že přístup Microsoftu (a už vůbec ne Applu) je dokonalý, jen že je stále výrazně důvěryhodnější než u Androidu, kterému se například banky nezdráhají svěřit citlivé údaje pro platební transakce, ačkoli ten systém evidentně není možno zabezpečit ani řádně aktualizovat.
Closed source model většinou nezveřejňuje exploit před tím, než byla vydána oprava, respektive se o to snaží. Pak už jde takřka o hodiny, než útočník prozkoumá rozdíl v opraveném kódu a podle toho vytvoří exploit na nezabezpečený systém. Proto je podpora včasné aktualizace tak důležitá a potvrzuje, že to výrobce myslí vážně. A jaké šance má open source?
Nemá, pokud byste věcem rozuměl tak víte, že JVM totiž generické typy vůbec nepodporuje :-) Generika v Javě jsou pouze na úrovni překladače jazyka (což Google asi neví), na úrovni bytecode je JVM už nezná. Narozdíl od vyspělejších managed platforem jako CLR, kde jsou generické typy přímo na úrovni MSIL.
Pod pojmem dobře navržené API si představuji takové, co je zpětně kompatibilní. Pokud vezmete Windows aplikaci psanou před 15 lety pro Windows XP, je stále kompatibilní s aktulání verzí Windows API na Windows 10. Pokud vezmu aplikaci psanou pro .NET 1.0, stále poběží na 4.7. Pokud vezmu aplikaci psanou pro Android 2.0 .... asi víte :-)
Vždy jsme tvrdili, že s velikostí přichází odpovědnost
Ano, nejstrašnější přístup k bezpečnosti v dějinách IT je opravdu důkazem odpovědnosti. Jediné o co vždy půjde v Androidu je zobrazování Google reklam, vše ostatní je nepodstatné.
https://twitter.com/SecX13/status/968225118517452800
https://www.cvedetails.com/top-50-products.php?year=2017
Z vašeho odkazu, cituji: The reasons are plenty, but one of them is the explosion of security bugs in IoT devices, which has made it harder for Mitre and NVD staffs to keep up with all the bugs.. O tom řeč není.
Pokud tedy většina chyb má přidelené CVE jen u open-source projektů, proč má stále Android výrazně větší počet než Linux? Pak je tam další rozdíl a to je závažnost těch chyb, kde u Androidu počet těch kde lze spustit nežádoucí kód za rok 2017 strmě vzrostl ze 73 na 206. Když k tomu opět přičteme to, že více jak 90% Android zařízení neobrdží potřebné aktualizace včas (do 24 hodin), některé nikdy, tak nechápu čím dalším se snažíte argumentovat. Je to prostě odpad, nic horšího tu v historii zatím nebylo.
Ano, protože to spolu spouvisí. Zatímco posílám "neustále" tyto odkazy kde jsou relevantní informace, jiní se je snaží zpochybnit pouhým žvaněním bez dalších podkladů.
Relevantní je, že v případě opravy je tato doručena okamžitě na všechna Windows a Apple zařízení, zatímco prakticky na žádné Android. A je to opět chyba Google, viz můj příspěvek výše.