Ne. Výchozí stav by měl být takový, že kdo vědomě implementuje backdoor tohoto typu (zadání requirementu nebo commit do GITU/SVN z vlastní iniciativy), by měl platit uživatelům všechny škody, co tím způsobí. Bez pardonu. Výkupný, ušlý zisky, odškodný za zneužití údajů,... Jinak se s bezpečností neposuneme dál.
Někdo naprogramuje databázi, dá ji zadarmo navíc jako opensource včetně vytvoření dokumentace a všeho a měl by platit jinému, který to nainstaluje na veřejnou ip, nezvolí si ani heslo a dá tam ostrá data (bez zálohy)? Mongo neinstalují BFU, kteří potřebují "pozor může být horké" i na hrnku s čajem. Ale vy možná požadujete odškodnění pokud vám někdo uvaří čaj a nezajistí, aby nešel vypít, dokud neschladne.
To je pravda, na druhou stranu je opravdu na zamyšlenou, jestli je opravdu nezbytné vydávat SW s takovým nastavením a případně když už, tak tam dát aspoň varování, protože člověk opravdu může něco přehlídnout a nejsem si opravdu jistý, jestli jestli všech těch 32k jsou idioti - to je trošku na zamyšlenou - nevidím jediný důvod proč dávat do def. konfigurace nějakou potenciální díru, ale naopak vidím důvodů spoustu proč to nedělat
Předpokládám, že takovou DB nepíše úplná lama, ani když je to zadarmo. Tak snad má mít tucha o základních pravidlech bezpečnosti, jako třeba "ven pošli jenom to, co uživatel nutně potřebuje", "ověřuj, s kým komunikuješ", ...
Btw, podle CZ legislativy právně odpovídáš i za špatnou radu, pokud radíš z pozice odborníka. Takže nechápu, proč by autor SW neměl mít jako odborník zodpovědnost za to, že udělá celý řetězec chyb:
- povolen admin přístup jako opt-out
- admin přístup bez hesla a ověření (např. certifikátem)
- nedostatečná dokumentace téhle hypercool featury
A sorry, pokud v dokumentaci k produktu není psáno nic o tom, že je backdoor na tom a tom portu na admin úrovni a ještě bez hesla, tak je to už začíná smrdět nejenom zodpovědností za škodu, ale i kriminálem.
Tak snad má mít tucha o základních pravidlech bezpečnosti
To zcela nepochybně, ale ta potucha o bezpečnosti by se měla týkat pouze produktu samotného a nikoliv všeho okolo.
To, že něco poslouchá na nějakém portu ještě vůbec neznamená, že admin je povinen ten port vystavit do světa. Všechny síťové služby poslouchají na nějakém portu. To není backdoor, to je vlastnost. ;-)
Btw, podle CZ legislativy právně odpovídáš i za špatnou radu, pokud radíš z pozice odborníka.
Jenže autor toho SW nikomu žádnou radu nedal. Defaultní konfigurace není rada, je to nastavení pro jednu konkrétní situaci, která může být perfektně validní. V jiné situaci validní být nemusí. A kdyby bylo defaultní zabezpečení udělané maximálně (localhost only, ssl crt), tak by se stejně na nějakém fóru okamžitě objevila rada, jak to nastavit pro přístup odkudkoliv - když se to přežene, tak to všichni budou vypínat, tak jako se vžilo pravidlo vypnout selinux).
Bezpečnost přece nelze stavět na "defaultním" nastavení balíčků.
Na druhou stranu je pravdou, že dřív byla slušnost chybu nejdříve oznámit a až potom zneužít. Jenže možná právě tato zkušenost donutí ty adminy si lépe nastavit i další služby.
Ty jsi jeden z tech postizenych hnupu? Vypada to tak :)
Sorry, ale za demenci se plati, kdyz ses tak tupej, ze nechavas nahodne otevrene porty do sveta, tak nemas delat admina.
Kvuli takovym hlupakum jako ty se "musi psat na mikrovlnky, ze nejsou urcene pro suseni kocek". Radsi uz nic nepis, a nejlip nic nedelej. Z toho co pises vypada, ze min skody nadelas, kdyz budes pobirat davky a radsi na nic nesahat.
jj, widloadmin ... na tuxovi bejva zvykem, ze co ma bezet lokalne, nebezi verejne, a firewall se pouziva tak maximalne pro omezeni pristupu ke konkretni sluzbe, ktera pristupna byt ma, ale jen odnekud.
Zadna normalni tuxi sluzba se totiz sama od sebe nespusti, natoz verejne. A i u tech, ktery pro verejnej provoz urceny sou, je v drtivy vetsine pripadu treba rucne zmenit konfiguraci a povolit to. Prave proto, ze autor vychozi konfigurace je svepravnej.
To už je lepší unix socket.
Jinak nejsem příznivcem toho, že si každá aplikace zvlášť určuje (třeba tím bindem) kdo se na ní může a nemůže připojit. Toto podle mě není úlohou dané služby, ale firewallu. Služba by se měla starat pouze o vlastní činnost (dle vzoru dělej jednu věc a dělej ji pořádně), od síťové filtrace jsou tu jiné komponenty.
Ano na jednu stranu je to nemorální od útočníků, na stranu druhou desetitisíce adminů byly poučeny "drsnou cestou" a další možná i statisíce se poučí z cizí chyby.
V tomto případě je to stejné jako nechat dům odemčený a ještě k tomu otevřené dveře dokořán a pak se divit že někdo mě vykradl, dal věci od zastavárny kde si je můžu znova koupit.
Kdo spáchal commit který za tímto stojí by měl být okamžitě vyhozen z projektu aby měl trochu víc času se učit něco o základech bezpečnosti, ale není důvod aby někomu platil škody, byl to software zdarma poskytovaný bez záruky.
A jak jinak chces ty kreteny donutit k tomu, aby si to zabezpecili? Kdyz vymontujes dvere u bytu, a nekdo te vykrade, tak sice zlodej bude porad zlodejem, ale TY dostanes flastr (pokud ze sebe udelas toho debila a pudes to nahlasit), ze si byt nezabezpecil. A pojistovna ti samo neda nic.
Náhodou nodejs je fasa vec... nechápem na čo sa byť do prs že aký zložitý jazyk viem a programovať jednoduchú pi*** v cečku (najhorší idiot je ten ktorý robí jednoduché vecí zložitým postupom a ešte sa preto cíti inteligentný)... keď si to môžem jednoducho a rýchlo spraviť v javascripte.... Proste JavaScript rullez ! Ten meteor musí byť určite fasa zlepšovák...
Meteor je výborná platforma na urychlení vývoje NodeJS aplikací. Nicméně neříkám, že to je nutnost. Záleží na vašem rozpočtu a vkusu (např. nemusíte řešit komplexní Webpack, popř. Babel, vše funguje out of the box, backend je zjednošený, takže ho napíše i frontend developer..).
Co se týče full stack Javascriptu / EcmaScriptu z business hlediska IMHO poskytuje prostě nejlepší poměr cena/výkon. Proto většina nových projektů a startupů využívá JS přístup jako samozřejmost. Uživatelům je totiž jedno jestli je backend napsaný v Pythonu, Ruby, Javě nebo třeba Fortranu:-).. Oni chtějí kvalitní produkt (v případě web. aplikace = SPA přístup), a zakladatelé/investoři zase chtějí ten produkt vytvořit v co nejkratším čase za nejmenší peníze..
"kvalitní" je tady to důležité slovo, které je velmi relativní. Z pohledu uživatele, se rozhodně nejdná o kvalitu, když je to zranitelné, přetěžuje to browser, a má to spoustu dalších neduhů "rychle" vyvynuté aplikace. Zadavatel ale často kouká na pořizovací cenu, a nedohlédne to, že to bude potřeba taky provozovat (respektive na provozování není udělán odhad a následně se to spíš provozuje "samo", než aby se tomu někdo věnoval). A na takové projekty se nodejs a podobné nové technologie používají, takže právě tyto projekty dělají jméno těmto technologiím z pohledu spolehlivosti. Na druhou stranu, jsou to právě tyto technologie, které dovolí rychle vyvinout prototyp aplikace, který je možný předvést zadavateli. No a když už se zadavateli ukázalo, že to funguje, tak už to přece nepotřebuje dodělat....
Tohle by se dalo změnit, kdyby zadavatel zaplatil část peněz hned a část až po nějaké době používání, s tím, že by muselo být ve smlouvě/zadání ošetřeno s čím se musí umět aplikace vyrovnat. To ale zase prodražuje zadání aplikace, protože si na to musí někdo sednout a ve své pracovní době pořádné zadání udělat....
Ach jaj.
Propomina mi to situaciu okolo Raspbianu.
Ked v predchadzajucej verzii bol uzivatel 'pi' s defaultnym heslom, a povoleny ssh pristup.
Bolo zle, lebo .... moc otvoreny pristup a uzivatelia si menenia hesla.
Potom bolo, ze ssh nebezalo by default, ale trebalo ho zapnut cez konfig na /boot particii.
Zase zle.
Suhlasim s tym, ze ked je to instancia dostupna z internetu, tak by mal byt nejakym sposobom zamedzeny pristup. Toto je ale vec uzivatela/admina.
Třeba to bude mít i ten sympatický efekt, že budou vyházení ze svých kutlochů i "takyadmini"...