Bezpečnost na internetu
23. Květen 2000, 00:00 (3678x zobrazeno)Hesla - útok hrubou silou
Jedním z nejjednodušších způsobů, jak se potencionální narušitel dostane do vašeho systému je uhodnutí hesla. V současné době již existuje natolik dokanalý software, který je schopen během poměrně krátkého časového okamžiku vyzkoušet obrovské množství kombinací znaků (tzv. útok hrubou silou). Kromě toho tyto programy disponují obsáhlým slovníkem, z něhož se generují nejčastější řetězce používané jako hesla. Může te si být téměř jistí, že hesla typu: "heslo", "jméno_vaší_přítelkyně" apod. není žádný problém odhalit. Některé systémy, například OpenVMS se před těmito útoky brání tak, že uživateli, který opakovaně zadá chybné heslo dočasně zablokují přístup.
Hesla - útoky sociální
Dalším nebezpečím jsou tzv. sociální útoky, využívající k proniknutí do systému vaší chybu a případně znalosti o vaší osobě (neměl bych to přiznávat, ale kdysi dávno se mi povedlo tímto způsobem uhodnout heslo svého kolegy). Takže není vhodné jako heslo používat své rodné číslo, jméno manželky za svobodna, svůj oblíbený nápoj a nebo oblíbenou postavu z večerníčku :-). Mám bohaté zkušenosti z doby, kdy jsem v jedné velké firmě dělal správce sítě. Nebyl problém zavolat, představit se jako správce sítě a požádat dotyčného o sdělení uživatelského jména a hesla! Také při návštěvě kanceláří se dost často objevovala hesla nalepená přímo na terminálu případně na klávesnici a o vhodnosti jejich výběru ani nemluvě.
Jak by mělo tedy heslo vypadat? Nejdůležitější je sám heslo chránit. Tzn. nikam jej nepsat, nikomu nesdělovat, zvláště ne do telefonu a používat různé hesla pro různé systémy. Často se totiž stane, že musíte jedno heslo sdílet s více lidmi. Zároveň je třeba se mít napozoru před různými internetovými službami a protokoly. Například HTTP autentifikace, telnet a nebo POP3 protokol pro čtení pošty posílají heslo přes síť buď nezašifrované a nebo zašifrované známou, obousměrnou (tj. heslo lze dešifrovat) metodou. Všechny tyto služby už mají v současné době své "bezpečnější brášky", například SSL, SSH a podobně. Někde jsem četl, že velké firmy si najímají lidi, které provádí sociální útoky přímo na zaměstnance dané organizace. Kdo své heslo prozradí, má problém :-).
Druhým důležitým prvkem ochrany je vhodná volba hesla. Heslo by mělo být alespoň 6 - 8 znaků dlouhé a kromě velkých a malých písmen by mělo obsahovat ještě další znaky, jako jsou číslice, interpunkční znaménka a další speciální znaky. Melo by být také snadno zapamatovatelné, protože tím, že si ho nemusíte nikam napsat, zvýšíte jeho bezpečnost. V žádném případě by němelo být tvořeno jedním slovem, bezpečná není ani kombinace slova a číslice (např. jirka2). Oblíbeným, ale dnes již známým trikem je psát na klávesnici heslo o jedno (nebo více) písmenko doprava (a nebo doleva :-), takze například místo hesla "franta" vznikne "gtsmys". Nejlepší heslo vznikne tak, že si vymyslíte tu nejobskurnější kombinaci znaků a pak si ji zapamatujete :-). Lze ale také vytvořit heslo tak, že vezmete první písmena prvních několika slov nějaké básničky, budete střídat malá a velká písmena - například "sPpO,pZl" (oblíbená Skákal pes přes oves ;-). Systém OpenVMS umožňuje správci zvolit možnost, že uživateli se při změně hesla vypíše několik variant, které systém vygeneruje a uživatel si musí jednu z nich vybrat.
V neposlední řadě je také třeba vědět, jak s hesly nakládá samotný operační systém. Zde budu mluvit konkrétně o Unixu, protože hesla ve Windows jsou vhodná pouze proto, aby měl každý vlastní rozmístění ikonek na ploše :-). Ve starších systémech (a nebo ve špatně nakonfigurovaných systémech) se hesla ukládala do souboru /etc/passwd. Tento soubor měl práva nastavena tak, že jej mohl číst jakýkoliv uživatel. Hesla zda samozřejmě byla uložena v zašifrované podobě - pomocí funkce crypt. Modernější systémy používají soubor passwd pouze k uložení údajů o uživateli a heslo je uloženo v souboru /etc/shadow, který však může číst pouze root (správce) - tím je zaručena větší bezpečnost. I když je funkce crypt nesymetrická (tj. ze zakódovaného tvaru nelze zpětně určit původní heslo), je možné zneužít znalosti zakódovaného tvaru k "útoku hrubou silou". V současné době se již ke kódování hesel používají bezpečnější algoritmy, např. MD5.
Hardwarové útoky
Využívají k útoku nedokonalosti hardware. Mezi nejznámější patří tzv. sniffing, tj. na síti odposloucháváme pakety, které nám nepatří. Například na síti typu Ethernet (jeden z nejrozšířenějších typů) se data neposílají konkrétnímu počítači (není to ani možné), ale celému segmentu. Pomocí vhodného software lze donutit síťovou kartu, aby zachytávala všechny pakety. V nich je pak možné najít spoustu zajímavých informací, například uživatelské jméno a heslo :-). Odposlouchávat komunikaci lze ale i "napíchnutím se" na kabel mezi počítačem a modemem. K technicky náročnějším odposlechům patří například "odposlech monitoru" - každý monitor vyzařuje silné elektromagnetické pole, které je možno zachytit.
Do této zkupiny by se dala zařadit i fyzická bezpečnost serveru. Pokud jej nemáte řádně zabezpečený, můžete mít ochranu jakou chcete, když si někdo počítač odnese (a nebo si "půjčí" disk), dostane se do něj vždycky. Ochrana počítače heslem v BIOSu je naprosto nedostatečná, jednak nezabrání vyjmutí disku a navíc lze snadno zrušit resetováním paměti CMOS. I zde však existuje pomoc - některé programy dokáží zašifrovat disk, takže ten kdo nezná heslo, nemá šanci získat jakákoliv data. Pokud však heslo zapomenete, jste bez šance i vy, zachránit data již nedokáže nikdo.
Softwarové útoky
Softwarové útoky jsou zřejmě nejčastější zbraní hackerů. Využívá se zde nedokonalosti programů a nebo protokolů k proniknutí do systému.
Buffer overflows
Tento druh útoku je zřejmě nejrozšířenějším typem softwarových útoků. Využívá chyb v programech. Program se nepodívá zda má při zápisu do paměti dostatek místa a něco zapíše do oblasti kam by normálně nemohl. To se může využít například ke spuštění rootovského shellu.
DoS attacks
Dos (denial of Service - odepření služby) jsou jedny z nejčastějších typů útoků. Většinou slouží pouze jako první fáze útoku, slouží totiž většinou k odstavení určitého počítače. Patří sem například SYN flood útok (zaslání TCP paketů s žádostí o navázání spojení z nedostupného počítače), ICMP bombing (viz dále), ARP cache poisoning (rozesílání falešných ARP zpráv) a nebo přetížení mailserveru velkým množstvím majlů.
Source routing attack
Útočník si vybere počítač, který je uveden v některém souboru .rlogin cílového stroje a tento počítač "zneviditelní". To se provede další technikou, ICMP bombing, tj. napadenému počítači se pošle zpráva o nedostupnosti cíle. Pak již stačí vhodně upravit pakety a vydávat se za "zneviditelný" počítač. Tento způsob útoku je již ale dlouho znám a většina systémů se proti němu umí bránit.
Mitnick Attack
Zde se hacker snaží uhodnout číslo paketu a podstrčit tak vlastní pakety a obejít autentifikaci. Většina firewallů je však schopna rozpoznat paket, který přichází z vnější sítě a má zdrojovou adresu vnitřní sítě.
Existuje další nepřeberné množství softwarových útoků, například: TCP hijacking, FTP bouncing, Racing attacks a další...




linkuj.cz
del.icio.us
rss - HOWTO




