Ani tak by mi to nepřipadlo moc etické. Pro takový výzkum mohli vzít chyby dávno minulé a pouze dohledat, co se dělo, jestli problém mohl být systematický a jestli došlo případně k nějaké nápravě.
Tímto spíš otestovali "schopnosti" jednotlivých lidí a jak víme, tak ne každý odhalí všechno. Co se pak divit, že jsou dotyční i naštvaní. Celkem drzost. Z tohoto pohledu prostě testovali integritu a vůbec pozici konkrétních lidí.
26. 4. 2021, 16:01 editováno autorem komentáře
Ano, proces vývoje linuxového jádra má závažnou chybu spočívající v tom, že se do jádra může dostat i chybný kód. To se nikde jinde neděje, veškerý ostatní software je bezchybný.
Bohapustá demagogie. Chyby se vyskytovat mohou, ale každý vývoj podle možností dbá na to, aby se tam nedostávaly hloupé, natož záměrné chyby. Otevřený vývoj má hendikep v neexistenci pevných (pracovně)právních vztahů, které v komerčním vývoji patři mezi jeden ze způsobů ochrany. O tom, jestli a jak se dá tento hendikep kompenzovat, se příliš nemluví.
Možnosti ale jistě jsou. Ban univerzity je jedním z takových opatření (demotivovat další od takových pokusů). Hloupé na tom je snad jen to, že příště pracovník může konat na vlastní pěst (unverzita nebude mít možnost to ovlivnit), a hloupé je i to, že to přidá zátěži a strachu tam, kde opravdový problém ve skutečnosti není, zatímco opravdových hrozeb se to netýká.
Záměrná chyba je pravý opak hloupé chyby. Klíčové je to „podle možností“. V případě záměrných chyb jsou ty možnosti velmi omezené. Jak správně píšete dál, ty možnosti leží prakticky jen mimo samotný vývoj – je to smlouva, na základě které programátor dostává odměnu a může být potrestán.
O tom, jestli a jak se dá tento hendikep kompenzovat, se příliš nemluví.
Ono se toho o slovu „nedá“ moc nedá namluvit.
příště pracovník může konat na vlastní pěst
Může, ale proč by to dělal. Vědeckou práci z toho nevyvaří…
O tom, jestli a jak se dá tento hendikep kompenzovat, se příliš nemluví.
Ono se toho o slovu „nedá“ moc nedá namluvit.
Jenže ono se dá. Dá se hovořit např. systému budování reputace, ať už individuální, nebo třeba pro celou organizaci. Jinak se může vyvíjet reputace v akademickém prostředí, jinak od přispěvatelů z korporátu, jinak od solitérů. Podle toho - například - může být stanovený řetězec kontrolních mechanismů.
Určitě tu prostor je. Nevím, jestli jsou i prostředky, ale tipuji, že existují sponzoři, které by to zajímat mohlo.
Nesouhlasím s tím, že se nedá nic dělat.
Ano, je mnoho způsobů, jak zabít opensource projekt.
Zrovna Linux je vnímán jako projekt, do kterého je obtížné začít přispívat – proto se vyvíjí různé aktivity, aby se nováčkům vstup usnadnil a aby k tomu byli motivováni. Mimo jiné proto, že opravování chyb v OSS je založené právě na tom, že čím víc lidí se kódem zabývá, tím větší šance, že někdo chybu najde a že ji opraví. Váš návrh dělat to přesně opačně, házet nováčkům klacky pod nohy a vývoj otevřeného softwaru co nejvíc uzavřít je vskutku inovativní.
Nevím, jestli jsou i prostředky, ale tipuji, že existují sponzoři, které by to zajímat mohlo.
Sponzoři, které to zajímá, chápou, jak funguje vývoj. Takže se nedozvěděli nic nového.
Nesouhlasím s tím, že se nedá nic dělat.
Nedá se dělat o moc víc, než už se dělá. Protože k tomu není motivace. Není důvod k nějaké velké změně – neobjevil se žádný nový velký sponzor, nezjistilo se nic nového.
27. 4. 2021, 12:55 editováno autorem komentáře
Ano, je mnoho způsobů, jak zabít opensource projekt.
Filipe, kdyby se jednou dostal a třeba delší dobu byl chybný kód v jádře, záměrně a zneužitelný, tak by to byl pro Linux ještě daleko větší problém.
Zrovna Linux je vnímán jako projekt, do kterého je obtížné začít přispívat – proto se vyvíjí různé aktivity, aby se nováčkům vstup usnadnil a aby k tomu byli motivováni.
Ano, najít rovnováhu musí být složité, nepopírám. Ale stále hovoříme o rovnováze mezi jednoduchostí vstupu, bezpečností a stabilitou. Jistě se můžeme lišit v názoru, kde by mělo ležet těžiště.
Celá tato diskuse není pře o tom, kde má být. Nevhodná mi přijde hysterická reakce. Jestli je volnost přispívání nastavena takto záměrně, pak by se s ní mělo pracovat a přijmout i její nevýhody. Mezi nevýhody patří to, že někdo může provést takovýto experiment, což je projev stejné nevýhody jako to, že do kódu někdo může přispět chybou a stejně tak může někdo něco propašovat záměrně škodlivého. Toho, kdo to udělá úmyslně, nijak potrestat nedokážeme - bude si z toho dělat akorát dlouhý nos. Tak potrestáme toho, kdo se ještě v rámci slušné společnosti neskrývá, nevyhýbá.
Jestli je etické/neetické, morální/nemorální provést takový experiment v rámci daných pravidel, bude asi každý posuzovat sám. Pravomoc konat má hlavní vývojový tým. To, co udělali jako reakci, je morálně přinejmenším stejně pochybné. Nereflektuje to dané zabezpečení projektu (Vy tvrdíte, že je to nastavené správně - nebudu se tedy přít), a mstí se na někom, kdo opravdu žádnou škodu nespáchal a ani nechtěl.
Chybný kód v jádře je, i zneužitelný. Jestli se tam ta chyba dostala záměrně nebo omylem je skoro jedno. Ta současná rovnováha se hledala mnoho let. V poslední době se nestalo nic, co by tuhle rovnováhu nějak ovlivnilo. Nicméně tahle rovnováha nijak neřeší chyby v aplikaci. Chyby v aplikaci nemůžete řešit na základě toho, kdo přispívá. Chyby mají jediné řešení – musíte je umět najít a opravit.
Já žádnou hysterickou reakci nevidím. Vidím, že ti studenti udělali blbost, jako blbost to bylo označeno a univerzitě byl zaslán dopis s návrhem, co má udělat, aby se něco takového už neopakovalo.
Tak potrestáme toho, kdo se ještě v rámci slušné společnosti neskrývá, nevyhýbá.
Vždyť se ti studenti vymlouvají jak malí kluci.
To, co udělali jako reakci, je morálně přinejmenším stejně pochybné.
Co je na tom pochybného?
Nereflektuje to dané zabezpečení projektu
Jak to, že ne?
mstí se na někom, kdo opravdu žádnou škodu nespáchal a ani nechtěl.
Nikdo se nemstí. Ukázalo se, že univerzita má problémy s pravidly (nebo jejich dodržováním) výzkumu, tak se po nich chce, aby to napravili.
Ukázalo se, že univerzita má problémy s pravidly (nebo jejich dodržováním) výzkumu, tak se po nich chce, aby to napravili.
Upozornit je na místě. Univerzita by se tím pravděpodobně zabývala i bez banu. Problematický je ten ban. Univerzitu zabolí, a mnoho dalších lidí docela nespravedlivě. Zatímco tu samou páku na opravdového zloducha nemáte, nezabolí ho. Ta bolest pro tu univerzitu je daná právě tím, že se kromě excesů chovají civilizovaně a odpovědně.
Asi mě nepřesvědčíte o správnosti postupu, který trestá celkově odpovědnou instituci za exces, zatímco zůstává prostor a bez páky pro neodpovědné, kteří by mohli škodit systematicky. Je v tom nepoměr.
Takže měli vývojáři jádra dál marnit svůj čas bláznivými patchi od té skupiny? Proč? Jak to zabolí univerzitu – je někdo jiný z té univerzity, kdo teď do jádra přispívá? Až univerzita opraví svoje postupy, ban bude odvolán. Nevím, s čím to chcete srovnávat, ale na té univerzitě působila skupina studentů, která systematicky škodila vývojářům linuxového jádra. Proč ty škodiče pořád tak bráníte?
@Filip Jirsák
Proč ty škodiče pořád tak bráníte?
Za prvé si myslím, že se škodič chová přeci jen jinak. Možná někomu přidělali práci a taky možná někomu výstup z jejich práce pomůže. Možná je to unfair k těm, kterým přidělali práci, ale otevřený vývoj takové myšlenky obecně připouští.
Za druhé, univerzita nejsou kasárna a nemají žádného velitele, který by druhý den ráno při apelu rozdal kasárníky a špangle. Je zřejmé, že po dokončení experimentu (ať už byl, či nebyl etický), žádné další pokračování ve vadných commitech nehrozilo. Minnesotská univerzita od té chvíle začala být znovu stejně bezpečná, jako každá jiná univerzita. Vést s univerzitou diskusi o etičnosti výzkumu se dalo i bez banu.
Proto ban považuji za mstu či exemplární příklad. Pokud je to msta, tak je to infantilní, protože se mstí na prostředí, kde žádné systematické riziko nehrozí, zatímco systematická rizika se dál neřeší. Pokud to má být exemplární příklad, tak opět bude odstrašovat ty, kteří na dalších univerzitách ve světě přispívají dobrovolně a v rámci svých projektů. Jako exemplární příklad to nepůsobí na ty, kteří by mohli představovat hrozbu opravdovou.
Doktor Mengele ty děti zabíjel také kvůli svému výzkumu! A ještě by mohl namítat, že jeho výsledky byly pro medicínu mnohem užitečnější než tohle "odhalení" pro IT.
Správný postup by byl, kdyby po prvním úspěšném propašování chyby událost oznámili, třeba rovnou Gregovi, a svůj kód označili aby šel ihned odstranit. Tak by se dala provést méně hysterická opatření. Jenže co udělali...?
@Radovan .
Správný postup je až druhotná otázka na kterou by nedošlo, kdyby si odpověděli na tu první. To, že žádný člověk nedokáže všechno odhalit na 100% je předem jasné a že nemáme magický testovací nástroj víme taky.
Takto se jenom navezli do konkrétních lidí. Toto bych si nedovolil ani ke svým kolegům, se kterými dělám denně už roky a celkem dobře se známe. Když už, tak maximálně jako vtípek a ani to ne, ne tak ještě z toho dělat nějaké veřejné "potupné" závěry.
A to je podle mě celý ten problém. Pak by i ten správný postup byl jiný
@Radovan .
Jako jo, jasné. Na druhou stranu někomu něco nabourávat pro srandu není zas taková sranda. Představte si třeba chodit po paneláku a zkoušet si lockpicking na cizích dveřích ... neřekl bych, že je to v pořádku.
Ano ano, vím, odhalená chyba a služba, ale pro začátek, nikdo se tady dobráka neprosil. Něco jiného by bylo kdyby pouze z venku viděl, že se něco děje a upozornil, to je podle mě v pořádku. Něco jako na parkovišti: "pardon, zapoměl jste u řidiče zatáhnout okýnko ..."
Tak jo, ale bylo to trochu jinak:
1) oni opravili jednu chybu (která sama o sobě nešla zneužít)
2) oprava ale vytvořila podmínku pro zneužití jiné takové chyby.
3) jakmile dostali souhlasné posouzení, stopli to - takže žádná jejich aktivovaná chyba se nikam nedostala.
Dokázali, že takto lze chyby vpašovat a za to má celá univerzita ban.
No a ti, co tam ty chyby chtějí vpašovat, to můžou dělat vesele dál.
Zdá se, že Kroah-Hartman se urazil a hodlá nad touto bábovičkou ještě dlouho trucovat.
Výsledek ovšem může být kontraproduktivní: ti hoši nejsou žádná béčka a když budou exkomunikovaní, někde se uplatní. Možná se nám nebude líbit, kde - a pokud vás napadá NSA, tak to zdaleka není nejhorší možnost.
Kdyby se žádná jejich chyba nikam nedostala, nebylo by potřeba jejich příspěvky odstraňovat.
Celá univerzita nemá ban za to, že dokázali něco, co všichni vědí. Mají ho za to, že asi v jejich etických standardech chybí jinak samozřejmá věc – že nebudou během svých výzkumů nikoho poškozovat, aniž by k tomu měli předem souhlas.
No já nevím, jestli to všichni vědí. Že je to security through history.
Možná spíš je to tak, že to vědí ti, kdo se o to víc zajímají a všichni dělají, jako že kód podléhá dostatečné kontrole.
Tak se to aspoň prezentuje: v Linuxu víte, co tam je a můžete si to zkontrolovat, u proprietárního systému nevíte. No ale kdo to může zkontrolovat, když vstupní kontrola je zjevně nedostatečná a celek není v lidských silách zkontrolovat.
Předem souhlas?
Nevím, kdo z vás byl na vojně, ale tam byla taky cvičení, že večer se vědělo, že v 5:00 bude bojový poplach - tak všichni byli ve spacácích v maskáčích a polní sbalená a všechno proběhlo hladce a skončilo se tím, že se nastartovala auta (v -20 to zase nebylo úplně samozřejmé).
No a pak jednou pískli ten poplach naostro, bez varování, a se vším všudy, včetně vyvezení skladu roty do záložního prostoru.
Rozdíl byl nebetyčný a výsledek zaváněl průšvihem. Nám ta V3S šla aspoň nastartovat (a zdechla až po cestě zpět). Ovšem to, že záložní prostor (po polomu) byl jako na dlani z německé strany hranice byl hodně velký malér.
Otázka tedy zní: je namístě interdikt UMN a není spíš vhodné začít vážně řešit, co s tím?
No jak by to teda mělo vypadat: suplika z UMN, my zkusíme propašovat chybu do jádra, chytnete ji? Všichni si dají pozor, provedou řádný review a asi to chytnou. To nemusíte ani dělat.
A nebo z jiné strany: představte si, že by se něco podobného stalo Microsoftu nebo Applu. Ostuda jak prase a padaly by tam hlavy. A co by se psalo tady, jéje!
A v Linuxu, bohorovně, "to přece všichni vědí".
Kernel není moje parketa a měl jsem - zjevně mylný - dojem, že se patche pečlivě prověřují, jako by kterýkoli z nich poslal sám Kim-Čong-Un.
Není spíš na místě se začít zabývat nějakým řešením?
26. 4. 2021, 19:13 editováno autorem komentáře
No jak by to teda mělo vypadat: suplika z UMN, my zkusíme propašovat chybu do jádra, chytnete ji? Všichni si dají pozor, provedou řádný review a asi to chytnou. To nemusíte ani dělat.
To, že vy byste to dělal blbě, neznamená, že to jinak než blbě nejde. Například o tom nemusí vědět všichni. Normálně, když se takovéhle akce dělají, je to předem domluvené s někým vysoce postaveným, s kým se také dohodnou pravidla, co se smí a co ne.
A nebo z jiné strany: představte si, že by se něco podobného stalo Microsoftu nebo Applu. Ostuda jak prase a padaly by tam hlavy. A co by se psalo tady, jéje!
A v Linuxu, bohorovně, "to přece všichni vědí".
Tak oni všichni vědí, že bezpečnostní chyby jsou i v softwaru od Microsoftu i Applu. Také všichni vědí, že ta samá chyba, která se stane neúmyslně, se dá vyrobit i úmyslně. Pak už zbývá si to jen spojit – což už asi všichni nedokážou – a uvědomit si, že bezpečnostní chyby evidentně kontrolou dokážou proklouznout. A je úplně jedno, zda ta chyba byla vytvořena úmyslně, z lemplovstí nebo z neznalosti.
Kernel není moje parketa a měl jsem - zjevně mylný - dojem, že se patche pečlivě prověřují, jako by kterýkoli z nich poslal sám Kim-Čong-Un.
Problém je v tom se. Ono se to samo neudělá. A pokud by em patche tak pečlivě kontrolovaly, odkud by se asi v jádro vzaly ty chyby, které tam jsou?
Není spíš na místě se začít zabývat nějakým řešením?
Kolik vývojářů teda zaplatíte?
@Filip Jirsák
Podsouváte pořád dokola, kolik kdo zaplatí za to, aby se to kontrolovalo. Tak ale téma nestojí. Asi by se dalo očekávat, že proběhne diskuse o tom, jestli, kdy a jak budou přijímány commity, jak by se dalo vyřešit ověřování. Ani nevíme, jestli by to bylo možné, jaké existují překážky, co by to znamenalo pro vývoj (třeba zpomalení), ... A pochopitelně, asi by to i něco stálo - ale vůbec nevíme, jestli by taková částka byla úměrná přínosu, neúměrná, jestli by ji některý z velkých přispěvatelů Linuxu třeba rád nesponzoroval atp.
Jestli má něco proběhnout (nemusí, Linux nepodléhá diktátu proletariátu), tak by to byla otevřená diskuse o tématu. Na Linuxu je závislá velká část světa, klást otázky je na místě. Zesměšňování někoho za názor tím, že se ho zeptáte kolik vývojářů zaplatí je naopak nemístné.
Nepište „ani nevíme“, když to nevíte vy. Před chvílí jste nevěděl ani jak v softwaru vznikají chyby, takže to, že nevíte něco dalšího o vývoji softwaru, neznamená vůbec nic.
Jestli má něco proběhnout (nemusí, Linux nepodléhá diktátu proletariátu), tak by to byla otevřená diskuse o tématu.
Jasně. A když děti v jeslích objeví, že po desítce následují další čísla, jedenáct, dvanáct, dokonce třináct, povede se o tomto objevu také celospolečenská otevřená diskuse.
Na Linuxu je závislá velká část světa, klást otázky je na místě.
Ovšem je poněkud hloupé jako velký objev klást základní otázky, které se v oboru řešily tak před dvaceti lety. Naopak pokud se vám podaří takovými otázkami zahltit veřejný prostor, nejspíš nebude čas a energie pro řešení otázek, které jsou důležité dnes.
Zesměšňování někoho za názor tím, že se ho zeptáte kolik vývojářů zaplatí je naopak nemístné.
Pokud někdo jako velký objev přijde s nějakou trivialitou, kterou všichni vědí, zesměšňuje se sám. A pokud přijde s nápadem, že se to má nějak vyřešit, je otázka, kolik vývojářů zaplatí, zcela na místě. To, že přispěje finančně na vývoj, je totiž ta jediná věc, kterou může dotyčný udělat. Ale jestli si myslí, že má nějaké páky, aby mohl od vývojářů Linuxu něco požadovat, tak ať se do toho směle pustí. Ostatně vy si také klidně otevřeně diskutujte s dalšími lidmi, pro které je překvapením, že software obsahuje chyby. Akorát tou diskusí neotravujte lidi, kteří dělají něco skutečného.
Vědí to všichni, kdo se nad tím zamyslí. Stačí si uvědomit, že všechny ty chyby, které se tam dostaly (doufáme) omylem, by se tam dostaly úplně stejně, i kdyby byly záměrné.
Vstupní kontrola odpovídá tomu, jaké jsou na to prostředky. Klidně můžete zaplatit další vývojáře, kteří budou kód ještě víc kontrolovat.
je namístě interdikt UMN a není spíš vhodné začít vážně řešit, co s tím?
To, že jste vy teď zjistil něco, co vědí všichni, kdo se nad tím zamysleli, není důvod začít to teď řešit. Ale pokud chcete zaplatit nějaké vývojáře, určitě vám nikdo bránit nebude.
Připadá mi, že výsledek je takový, že ti, co se chovají eticky (i když se na to taky názory různí), mají teď nastavená pravidla, aby to už nikdy nezkoušeli, plus malé vychutnání pomsty... Ok, může být.
Asi by bylo na místě ptát se, jaká pravidla byla nastavena pro ty, kteří se skutečně nebudou chtít eticky chovat? Mám totiž pocit, že se s humbukem vyřešil neproblém na to, aby problém zůstal dál latentní.
@Filip Jirsák
To je falešný argument. Za prvé, přímé ohrožení zdraví je něco jiného, než bug v software. Za druhé, zlomená ruka není bez bolesti a bez následků. Tady žádná bolest a žádný následek nebyl a ani být nemohl. Maximálně by se to dalo přirovnat ke skryté kameře a nějakému hloupému žertíku. O to tady taky jde, byla víc uražená ješitnost, než že by to byl problém. A reakce je taková, že se poměrně velkou silou brání tomu, aby ego vývojářů linuxu neutrpělo znovu, než aby se řešila podstata problému. Nějak mi to připomíná uražené soudruhy: nemáme nic proti kritice, když bude konstruktivní (přičemž nekonstruktivní bylo vše, co nešlo jednou jedinou vytyčenou linií).
Ale nechť, mají právo si řídit projekt, jak chtějí. Ostatní mají právo si ho forknout a utvořit vlastní pravidla. Jen si o té reakci myslím své.
Následek být mohl a ještě může. To, že jsou ty commity revertnuté, neznamená, že se někomu někde nemohou objevit. Třeba při git bisect. Fyzickou bolest to sice nezpůsobilo, ale rozhodně to někomu zbytečně přidělalo práci. Kdyby vaším časem někdo plýtval na hlouposti, také by se vám to nelíbilo.
Podstat problému se řeší. Někdo zkoušel amatérsky dělat výzkum v oblasti bezpečnosti, teď se řeší, aby studenti té univerzity příště nedělali výzkum tak amatérsky a dodržovali nějaká základní pravidla výzkumu.
Jak to tak pozoruju, nechtěně spíš upozornili na to, že existuje spousta lidí, kteří používají open-source, a věří na to, že nalepením slovíčka „open-source“ na software se kolem něj vytvoří jakýsi magický štít, který ho chrání před bezpečnostními chybami. Akorát nevím, jak jste si vykládali to, že je každou chvíli oznámena bezpečnostní chyba v nějakém OSS (stejně jako v uzavřeném softwaru). To přece svědčí o tom, že takový magický štít neexistuje…
Tady máte třetího: https://www.root.cz/zpravicky/greg-kroah-hartman-odmitl-omluvu-studentu-minnesotske-university/1066526/
Miroslav Šilhavý v této i předchozí diskusi píše, jaký je to objev. Takže to evidentně nevěděl.
@Filip Jirsák
Já mám pouze radost, že někdo to, "co vědí všichni" dokázal zhmotnit a popsat. To, co (tedy) všichni věděli, ví dál. Nic se nepřihodilo. Propašovaná chyba, která se dál nemohla dostat, taky jako kdyby nebyla.
Vím, že se holt někoho urazilo, že se všichni dozvědí to, co všichni (podle Vás) vědí. Nedá se očekávat, že by někdo potřeboval podobný výzkum vést znovu. Ban na univerzitu je infantilní reakce. Linux je komunitně vyvíjený, ale odpovědnost byla uplatněna kolektivně nesouvisejícím klíčem.
Jsem zvědavý, jak pyšně bude GKH uplatňovat kolektivní vinu, kdyby se ukázalo, že do Linuxu záměrně zanáší chyby nějaká netransparentní instituce, organizace či stát. Zneužívá toho, že commity poslali konkrétní, neanonymní a patrně i obyčejně slušní a vzdělaní lidé. Přesně z nich je potřeba udělat exemplární příklad. Gratuluji k takové odvaze a síle, muselo dát fušku zabanovat univerzitu.
Já mám pouze radost, že někdo to, "co vědí všichni" dokázal zhmotnit a popsat.
Stačilo si pročíst seznam CVE týkající se OSS, případně jen Linuxu.
Nic se nepřihodilo.
Jasně, nic se nestalo, akorát se jejich patche dostaly do stabilního stromu.
Propašovaná chyba, která se dál nemohla dostat, taky jako kdyby nebyla.<úem>
Mohla se dál dostat a ještě pořád může.
Nedá se očekávat, že by někdo potřeboval podobný výzkum vést znovu.
To se nedalo očekávat ani před tím. A přesto ten výzkum někdo provedl.
Ban na univerzitu je infantilní reakce. Linux je komunitně vyvíjený, ale odpovědnost byla uplatněna kolektivně nesouvisejícím klíčem.
Když selhaly mechanismy univerzity, po kom jiném než po univerzitě by měla být požadována náprava? Vy z toho demagogicky děláte, že se uplatňuje princip kolektivní viny. Jenže to, že studenti univerzity v rámci univerzitního výzkumu nedodržují elementární standardy výzkumu je problém univerzity.
Jenže to, že studenti univerzity v rámci univerzitního výzkumu nedodržují elementární standardy výzkumu je problém univerzity.
Tohle je výrok uplatňující kolektivní vinu. A to bych ještě mohl poukázat na to, že fakticky nevíte kdo přesně pochybil, např. zda jim přímo tento způsob akce povolil vedoucí jejich práce či jak moc je vůbec kontroloval, takže fakticky metáte závěry bez znalosti detailů. To není dobré.
27. 4. 2021, 09:28 editováno autorem komentáře
Když mi někdo v rámci práce pro firmu způsobí škodu, tak to budu řešit s tou firmou.
Jenže zde víte, že z UMN přispívají do Linuxu. Jeden experiment byl ohraničený a ve skutečnosti se nic nestalo, a pravděpodobně se ani nic stát nemohlo. Banem odstřihli i ten pozitivní vývoj.
O tom, jestli byl experiment správný či etický se přeci dalo s UMN hovořit i bez banu. Ban bych pochopil jako prostředek k okamžitému odvrácení hrozby, nebo jako prostředek proti dalším škodám. Ani jedno v ten moment nehrozilo.
Jeden experiment byl ohraničený
Pak následoval druhý experiment a teprve během něj následoval ban.
ve skutečnosti se nic nestalo, a pravděpodobně se ani nic stát nemohlo
Stalo.
Ban bych pochopil jako prostředek k okamžitému odvrácení hrozby, nebo jako prostředek proti dalším škodám. Ani jedno v ten moment nehrozilo.
Odkud máte informace, že ten druhý experiment byl ukončen dřív, než došlo k banu?
27. 4. 2021, 18:16 editováno autorem komentáře
@Jiří Havel
Je uplatňována. Na základě akce studentů je automaticky odsouzena daná instituce. Ďábel se skrývá v detailech. To jsou přece dvě různé úrovně.
Ano, budete to řešit nejprve s firmou, ale může se stát, že za to nakonec firma z různých důvodů odpovědná nebude. Tak se na to podívejte jinak: stalo se co se stalo, mohou za to ti dotyční, přes ně univerzita, tu zřizuje město, to je ve státě (který si ho má pohlídat, že?) a to je ve Spojených Státech, takže je za to nakonec odpovědný prezident USA a všech 350 milionů američanů, protože si ho zvolili a trpí ho tam.
Ne, to není správně ...
27. 4. 2021, 19:48 editováno autorem komentáře
Není to tak, že za to „přes ně nějak může univerzita“. Ti studenti tvrdí, že to dělají v rámci univerzitního výzkumu. Ten výzkum se má řídit pravidly univerzity. Buď jsou ta pravidla špatná, nebo nejsou splněna. To všechno jsou problémy, které musí řešit univerzita, ne ti studenti. Navíc není jasné, kdo všechno z univerzity je do toho výzkumu zapojen.
Ten výzkum se má řídit pravidly univerzity. Buď jsou ta pravidla špatná, nebo nejsou splněna. To všechno jsou problémy, které musí řešit univerzita, ne ti studenti.
To jsou kouzelné výklady. O Linuxu tu vysvětlujete, že z podstaty věci se nemůže systematicky bránit škodlivým commitům. Ale rektora univerzity podle všeho považujete za velitele posádky, který musí umět zjednat pořádek u každého v kampusu.
Jen na okraj, ani firmy nejsou (aspoň v Česku) odpovědné za excesivní chování zaměstnanců (za běžné chování v rámci práce však ano). Tuto otázku tedy těžko dokáže kdo posoudit, dokud nerozklíčuje otázky úmyslu, provedení a případnou excesivnost.
Chlape, chce to trochu soudnost. Experiment je pryč, účastníci se omluvili a není pochybnost, že už to nebudou dělat. Ban je zbytečný, už žádný účel neplní. Jednat s univerzitou se přeci dá dál i bez toho.
To jsou kouzelné výklady. O Linuxu tu vysvětlujete, že z podstaty věci se nemůže systematicky bránit škodlivým commitům. Ale rektora univerzity podle všeho považujete za velitele posádky, který musí umět zjednat pořádek u každého v kampusu.
Co vás na tom překvapuje? Co může udělat správce v Linuxu? Nic, nanejvýš může zabanovat jednu e-mailovou adresu. Univerzita má celou škálu možností až po vyhazov.
Chlape, chce to trochu soudnost. Experiment je pryč, účastníci se omluvili a není pochybnost, že už to nebudou dělat. Ban je zbytečný, už žádný účel neplní. Jednat s univerzitou se přeci dá dál i bez toho.
Experiment je pryč díky tomu banu, jinak by pokračovalo zahlcování nesmyslnými patchi. Účastníci se sice omluvili, ale nevysvětlili, co dělali, proč lhali. Vzhledem k tomu, že lhali dříve, nevím, kde berete tu jistotu, že už to dělat nebudou.
Vy se pořád tváříte, že chyba je na obou stranách, nebo dokonce jen na straně Grega Kroah-Harmana. Jenže chyba je na straně studentů a univerzity. Píšete, že ban je zbytečný – ale já nevím o tom, že by se univerzita alespoň omluvila nebo od výzkumu distancovala. Tak netvrďte, že ban je zbytečný a s univerzitou se dá jednat i bez toho, když univerzita zřejmě nebyla schopna alespoň tak elementární věci.
> Na základě akce studentů je automaticky odsouzena daná instituce.
No ano, buď o té akci věděl jejich vedoucí a schválila to etická komise, nebo tam mají totální mrdník. Nejsem si jistý, co je horší.
A jestli řešení problému nedopadne podle představ tak je vždycky možnost ukončit spolupráci. A to se přesně stalo. Jestli je spolupráce s nějakou organizací přínosná nebo ne si musí vždycky rozhodnout vedení daného projektu. Přispívání do nějakého softu není základní lidské právo.
Jestli je spolupráce s nějakou organizací přínosná nebo ne si musí vždycky rozhodnout vedení daného projektu. Přispívání do nějakého softu není základní lidské právo.
To myslím nikdo nezpochybňuje. Navíc má kdokoliv - tedy i UMN - možnost pracovat na vlastním forku Linuxu. Jenže podle všeho je historicky spolupráce UMN přínosná a tak se ta reakce jeví jako zbytečně přehnaná. Taková ješitná, spíš formalisticky pojatá, než snaha o to zhodnotit a vyřešit problém. UMN má smůlu, že je to normální univerzita a dá se na ní vykonat trest. Až jednou propašuje do Linuxu chyby někdo s opravdu zlými úmysly, tak najednou zjistí, že není koho trestat. A to se mi nezdá jako příliš dobře vyvážená spravedlnost.
@Jiří Havel
To už ale spekulujete. Jako pan Jirsák. Vy když jste dělal diplomku nebo nějakou práci, tak jste s každým krokem nebo měřením šel k etické komisi? Zeptám se i jinak, to by měli s každým krokem jít za etickou komisí? A co když ani tak nešli?
Nevíme a proto jsou fabulace o vině univerzity čistě založeny na vnímání kolektivní viny. A velmi silně pochybuji, že ta univerzita nemá v nějakém kodexu něco jako "nesmí způsobit škodu i nehmotnou" a musí dodržovat zásady ... a příkladně reprezentovat ... blá blá ...
S každým krokem? Tohle přece nebyl žádný detail, ale dost podstatná část jejich práce. Pokud o tom nevěděl alespoň vedoucí práce, je opět něco na univerzitě špatně.
Zkuste se na to podívat opačně. Kdyby to samé udělali zaměstnanci nějaké firmy, vystupovali by jako členové nějakého týmu ve firmě. Vy byste to neřešil primárně s tou firmou? Banoval byste jednoho člena týmu po druhém, tak, jak byste je postupně odhaloval?
@Filip Jirsák
Ban celé organizace je na místě jako rychlá reakce na bezprostřední ohrožení a udělal by to každý.
Dokonce ani firma, ve které se zblázní zaměstnanec, Vám nedokáže nijak zaručit, že se to zítra nestane někomu dalšímu, i kdyby měli sebelepší vůli se o to snažit.
Univerzita není vojenská jednotka. Dokonce to není ani firma. Pracovníci konají daleko víc samostatně, bez přímého vedení a bez přímé kontroly.
Ve chvíli, kdy se začne vyjasňovat situace, bylo by spíš na místě se už okolnostmi zabývat.
Aha, takže vy máte k dispozici nějaké další informace, že už na to univerzita zareagovala. Jak konkrétně?
Já tedy vidím jednoznačně, že "útočníci" jsou jasně ohraničení, komunikují a situace se vyjasnila dostatečně na to, aby bylo jasné, že bezprostřední hrozba už je pryč.
Co očekáváte od univerzity? Rektor si všechny svolá na buzerplac, rozdá exemplární tresty a všem ostatním oznámí, ... ...ehm, co jim vlastně oznámí?
Já tedy vidím jednoznačně, že "útočníci" jsou jasně ohraničení
Nějaká skupina výzkumníků na univerzitě, nevíme, kdo do ní patří. To je opravdu „jasné ohraničení“…
komunikují a situace se vyjasnila dostatečně na to, aby bylo jasné, že bezprostřední hrozba už je pryč
Opravdu? Tyhle informace máte odkud?
Co očekáváte od univerzity? Rektor si všechny svolá na buzerplac, rozdá exemplární tresty a všem ostatním oznámí, ... ...ehm, co jim vlastně oznámí?
Univerzita by mohla začít tím, že se omluví. Linux Foundation jí zaslala dopis, tak by univerzita na ten dopis měla reagovat.
Pokud univerzita nemá pravidla zakazující výzkum, při kterém někoho bez jeho předchozího souhlasu poškodíte, měla by taková pravidla zavést. Pokud je má a nedodržují se, měla by tlačit na jejich dodržování.
Pokud univerzita nemá pravidla zakazující výzkum, při kterém někoho bez jeho předchozího souhlasu poškodíte, měla by taková pravidla zavést. Pokud je má a nedodržují se, měla by tlačit na jejich dodržování.
No a tady jsme u toho. Na univerzitách pracují vzdělaní lidé - a ti myslím vnímají situaci i bez toho, aniž by je vyprcal vrchní velitel. Univerzita není Lidl. I kdyby to univerzita řešila, tak nikdo nezaručí, že jiný tým, na jiné univerzitě nebude mít jiný nápad, který se nebude LF líbit.
Jestli chce LF hovořit směrem k výzkumníkům, organizační struktura univerzity to nijak nezlepší. Argumenty mají zaznít a ušima a hlavami projdou.
Ban spíš povede k tomu, že se příště povede výzkum jiným způsobem, a bude se brát ohled i na to, aby to nebylo spojováno se svojí alma mater. Ale nezabrání to ničemu jinému.
Pokud situaci vnímají, tak snad budou schopni LF odpovědět. Jiné univerzity asi mají lepší pravidla pro výzkum.
Už Vám to tu někdo psal. Pravidla pro výzkum nejsou všeobsahující, a všechno neprochází detailním schvalováním. Pokud chtějí odpověď od UMN, určitě ji dostanou, ale bude to víceméně vata. Odpovědnost dál zůstává na vedoucím projektu, jak pro tento, tak i pro příští.
To, že nebudu nikomu škodit bez jeho předchozího souhlasu, je snad jedno ze základních pravidel každého výzkumu.
Trochu trapárna. Kdo chce opravdu škodit, se rozhodně na souhlas ptát nebude. Sporná je i samotná otázka škody, protože se na ní bude muset nalézt konsensus (a věřím, že vůle bude). Konsensus se těžko hledá, pokud je na druhé straně někdo se zatměním.
Takhle se vymlouvaj děti ve školce. „Rozšláp jsem Mařence bábovičku, ale Pepíček jí zase sebral lopatku.“ Bavíme se tu snad o univerzitním výzkumu. Nesrovnávejte prosím univerzitu s bandou záškodníků.
Nevím, co chcete hledat za konsensus na škodě – lidé, kteří se zabývají vývojem jádra, tím museli marnit svůj čas, během kterého mohli dělat něco lepšího. Kdyby nic jiného, už tohle je škoda.
Nevím, co chcete hledat za konsensus na škodě – lidé, kteří se zabývají vývojem jádra, tím museli marnit svůj čas, během kterého mohli dělat něco lepšího. Kdyby nic jiného, už tohle je škoda.
To není tak jednoznačné. Pokud ve svojí práci možná zanedbávám nějaký důležitý faktor, pak je hvizd na píšťalku potřeba. Několikrát jste tu zmínil komerční sféru - tam se toto taky děje. Ale je jen opravdu velmi málo případů, kdy někdo na problém upozorní, aby se vendor rozčíli, či soudil. To už musí být opravdu způsobena významná škoda velkého rozsahu. Komerční vendor by s (deklarovanou) pokorou přijal situaci a snažil by se ji spíš řešit. Pyšná reakce není na místě.
V tomto případě k žádným významným škodám nedošlo. Naprosto okrajový vstup do významu celého Linuxu. Škody, jsou-li jaké, tak hlavně na uražené pýše.
Tak pořád nepište, že k žádným škodám nedošlo, když nakonec připouštíte, že k nim došlo. Přičemž univerzitní výzkum si nemůže dovolit bez předchozího souhlasu páchat jakékoli škody – i ty podle vás nepatrné.
Pokud ve svojí práci možná zanedbávám nějaký důležitý faktor, pak je hvizd na píšťalku potřeba.
Vždyť k tomu došlo – univerzita dostala ban. Celou dobu tady proti tomu protestujete.
Ale je jen opravdu velmi málo případů, kdy někdo na problém upozorní, aby se vendor rozčíli, či soudil. To už musí být opravdu způsobena významná škoda velkého rozsahu. Komerční vendor by s (deklarovanou) pokorou přijal situaci a snažil by se ji spíš řešit. Pyšná reakce není na místě.
Upozornění na chybu se dělá tak, že na chybu upozorním, nebo pošlu opravu. Ne tak, že pošlu opravu a s ní ještě závažnější chybu. „Pyšná reakce“ je jenom váš blud.
@Filip Jirsák
Pořád jenom metáte spekulace a na jejich základě házíte odpovědnost (i) na univerzitu. Vůbec nevíte kdo o tom věděl nebo nevěděl a evidentně ani jaký mají třeba kodex, univerzita se jiště kryje a každá má nějaké etické stanovy a proto jste tuto část mého příspěvku musel jako nezapočítat a neuvažoat, protože to bortí ty vaše neustálé fabulace nad tím, co přesně se tam dělo:
... A velmi silně pochybuji, že ta univerzita nemá v nějakém kodexu něco jako "nesmí způsobit škodu i nehmotnou" a musí dodržovat zásady ... a příkladně reprezentovat ... blá blá ...
Kdyby to samé udělali zaměstnanci nějaké firmy, vystupovali by jako členové nějakého týmu ve firmě. Vy byste to neřešil primárně s tou firmou?
To jste si asi popletl vinu s tím, kdo má něco na starosti k řešení.
Je dokonce možné, že tu věc ve vašem přípkladu budete zároveň řešit i s pojišťovnou a nic to o její vině nevypovídá. A je dokonce možné, že za některé věci jsou odpovědní jenom zaměstnanci, byť i ve firemním autě - např. dopravní přestupky.
28. 4. 2021, 11:55 editováno autorem komentáře
Poleno: Kdo o tom věděl nebo nevěděl je jedno. Pokud mají kodex, který to řeší, a nebyl dodržen, musí to univerzita řešit. Pokud mají kodex, který výzkum založený na poškozování jiných lidí bez jejich souhlasu povoluje, musí to univerzita řešit. Jinými slovy, lidem mimo univerzitu je úplně jedno, co přesně na univerzitě selhalo, ale je potřeba to napravit. Co přesně selhalo a jak to napravit, to už ať si vyřeší univerzita sama.
To jste si asi popletl vinu s tím, kdo má něco na starosti k řešení.
Nepopletl. Já jsem nic o vině nepsal.
Kdo o tom věděl nebo nevěděl je jedno
.... vám evidentně ano. Tak se často nesoudí ani v rozvojových zemích.
Nepopletl. Já jsem nic o vině nepsal.
Ale ano, univerzita dostala ban a vy to obhajujete tím, že je ona, kdo to má řešit. Pletete si "řešit" s vinou "za které se dává ban" ... správně měli dostat ban ti výtečníci a pak by to bylo to vaše "řešit s univezitou". Je to pořád dokola. Neuvědomujete si konsekvence toho, co říkáte. Omezíte to na nějaký pro Vás uchopitelný jeden princip a pomíjíte okolí. Proto taky pak spousta lidí argumentuje proti Vám: protože nežijí ve vakuu
Poleno: Nejde o žádný soud. Ban není žádný trest – je to obrana před nefunkčními mechanismy univerzity. Až to univerzita napraví, přestane být ban potřeba. Kdyby to byl trest, trval by i po odstranění problémů.
Jak mohli dostat ban jenom ti výtečníci, když se neví, kdo konkrétně to je? Je to nějaká výzkumná skupina na Minnesotské univerzitě. Kdo do ní patří vědí asi členové té skupiny.
To že do open source může přispět kdokoliv, a snadno u toho záměrně zanést záludnou zranitelnost, jsem tu v diskusích psal už před lety. Většinou jsem se dozvěděl že se to nestává, proč by to někdo dělal, patch by neprošel schválením atd. Je dobré vědět, že to někdo bere vážně.
Zajímavý argument je ten, že zranitelnost je zranitelnost, ať je zanesená nedbalostí nebo záměrně. Není to pravda. Zranitelnost zanesená záměrně je okamžitě známa útočníkovi, který ji ihned může začít zneužívat. Je to tedy 0-day.
Tady jsem se dočetl, že 17% zranitelností v projektech na GitHubu je zaneseno záměrně. To je dost síla.
https://www.zdnet.com/article/open-source-software-how-many-bugs-are-hidden-there-on-purpose/
Problém je prostě v tom, že kdokoliv na druhém konci světa může záměrně zanášet do open source bezpečnostní problémy. Bez jakékoliv identifikace, bez smlouvy, bez dohledatelnosti, bez bezpečnostní prověrky, bez osobní odpovědnosti. Pro každého útočníka, který má trochu peněz, je to jistě lákavá představa.
U větších SW firem přitom zaměstnanci procházejí bezpečnostními prověrkami. I u menších společností se ověřuje identita, pracovní historie, vzdělání, zaměstnanec je fyzicky k dosažení, a má osobní odpovědnost.
Zranitelnost zanesenou nedbalostí může také nejdřív objevit útočník (a stává se to dost často), takže je to pak také 0-day zranitelnost. Může takhle objevit i zranitelnost zanesenou záměrně. Takže v tom rozdíl není – prostě máme v kódu 0-day zranitelnost, o které ví útočník nebo útočníci ale správci ne.
Při hledání náhodných zranitelností mají všichni stejnou startovací čáru. Liší se motivace. Hledat zranitelnosti pro to, aby se opravily, bude spíš vyžadovat zajištění financování. Hledat zranitelnosti pro zločin naopak financování má zajistit. Pokud se vyrovnají motivace, je stejná šance jak pro útočníka, tak pro opravdového vývojáře, že náhodnou chybu najde ve stejný moment.
U záměrně zanesených zranitelností je stejná otázka motivace, ale navíc se posouvá ta startovací meta. Útočník o zranitelnosti s jistotou ví dříve, zatímco vývojář může chybu nalézt jedině později. To nutně vede k tomu, že záměrně zanesené chyby jsou nebezpečnější, nikoliv 0-day ale spíš něco jako -1-day.
Jaký je aktuální dopad v praxi nevíme. To by šlo zjistit snad jedině empiricky, a bude se to měnit v čase. Možná budou cílené útoky na zdrojové kódy přibývat, a možná se taky budou zlepšovat způsoby kontroly a prevence.
O tom, jak moc je snadné chybu propašovat nevíme. Víme, že to možné je, ale neumíme to vyhodnocovat. Stejně jako neumíme vyhodnocovat, jak se OSS jako celek v praxi brání, ani neumíme vyhodnocovat, jak účinná pravidla jsou zavedena pro jednotlivé projekty. Jsou části OSS, na kterých je závislý doslova celý svět.
Vycházíte z předpokladu, že všechny doposud objevené zranitelnosti byly omyly. Jak jste k tomuto předpokladu dospěl?
O tom, jak moc je snadné chybu propašovat nevíme.
Známe objevené chyby, víme, jak dlouho v kódu byly. To nám dává docela dobrou představu o tom, jak často se chyby do kódu dostávají.
Jiná věc je jak snadné je vyrobit takovou chybu, aby vypadala přirozeně. Což ale můžete testovat před tím, než patch pošlete do upstreamu, takže rozumný útočník odfiltruje patche, které by ho prozradily moc brzo.
Vycházíte z předpokladu, že všechny doposud objevené zranitelnosti byly omyly. Jak jste k tomuto předpokladu dospěl?
Ne, z toho nevycházím. Něco byly omyly, něco možná ne. To se nikdy nebude dát zjistit se 100% přesností, ale nyní o tom nevíme skoro vůbec nic.
Známe objevené chyby, víme, jak dlouho v kódu byly. To nám dává docela dobrou představu o tom, jak často se chyby do kódu dostávají.
Máme představu o tom, jak často se objevují. Předpokládáme korelaci mezi vstupem chyby a objevením. Není však vůbec jisté, jestli záměrné chyby nevstupují dobře maskované (složitá, ale ne nemožná situace). Neumíme rozlišit, kolik chyb vzniká náhodně, kolik zanedbáním, a kolik záměrně.
Bylo by poměrně prospěšné se tomu věnovat, protože bez informací nelze smysluplně reagovat. Nechme teď prosím stranou, jestli tento experiment mohl a měl být provedený jinak. Samotné úsilí získat vhled do tohoto problému ale potřeba je, a chybí.
Vy se pořád soustřeďujete na rozlišování toho, zda chyby vznikla náhodně (co to je?), zanedbáním nebo záměrně. Za prvé se to ale rozlišit nedá, maximálně se můžete dohadovat, zda to byl víc záměr nebo jen nepozornost. Za druhé je to rozlišování k ničemu. Když ta chyba v kódu je, škodí úplně stejně bez ohledu na to, jakým způsobem vznikla.
K čemu tedy podle vás je potřeba ten větší vhled do problému? Co by se dělo jinak, pokud byste uměl rozlišit, které chyby byly záměrné a které byly nedbalost? Když najdete chybu, která vznikla nedbalostí, tak ji ve zdrojáku necháte? To asi ne, že… Takže jediné řešení je umět najít co nejvíc chyb co nejdříve. A k tomu vůbec nepotřebujete vědět, zda ta chyba vznikla úmyslně nebo omylem.
@Filip Jirsák
Moc to zjednodušujete.
Náhodnému vnosu chyby nezabráníte - to může být neznalostí, nepozorností, nebo třeba i překlepem.
Zanedbání je trochu jiná kategorie. Na projektu máte určitá pravidla, která se nedají rozumně automaticky kontrolovat a je z velké části na důvěře, že je vývojář dodržuje. Je však dobré umět ověřit a odhadovat, jestli některá ze zásad nečiní v praxi problémy. Pokud ano, lze upravit pravidla, nebo přemýšlet o možnostech kontroly (automatické, periodické, ...).
Záměrná chyba se technicky neliší (jak píšete: chyba jako chyba), ale liší se motivací.
U náhodně vnesené chyby neočekáváte, že by byla nějak důmyslně skrývaná. U zanedbání to nebude časté, ale někdy se stane, že si vývojář chce systematicky ulehčit práci a tak svoji nedůslednost trochu maskuje. U záměrně vnesených chyb však musíte očekávat, že mohou být odhalitelné nejobtížněji. Může jít například o kombinaci nenápadně vypadajících chyb, každá na jiném místě, a jako celek dávají smysl jen tomu, kdo je vytvořil.
Zájem by měl být v tom, umět to rozlišit (pochopitelně to nepůjde přesně). Podle toho pak lze rizika zhodnotit a přemýšlet nad způsoby prevence. Na nedbalé lajdáky může např. fungovat reputace a tomu odpovídající řetězec kontrol. Na záměrné kombinované chyby může třeba pomoci heuristika nad zaměřením, tempem a rozsetím vývoje. -- to jen tak, co mě projde hlavou, za to mě nechytejte za slovo, jsou to fakt jen příklady.
K čemu tedy podle vás je potřeba ten větší vhled do problému? Co by se dělo jinak, pokud byste uměl rozlišit, které chyby byly záměrné a které byly nedbalost? Když najdete chybu, která vznikla nedbalostí, tak ji ve zdrojáku necháte?
Samozřejmě, že tam chybu nechcete, bez ohledu na to, pod jakou motivací vznikla. Vhled do problému by mohl přinést lepší možnosti prevence. Vědět, jaké části kódu mají projít hlubší revizí, jaké přispěvatele je potřeba kontrolovat pravidelně a jaké jen namátkově. Nastavit plochá pravidla fungovalo v době, kdy k Linuxu (ale netýká se to jen něj) přicházeli jen nadšenci se svými konkrétními místními cíli. Jeden potřeboval podporu určitého hardwaru, druhý hledal možnosti zpracování síťového provozu, třetí potřeboval ovládat parametry výkonu. Dnes se v projektech sbíhají i komerční zájmy firem, které zastřešují zájmy svých zákazníků podle vlastních představ. Přispívají organizace, na které mají nutně vliv vlády jejich zemí. Kyberzločin se stal extrémně výnosnou činností. Přibyly motivace a tím i rizika. To všechno jsou změny v prostředí, ve společnosti, které vyžadují změny v přístupu ve vedení OSS projektů. Ty změny se dějí, ale potřebují stále lepší vhled do situace. Snad je to odpověď na Vaši otázku.
Když to převedu do praxe: při autonehodě, starý člověk zemře po menším nárazu, který by dobře stavěný mladý člověk třeba přežil. Výše trestu (který je zároveň i prevencí) se neodvíjí ploše od toho, kolik joulů energie vozidlo předalo do kostí oběti. Stejná chyba má někdy následek smrti a přijde trest, jindy stejná chyba nic nezpůsobí. Řeší se motivace, zanedbání a konkrétní okolnosti. Někdy z takového případu vzejde to, že se upraví tvar silnice, instalují semafory a přechod pro chodce, nebo se třeba udělá zábradlí, aby tam chodci nevstupovali. Jindy dojdete k tomu, že je potřeba mladým řidičům dát řidičák jen na zkoušku, nebo obecně snížit rychlostní limity. Jenže žádnou takovou změnu na silnici neuděláte, pokud nemáte rozlišení příčin. Pokud byste měl k dispozici jen počet nehod a počet předaných joulů, dojdete dokola jen k tomu, že je potřeba jezdit a chodit opatrněji.
Miroslav Šilhavý: Víte, proč se přichází na chyby v programech až po té, co se ten program běžně používá? Třeba až po několika letech od okamžiku, kdy se tam ta chyba dostala? Protože ty chyby se důmyslně skrývají samy od sebe. Resp. ty, které nejsou důmyslně skryté obvykle odhalí rovnou vývojář nebo někdo po něm ještě ve fázi kontroly kódu. Jenže je dost chyb, kterých si nikdo nevšimne, protože nejsou tak zjevné. To jsou ty chyby, které se dostanou až do produkčního kódu, o kterých se pak dozvíte z nějaké CVE a řeší se jako bezpečnostní díra. (Samozřejmě je spousta dalších chyb, které vznikají stejným způsobem, ale nejsou následně vyhodnoceny jako bezpečnostní problém – ať už je to hodnocení správné nebo ne).
Takže opět platí to samé. Je úplně jedno, jakým způsobem se do kódu ta chyba dostala. Jediné, co pomáhá, je umět takové chyby najít a opravit.
Vědět, jaké části kódu mají projít hlubší revizí, jaké přispěvatele je potřeba kontrolovat pravidelně a jaké jen namátkově.
To všechno se ví a aplikuje se to.
Nastavit plochá pravidla fungovalo v době, kdy k Linuxu (ale netýká se to jen něj) přicházeli jen nadšenci se svými konkrétními místními cíli.
Jenže plochá pravidla měl Linux možná kdysi dávno na začátku. Stejně jako to, že přispívali jen nadšenci se svými konkrétními místními cíli. Ale asi nemusíme řešit, jak to bylo před třiceti lety.
Jenže žádnou takovou změnu na silnici neuděláte, pokud nemáte rozlišení příčin.
Akorát že mezi příčinami se nezkoumá něco tak neuchopitelného, jako motivace. Pokud auto nabourá, protože mělo výrobní vadu, řeší se, jak tu výrobní vadu příště detekovat. Neřeší se, jestli zaměstnanec, který tu výrobní vadu způsobil, to udělal úmyslně, nedbalostí, přehlédnutím nebo z nějakého jiného důvodu. Protože až byste velmi drahými opatřeními zajistil, že nikdo tu chybu neudělá úmyslně, zjistil byste, že k nim dochází pořád dál, akorát neúmyslně. Takže je zbytečné řešit jednu příčinu chyb, když k těm chybám může docházet ze spousty jiných příčin. Řešení je jediné – zlepšovat mechanismy detekce těch chyb.
Pokud auto nabourá, protože mělo výrobní vadu, řeší se, jak tu výrobní vadu příště detekovat. Neřeší se, jestli zaměstnanec, který tu výrobní vadu způsobil, to udělal úmyslně, nedbalostí, přehlédnutím nebo z nějakého jiného důvodu. Protože až byste velmi drahými opatřeními zajistil, že nikdo tu chybu neudělá úmyslně, zjistil byste, že k nim dochází pořád dál, akorát neúmyslně.
S touto částí si dovolím nesouhlasit. Pojďme z automobilového průmyslu do NASA a ke dvěma haváriím raketoplánů. Challenger bouchnul kvůli těsnění, které ztratilo svoji pružnost v mrazu, Columbia kvůli porušenému tepelnému štítu po srážce s izolační pěnou.
Pochopitelně v obou případech došlo k technické nápravě: změny materiálů, konstrukční změny. V druhém případě se zlepšily i způsoby detekce (salto raketoplánu, aby bylo možno nafotit jej zespoda).
Jenže v obou případech se našly i další faktory. V prvním nebylo vyhodnoceno varování konstruktérů těsnění, že start v mrazu není dobrý nápad. V druhém případě o problému věděli, ale zkušenost z asi stovky startů všem napovídala, že důsledky srážky s izolační pěnou nejsou vážné. V obou případech nejdelší čas NASA strávila úpravou postupů, aby se každý faktor vyhodnocoval (Challenger) a aby nedocházelo k povyšování chyb na standard (Columbia).
I v běžné fabrice, když zjistíte problém s konstrukční nebo výrobní jakostí, zavádíte opatření. Změny organizační struktury, kontroly produkce, zavádění postupů (řízení jakosti). Rozdíl je ale v tom, že v běžné výrobě je obrovská empirie se zpětnou vazbou na výkon firmy. Vyrábíte blbě = proděláváte. Open source je o tuto část zpětné vazby ochuzen. Zatímco výroba je po staletí zlepšovaný proces, open source je proti tomu batole, které hýbe světem. Prostor pro zlepšování má obrovský a jakýkoliv nový pohled na to, co se děje, může jen pomoci.
Soustředit se jen na zpětné vychytávání chyb, bez rozlišení, jak vůbec vznikly, je zbytečně krátkozraké.
Tady se ale nebavíme o tom, že se nemá zjišťovat, jak chyby vznikly. Vy tvrdíte, že součástí zjišťování má být i posuzování toho, zda někdo chybu způsobil úmyslně či neúmyslně. V případě obou havárií raketoplánů mi ale není známo, že by se něco takového zkoumalo – ani vy jste o ničem takovém nepsal.
Krátkozraké je soustředit se na rozlišování věcí, které na chybu a možnosti jejího odhalení nemají žádný vliv.
Vy tvrdíte, že součástí zjišťování má být i posuzování toho, zda někdo chybu způsobil úmyslně či neúmyslně.
Jednoznačně. Z jednotlivé chyby nic nezjistíte, z mnoha už ano.
Nijak se to nevylučuje s tím, že musíte reagovat i okamžitě. Oprava chyby je samozřejmá. Další opatření (banem na probíhající útok, banem preventivně-výchovným, zhoršením reputace, ...) se už liší podle situace a u nich nelze stanovit úplně pevná a neměnná pravidla.
Tedy jednu věc byste zjistil – že to není buď a nebo, ale že je to celá škála možností.
S tímto přístupem bychom neměli žádný pokrok ve spoustě věd, třeba v medicíně :). Tam taky nikdy nevíte přesně, který faktor působí nejvíc a že jste ho zjistil správně. Přesto se s tím dá pracovat. Možná je to pro ajťáky nepohodlně uchopitelné, ale uchopitelné to je.
Pokrok ve vědě nastal teprve tehdy, když jsme se naučili rozlišovat faktory, které vliv mají, a faktory, které vliv nemají – a nezdržovat se dál jejich zkoumáním. Medicína nezkoumá třeba vliv postavení planet v době narození člověka na jeho život, protože už se ukázalo, že tento faktor žádný vliv nemá.
Pravda, občas se vyskytne někdo s objevem, že by postavení planet mít vliv mohlo, protože to přece ještě nikdo nezkoumal, a začne požadovat, aby se o tomto tématu vedla otevřená diskuse. Ale s vědou to nemá nic společného.
To, zda ta chyba vznikla úmyslně nebo omylem nemá vliv na charakter chyby a na možnosti prevence. Vždyť se tu celou dobu bavíme o chybách, které byly úmyslně maskované tak, aby vypadaly jako omyl.
Nepovažuji se za vševědoucího, ale jsem přesvědčený, že vzorce v chování těch, kteří by se snažili úmyslné chyby maskovat, se dají vypozorovat. Stejně jako se dá vypozorovat systematický (neúmslný) chybovač. K oběma pak jistě chcete přistupovat jinak: lempla zabanujete, ale systematické nebezpečí chcete nejdřív dostat pod kontrolu (zabanováním ho akorát vycvičíte příště neudělat stejnou chybu - a bude jen nebezpečnější).
Nepovažuji se za vševědoucího, ale jsem přesvědčený, že vzorce v chování těch, kteří by se snažili úmyslné chyby maskovat, se dají vypozorovat.
To je hezké, že cílíte na ty, kteří budou své jednání maskovat neúspěšně. Jenže je potřeba reagovat i na ty chyby, které budou tak dobře zamaskované, že budou vypadat úplně stejně, jako neúmyslné chyby. Úplně stejně je potřeba reagovat i na ty skutečné neúmyslné chyby. Vy si pořád ty chyby třídíte do úhledných škatulek, abyste je pak mohl vysypat na jednu hromadu chyb, které je potřeba najít a opravit.
K oběma pak jistě chcete přistupovat jinak
Tohle může fungovat ve firmách. My se celou dobu bavíme o opensource, jehož základní vlastností je to, že může přispívat každý.
Vy říkáte, že je jedno, zda byla zranitelnost zanesena záměrně nebo omylem, protože je v každém případě třeba ji opravit. Souhlas v tom, že z hlediska nutnosti opravy zranitelnosti jsou obě situace totožné.
Nicméně je tu také zásadní rozdíl, který jste neadresoval. U nedbalostí zanesené zranitelnosti ji jednou někdo objeví - ať už za den, rok nebo dekádu. Může ji objevit vývojář nebo researcher, a ti jí nahlásí k opravě. Může ji objevit také nějaký útočník, a začít jí zneužívat. Obě možnosti jsou otevřené.
V případě záměrně zanesené chyby ji také jednou někdo objeví - ať už za den, rok nebo dekádu. Ovšem zásadní rozdíl je v tom, že útočník o zanesené zranitelnosti ví ihned, a nejspíš ji zanesl za účelem jejího zneužívání. Miroslav to popsal slovy že je to horší než 0-day, je to spíš -1-day. A je to ještě horší, protože pokud tu zranitelnost někdo jiný najde až po deseti letech, tak je to -3650-day vulnerability.
Nikoli, pořád je to 0-day vulnerability – prostě už o té chybě někdo ví. Reálným problémem začne bezpečnostní chyba být tehdy, když se o ní dozví nějaký útočník a začne ji zneužívat. Je úplně jedno, jak dlouho před tím chyba byla v kódu a nikdo o ní nevěděl – jestli to bylo dvě hodiny nebo dva roky.
Opět neřešíte příčinu vzniku problému, ale jeho následky. Pokud sedíte v gumovém člunu, může mít defekt, a ten může začít působit problémy. A můžete také mít někoho, kdo vám do člunu dělá záměrně díry. V obou případech je potřeba díry opravit. Jenže by také nebylo špatné zastavit toho, kdo vám do člunu dělá záměrně díry. A tenhle aspekt - předcházení problému namísto jeho řešení - vy prostě ignorujete.
Nejméně problematická zranitelnost není ta, kterou (ať už kdykoliv a jakkoliv) opravíte. Je to tak, která se do kódu vůbec *nedostane*.
Mícháte dohromady dvě věci. Jedna věc je, aby byl chybný kód co nejdříve odhalen. To nijak nesouvisí se způsobe vzniku chyby, prostě je potřeba tu chybu najít co nejdřív bez ohledu na to, jak vznikla.
Druhá věc je osoba, která tu chybu zapříčinila – je logické předpokládat, že pokud někdo způsobil jednu chybu, může způsobit i další, protože buď se v problematice dost neorientuje, nebo to dělá schválně. Nicméně tady narážíme na základní vlastnost otevřeného softwaru, že přispívat může každý. Pokud někdo způsobil chybu, můžete si na něj dávat větší pozor nebo ho zablokovat, ale nijak mu nezabráníte, aby druhý den poslal další patch pod novým e-mailem.
Jinak k tomu, že byli zastaveni ti, kteří teď zrovna dělají do člunu záměrné díry, právě došlo. A mnozí se tady nad tím pohoršují.
To nijak nesouvisí se způsobe vzniku chyby (...) je logické předpokládat, že pokud někdo způsobil jednu chybu, může způsobit i další, protože buď se v problematice dost neorientuje, nebo to dělá schválně
To je právě dost ploché vnímání reality. Pokud mi to udělá nějaký výzkumný tým, který se nesnaží být anonymní, komunikuje - pak mohu předpokládat, že bude i platit dohoda s nimi. Pokud to provede někdo, koho se nemůžete ani dopátrat, tak tam opravdu musíte předpokládat, že bude svoji snahu opakovat. Jenže: v tom prvním případě máte koho banovat, protože se neskrývá. V druhém případě máte někoho, komu ban vadit nebude - prostě začne pracovat pod novou identitou. Takže paradoxně podnikáte opatření vůči těm, kteří hrozbu nepředstavují, zatímco proti těm, kteří představují, nemáte v ruce žádný nástroj.
Jinak k tomu, že byli zastaveni ti, kteří teď zrovna dělají do člunu záměrné díry, právě došlo. A mnozí se tady nad tím pohoršují.
Neudělali díry do člunu. Dostali se ke kýlu lodi i s vrtací soupravou, ale věrohodnými argumenty dokázali, že by ji ani nevyvrtali, protože neměli vrták. Způsobili však poplach, jako kdyby ho měli. Vyprudili tím spoustu lidí, ale neohrozili a ani nechtěli. OK, mohou nést odpovědnost za to vypruzení lidí, ale nemohou být souzeni za terorismus. Opatření LF je však takové, jako kdyby se o terorismus jednalo, použilo de facto maximální nástroj, který má k dispozici.
Takže paradoxně podnikáte opatření vůči těm, kteří hrozbu nepředstavují, zatímco proti těm, kteří představují, nemáte v ruce žádný nástroj.
Nějak nevidím důvod, proč by se měl GKH nechat zahlcovat e-maily s nesmyslnými patchi. Když je mohl zastavit, udělal to.
Dostali se ke kýlu lodi i s vrtací soupravou, ale věrohodnými argumenty dokázali, že by ji ani nevyvrtali, protože neměli vrták. Způsobili však poplach, jako kdyby ho měli. Vyprudili tím spoustu lidí, ale neohrozili a ani nechtěli. OK, mohou nést odpovědnost za to vypruzení lidí, ale nemohou být souzeni za terorismus. Opatření LF je však takové, jako kdyby se o terorismus jednalo, použilo de facto maximální nástroj, který má k dispozici.
To už jsou zase jen vaše výmysly. Za prvé úplně ignorujete, v jaké situaci ban dostali. Ban e-mailových adres univerzity do doby, než si udělá pořádek ve svých výzkumných projektech, fakt není maximální nástroj.
Už to tu padlo, ale rád zopakuji. Pokud někdo přispívá anonymně do open source projektu a záměrně zanáší zranitelnosti, tak ho nezablokujte. Respektive zablokujete, ale on si založí novou identitu, a za chvíli ho můžete mít zpátky.
Zkuste si představit, že vedete oddělení elektronické špionáže u řekněme nějaké čínské zpravodajské služby. Řeknete si, že zavedete zranitelnosti do pár desítek často používaných aplikací, protože vám to umožní krást data, technologie, identity atd. V případě klasického SW byste musel poslat podřízené do každé firmy vyrábějící takový SW, s velmi dobrým krytím aby prošli bezpečnostní prověrkou, nechat je tam zaměstnat, fyzicky docházet do kanceláře, a snažit se produkt kompromitovat. To je zatraceně velká spousta práce. A když to praskne, tak agenta chytí, a může zpívat.
To u open source je situace úplně jiná. Každý podřízený může z tepla a bezpečí kanceláře zpravodajské služby přispívat klidně do desítek projektů. Nákladem je počítač, stůl a topení/klimatizace. Když to praskne, tak dotyčný bude dál škodit na desítkách dalších projektů. A na ten, kde to prasklo, se prostě vrátí pod jinou identitou.
Tohle je principiální omezení open source vývoje. Samozřejmě by bylo možné každého přispěvatele lustrovat. Nicméně když uvážíte, že spousta projektů nemá dost zdrojů ani na schvalování kódu, nemluvě o kvalitním testování, dokumentaci a překladech, tak je jasné, že tuhle mezeru jen tak nezavřete. Ti studenti to svou prací ukazují v celé nahotě.
Já jsem tímto řekl k věci vše, co jsem chtěl říct.
Tak schválně po letech, Heartbleed. Historii známe, motivaci taky, autorství taky, žádným filtrem korporátního PR (takže žádné ututlávání) to neprošlo.
Byl to úmysl? Byla to chyba? Byla vyvozena odpovědnost? Poučení?
Pro srovnání NSA_KEY ve windows NT4? Záměr? Chyba? Odpovědnost? Nebo jen mlžení?
Edit: A mimo řeč, ten vývojář co tam přidal nsakey, ten měl prověrku? čí? ;-)
28. 4. 2021, 08:35 editováno autorem komentáře
Byl to úmysl? Byla to chyba? Byla vyvozena odpovědnost? Poučení?
Správně položené otázky. Na konec nevyhnutelně dojdete k tomu, že někomu důvěřovat musíte. Když už mu nemůžete důvěřovat v tom, že chybu nezanese, tak potřebujete aspoň důvěřovat tomu, jak ji využije/zneužije a jestli jeho postupy podléhají aspoň nějaké kontrole.
Zjednodušeně řečeno, když už nemůžu vyloučit backdoor, pak je mi milejší, že od něj má klíče některá z demokratických zemí s fungujícím právním systémem, než aby to bylo Rusko, Čína, KLDR nebo nějaká nezávislá skupina zločinců rozstrkaná po různých koutech zeměkoule.
Tak Vám nevím, mně přišlo, že Snowden žádné světoborné informace nevytáhl. Dozvěděli jsme se to, co se dalo předpokládat a dá se předpokládat stále. Jen to přineslo miliardy do nových a ještě hlubších projektů, které musí nahradit ty profláklé.
Demokracie a právo nejsou dokonalé, ale je to to nejlepší, co doposud umíme.
Kde byl problém u Windows NT 4? V tom že se proměnná jmenovala _NSAKEY?
https://web.archive.org/web/20000520001558/http://www.microsoft.com/security/bulletins/backdoor.asp
Pokud jde o prověrky zaměstnanců, tak ty MS popisuje v linku níže. Těžko se může stát, že by do MS produktu přidal kód anonym, u kterého je známa jen jeho mailová adresa.
https://docs.microsoft.com/en-us/compliance/assurance/assurance-pre-employment-screening