Jasne, taky jsem proti jakymkoli zakonum na "ochranu" internetu, protoze i kdyby to bylo mysleno v dobre vire, skyta to pro politiky az prilis lakavou moznost jak to premenit na zakon pro cenzuru internetu.
Nicmene ohledne tech operacnich systemu je to nesmysl, podivejme se typicky na statni spravu, muze mit deravy OS za penize nebo bezpecny open-source OS zadarmo. No a vyhrava (uplatilo se to) placeny deravy OS. Proste ve statni sfere vubec nejde o kvalitu, ale z 99,9% jde vzdy o cenu (a to vetsinou o tu, ktera jde nekomu do kapsy). Teda ve statni sfere bezpecny OS pres politiky a uredniky proste neprejde, pres to proste nejede vlak a cela teorie pada.
No ono v soukromych firmach je to podobne, nebudu se ani rozepisovat, snad jen napisu "serial IT Crowd". Ona je to fakt vtipna svanda, jenze ono to tak je velmi casto i ve skutecnosti, proste IT i to bezpecne zajima maximalne toho ajtaka na konci retezu, ale statutara natoz manazera to opravdu nezajima, manazera maximalne tehdy, kdyz se skrz IT daji podojit nejaky prachy, urcite ne obracene. :-)
Jinymi slovy to nejmene spatne reseni stale je stejne, radeji nedelat vubec nic.
A co teprve léky a přesto za ně výrobce nese nějakou zodpovědnost.
Takže zodpovědnost lze určitě požadovat.Problém je trochu v tom, jakou by nesli zodpovědnost výrobci free software. Jakou by nesli zodpovědnost lidé, kteří by byli zodpovědni za nasazení free software třeba ve státní správě.
Obávám se, že takový přístup by se obrátil proti svobodnému software.
Jeste navic k tomu, proc vubec potrebuju zodpovednost za software v situaci v jake se nachazime a ktera je preci naprosto odlisna od situace v oblasti leku. Kdyz neco podela vyrobce leku, tak muze pacient i umrit, kdyz neco podela vyrobce softu, tak preinstaluju maximalne preinstaluju pocitac (server).
A hlavne v oblasti softu resi zodpovednost konkurence a prave svobodny software je jeji vyznamnou soucasti.
A jeste jedna vec - zaruka, u softu se silne nedodrzuji zakony v oblasti zakonne zarucni doby, ale kvuli tomu netreba delat nove zakony, jen vymahat ty stavajici.
Co je nejvetsim problemem z hlediska bezpecnosti: Windows, ale mam moznost linuxu a BSD. Java od Oracle, ale mam moznost OpenJDK a IcedTea. A hlavne Flash - tady nemam zadnou jinou moznost, navic to neni tak, ze by se vyrobce zodpovednosti donutil k naprave, Adobe ma derave vsechny produkty a vzdycky melo a dokud nekrachne tak vzdycky bude, resenim je prestat flash pouzivat a na nahrazenio flashe se preci pracuje, takze suma sumarum mame odskrtnuto a ted uz jen donutit alespon statni spravu ty bezpecne softwary pouzivat.
BTW a co se stane kdyz neco podela vyrobce software pro kardiostimulator, rentgen, ekg ... nebo posledni dobou pouzivane roboticke nastroje pro laparoskopicke operace????
Nebo treba software pro rizeni odpadnich vod?
Bezpecnostni pozarni systemy?
Komunikace na 112, 156,155,158 ?
Cela problematika s tzv free svobodnym problemem je ponekud komplexnejsi ... duvod proc firmy pouzivaji placeny software je ten... ze u placeneho existuje placena podpora a jakesi zaruky (pri dodrzeni specifickych podminek) .. proto se casto pouziva napriklad redHat a podobne ..
Firmy si totiz nemohou dovolit pouzivat free soft bez jakekliv podpory a zaruk!!!
aj na ten najsprostejsi Open Source programcek sa da kupit support ktory castyo bude leposi ako u Redhatu/Oracle/Microsoft a vmware dokopy. (Mal som docinenia zo suportom vsetkych stiroch firiem a ak je moznost to zvalit na niekoho ineho tak to spravia. A to este skor ako sa pozru nato ci je FAKT problem na strane aplikacie/rozsirenia.
Ono je niekedy radost riesit Problem z oracle produktom nad redhatom. Redhat ta posle za Oracle, Oracle za Redhatom. A vo vysledu googils jako keby si to rozchadzal na Vlastnej distribucii linuxu.
Kresne O*****e prachy za ktore nedostanes nic len zvyseny tlak.
Už jste někdy viděl program o kterém se nedá přesně říct, jak se zachová? Samozřejmě pokud je chybný, obsahuje race conditions, špatně ošetřené vstupy umožňující buffer overflow, tak se chování opravdu špatně předvídá - to neznamená, že to nejde.
Halting problem říká, že neexistuje univerzální program, který by rozhodoval o tom zda program na vstupu zastaví nebo ne. Nicméně toto je velice teoretický koncept a pro většinu programů toto umíme určit pomocí analýzy.
Rozhodně souhlasím, že kdyby každý program měl být otestován na všechny vstupy ze svého okolí a všechny možné okolnosti které mohou nastat (včetně chyb paměti, atd..), tak dneska nemáme Internet, PC by uměly možná psát text jako na stroji a při troše snahy i simulovat kalkulačku. Zjednodušeně, vývoj každého software by byl neskutečně nákladný - stačí se podívat jak náročný je vývoj software pro řízení kritických infrastruktur (elektrárny, letadla, ...). Obecně problém verifikací je stále předmětem výzkumu, praktické použití pro větší programové celky je komplikované (Zde pomáhají specializované programovací jazyky, jako třeba ADA - ale kdo by se v tom učil dělat, když máme C#, .NET, Javu a javascript).
Souhlasím s autorem článku, že pokud je potřeba vytvářet neděravé a bezpečné aplikace, je nutno začít na úrovni OS, jinak to nedává smysl. A vždycky se najdou vývojáři a uživatelé, kteří obětují trochu bezpečí za možnost používat nejnovější technologie a jednoduše konzumovat obsah.
Uz jsem videl spoustu programu, ktere se chovali jinak nez se predpokladalo, diky vlivu jinych programu v systemu nebo systemu samotnemu...
To co je na freeBSD stabilni jsem videl nestabilni na Ubuntu ...
To co je stabilni a funkcni na RedHatu jsem videl jinde nefungovat ...
Takze v podstate ... ANO videl.
Ano, viděl jsem takový program. Příkladem je polkit/consolekit, kde do nedávna stačila na konfiguraci bezkontextová gramatika, takže nebyl problém v konečném čase určit, jestli třeba lokálně přihlášený uživatel může, nebo nemůže vypnout stroj. Od té doby, co je konfigurace v javascriptu, tedy turingovsky úplném jazyce, to nejde. A není to vykonstruovaný případ. Dělá se to třeba při automatické validaci zabezpečení systému (SCAP). A to jsem jenom u parsování konfigurace.
Problém zastavení a ověření shody specifikace s implementací jsou ekvivalentní problémy (ekvivalence dvou programů). To není žádná akademická poučka ale tvrdá realita. Proto, jak jste sám napsal, se formální verifikace používá jen na izolované problémy se zjednodušeným modelem, které se za tím účelem implementují ve specifických jazycích. Zbytek se pokrývá testy a různými automatickými kontrolami, které mají tu vyšší tu nižší účinnost, generují spoustu falešných poplachů a prakticky řeší jen známé a opakující se chyby. (Například statické analýzy zdrojových kódů.)
Je tedy zcela normální, že kvalitní kód stojí sakra peníze a může si ho dovolit jen pár nejbohatších zákazníků, takže je bláhové požadovat stejnou záruku pro spotřební zboží, kterým třeba pracovní stanice dnes je.
V podstatě je to jako s pojištěním. Čím více zaplatíte, tím větší ochranu si vysloužíte. Žádná ale není stoprocentní a musí s tím počítat obě strany.
> Od té doby, co je konfigurace v javascriptu, tedy turingovsky úplném jazyce, to nejde.
Ale jde. A to triviálně snadno:
1. mějme klasifikaci konfigurací na "může vypnout", "nemůže vypnout", "vadná konfigurace". "Vadnou konfiguraci" považujme za nesplňující specifikaci ať je jakákoli.
2. pod daným uživatelem zkusme stroj vypnout
3. počkejme den
4. vypl se => může vypnout
nevypl se => nemůže vypnout
konfigurace se stále zpracovává => vadná konfigurace
Čili to, cos tady předvedl, je klasické chybné vztažení teoreticky dokazatelného abstraktního faktu na prakticky neexistující problém.
Tvrzení, že shoda programu se specifikací je _obecně_ neověřitelná totiž znamená, že existují _nějaké_ programy, jejichž shodu se specifikací neumíme ověřit. K tomu, aby tvoje argumentace byla platná, by bylo potřeba ještě dokázat, že zaručeně mezi těmi programi, jejichž funkčnost skutečně _v praxi_ _chceme_ ověřovat, do této skupiny spadá.
Chceš-li, pak ještě jinak: neověřitelná je jenom funkčnost programu, který má k dispozici **nekonečné** množství prostředků (=>stavů). Jestli potřebujeme nebo nepotřebujeme řešit vlastnosti nekonečných strojů, nechám na posouzení každého.
Vysvětlovat mi step counter nemusíte. To co tu předvádíte, je právě ono trestuhodné zjednodušení. Vy jste se rozhodl množinu nerozhodnutelných problémů rozhodl ignorovat. Jenže to já nemůžu. Nakonec jste svoji argumentaci pohřbil tím, že se nejedná o praktický problém. To se opravdu není o čem bavit.
Blabol :-) No, ale vecne - STK u automobilu mi umozni projit i s 30-let starym automobilem podle pravidel platnych v dobe jeho vyroby a to i kdyz nahradni dily budou sehnatelne maximalne nekde na vrakovistich.
U SW to principialne problem bude - v momente, kdy vyrobce sam prestane vydavat bezpecnosti aktualizace proste neni jak aktualizovat. A to je problem i u sitovych zarizeni/serveru. A nebavime se o beznem SW - casto je "stare" prostredi vyzadovane specifickymi aplikacemi (prumysl, zdravotnictvi,...). Je opravdu dost naivni predpokladat, ze nekdo pujde fungujici aplikaci rozvrtavat tim, ze tam nacpe novy OS s novymi chybami - kdyz kvuli tomu bude mesic stat fabrika, tak to problem bude mnohem vetsi...
Pokud by šlo o zařízení, který mají veřejnou I adresu a jsou přístupný zvenčí, nevidím s STK problém. Stejně životnost zařízení ve firmě bývá tři roky a pak se mění, protože už nedostačuje (větší toky dat, změny služeb, ...) Kdyby někdo zvenku odhalil, že je díra ve firewallu a na routeru je login admin s heslem 1234, bezpečnosti to rozhodně neublíží.
Co ze týká specialit (PLC, ...) ve firmě, tak tam se dá provozovat cokoliv - za routerem, NATem, v IPv4 když ven jde čistá IPv6... Kdyby STK byla po nějaký interface server, který má za sebou na druhé síťovce specialitky, tak není problém ani s tímhle. Tam už je to v kompetenci firmeních IT odborníků.
Stale stejne zvraceny pohled. Clovek, co ma doma router/internet na cteni mailu jej opravdu nepotrebuje co tri roky obmenovat. To je specifikum "geeku", ale u normalnich lidi... dodnes se daji najit funkcni Win2k, deset let stare routery (ktere jsou casto paradoxne spolehlivejsi nez dnesni vyrobky - nejsou tak odflakle pri vyrobe). Specifikace TCPIP/SMTP/IMAP/HTTP je pomerne stara - argument zmen je tudiz vcelku lichy... ono dost veci funguje dodnes i s archaickym SW :-) A v neposledni rade - ani komercni ISP nebudou cpat co tri roky nove CPE k zakaznikum - protoze by jim to v realu dost prodrazilo poskytovani sluzby (oni sami od sebe casto ani nezvedaji ty rychlosti)...
Je třeba to vidět tak, že nějaká nařízení na evropské úrovni už jsou. Např. existuje tzv. Digital Agenda for Europe:
Member States, in cooperation with the Commission should carry out large scale attack simulation and test mitigation strategies as of 2010
Cyber security exercises are still at an early stage in the EU. Member States should therefore develop national contingency plans to deal with cyber-attacks. They should also organise regular exercises for responding to large scale networks security incidents and implementing disaster recovery. These measures should be adopted as steps towards closer pan-European coordination.
Obdoba STK se může dělat v rámci těchto opatření. Pokud by zařízení na straně zákazníka bylo pro významnou komunikační infrastrukturu potenciálně nebezpečné, pak zákazník může být přinucen to zařízení opravit, vyměnit ...
O pravidelných kontrolách typu STK (navržených v článku), případně o pravidelné obměně zařízení, se, pokud vím, v dokumentech na úrovni EU nepíše. Pokud by se to zavedlo v ČR, tak je vysoce pravděpodobné, že by takovou legislativu některé české firmy napadly na úrovni EU. Z důvodu, který uvádíte: zvyšovalo by jim to náklady.
"V prostředí, kde si uživatel není schopen uhlídat svůj počítač (síť) a výrobce za nic neručí, není snadné řešit prevenci ani vyšetřování počítačových útoků."
A chce to vůbec někdo? Asi bych měl tuhle provokativní otázku vysvětlit.
MS dělá opakovaně mnoho let děravý software. Naivní pohled je takový, že se nedokáže poučit z minulosti a stále opakuje tutéž chybu (autoexec médií, autoexec skriptů v outlooku, práce pod administrátorem a další "chyby" ideální pro tvorbu škodlivého software). Přičemž je samozřejmně jasné jak ten systém zabezpečit. Stačí se podívat na UNIXy.
Obchodní pohled je ten, že se kolem toho rovinul rozsáhlý ekosystém firem rýžujících na zajištění bezpečnosti - osobní firewally, antiviry, různé tunner nástroje apod. Miliardy dolarů ročně.
Úplně stejná situace je i se spamem a tzv "bojem proti spamu".
Takže situace se nezmění do té doby, dokud nad technickým zájmem bude vyšší zájem o zisk. Dokud bude výhodnější mít rozbitou platformu, kde se dá zpeněžit její "zabezpečení" než mít stabilní bezpečný OS. Všechno je to jen o penězích a to žádný CISRT nezmění. Protože odborníci vědí už dávno (de facto od počátku internetu), jak by to mělo být, ale neustále narážení na obchodní zájmy.
Ve státní správě se nasazuje hromadě právě ten špatný placený OS (a třeba na Ostravě, kde přechod na OSS fungoval, tak pod tlakem rychle přešli na Windows - viz zápisky Aleše Kapici). Protože z peněz na licence za free software nelze ukápnout "všimné".
Opravdu krasna predstava software se zarukou ... no jo jenomze to by tam musel byt jenom ten soft bez niceho jineho... Chapu, ze spousta lidi s tim nema zkusenosti ... ale muze byt dost jedno jak app napisete .. pokud bezi napriklad na jBossech .. a ty jsou schopne se chovat jinak na ubuntu, freeBSD a windowsech ... a velice radi interaguji s jinymi spustenymi aplikacemi ..... Napriklad pokud chcete placenou podporu pro jBoss .. musi bezet na predem vymezenych zarizeni, na RedHatu s presnym seznamem povolenych aplikaci. Pocitace a operacni systemy nejsou vubec tak deterministicke jak by se mohlo zdat ... na jednu a tu samou pamet saha spousta jinych aplikaci, thready se deli o procesor se spoustou jinych zarizeni atd ... tzn je naprosto jedno jak safe aplikaci napisete ... nikdy vase aplikace neni sama a vzdy bezi na necem .. java aplikace bezi ve virtual machine (leckdy ne jenom jedna) ta bezi pro zmenu na OS .. spolu s ni tam vetsinou bezi jeste velka spousta jinych aplikaci .. a vse se deli o jedny zdroje .. pokud jedna z nich selze nebo zpusobi uzke hrdlo .. zpomali/ci jinak ovlivni tim vsechny ostatni.... Pokud by mela byt skutecna zaruka na software .. byli by mozne pouze 2 moznosti .. kazda aplikace by byla dodana s vlastnim OS a prostredim na kterem by byla stabilni (jeste pravdepodobne otestovana pro konkretni HW sestavy) ... nebo by zaruka byla oklestena takovym mnozstvim ALE ze by to nebyla zaruka ...
Mně úplně stačilo, když ve Firefoxu pro Windows <neexistující_objekt> vrátí NULL, zatímco na Ubuntu použití třeba v podmínce if(<neexistující_objekt>) klekne s chybou skriptu a musí se nejdřív přiřadit hodnota proměnné, pak v bloku try přiřadit té proměnné testovaný objekt a až pak testovat tu proměnnou, kde může být ten objekt, nebo ne.
Na automobilech dobře vidíme, jak státem nařízená STK funguje (nebo spíš nefunguje):
Ti, kteří se chtějí starat o své auto, by se starali i bez STK. STK je pro ně další zbytečný výdaj navíc.
Ti, kteří se nestarají, pro ně je STK také jen další výdaj, plus výdaj na úplatek, aby jejich vozidlo prošlo tak, jak je.
A pohled do statistik říká, že i kdyby bylo STK naprosto dokonalé, dokázalo by předejít jen několika procentům těžkých nehod, neboť příčinou ostatních stejně není závada na vozidle.
Je pochopitelné, že stát má zájem tento nefunkční koncept rozšířit i do jiných oborů.
Ale nepochybují, že by STK počítačů dopadla stejně:
Ti, kteří chtějí na svůj software záruky, si je mohou pořídit již dnes.
A těm ostatním by záruky software výrazně prodražily. Často natolik, že by se stal nedostupným.
Podívejme se, kolik stojí enterprise verze od Redhatu nebo SUSE se všemi certifikacemi. V podstatě tentýž software bez certifikací je zdarma. Dnes si má zákazník možnost vybrat - zdarma a bez záruk, nebo zaplatit záruky a servis. Pokud stát nařídí povinné certifikace, budou všichni tím postižení muset používat drahé státem certifikované verze.
Pokud by byla skutečná potřeba koordinačního orgánu pro počítačovou bezpečnost, nepochybuji, že IT firmy by se na tom dokázaly dohodnout samy. Bez potřeby "neziskového" prostředníka placeného z našich daní. Stejně tak, jako bez pomoci státu fungují NIC a NIX.
Suhlas. Dobre si to napisal. STK na auta vobec nieje potrebna. pri dnesnych modernych autach s kopu elektroninky uz vobec nie. ko mi zaruci, ze pocas tych dvoch rokov to auto bude splnat podmienky STK. Kludne sa mi moze nieco pokazit tyzden po STK a smelo s tym mozem jadzit cele dva roky.
Ak by sa vyratalo kolko stoji cele STK a co za tu hromadu penazi a casu ziskame, tak uz je to davno zrusene.
To iste plati aj pri PC. Ziadna STK ma nedonuti udrziavat veci lepsie ako ja sam chcem(alebo zakaznik). Bude to len dalsia buzeracia a vytvaranie teplych miestociek.
Článek je prima, ale spousta podobných návrhů už byla formulována na úrovni EU a jejich zavedení je jen otázkou času. (Pokud se EU nerozpadne.) Mám na mysli třeba "Proposal for a DIRECTIVE OF THE EUROPEAN PARLIAMENT AND OF THE COUNCIL concerning measures to ensure a high common level of network and information security across the Union" z 2013-02-07, viz odkazy na http://ec.europa.eu/ceskarepublika/press/press_releases/13_94_cs.htm