Učební osnova pro začínající haxory

Zdroj: SOOM.cz [ISSN 1804-7270]
Autor: .cCuMiNn.
Datum: 7.9.2004
Hodnocení/Hlasovalo: 1.49/403

aneb hackerem ne zrovna snadno a ne zrovna rychle :)

Když si vzpomenu na své začátky v oblasti hackingu, nemohu se zbavit pocitu, že nikde nebyly žádné informace a přitom jich bylo všude nekonečné množství. Vůbec jsem nevěděl z kterého konce začít a jak pokračovat dál. Mnoho dnešních lamerů mi svými dotazy na bordech tyto chvíle připomínají a já se jim proto pokusím ukázat cestu v tomto nelehkém začátku. Každého kdo by se chtěl touto cestou vydat však musím předem upozornit, že hacking není žádná procházka růžovým sadem. Než se dopracujete do stádia, kdy se vám začnou jednotlivé střípky této mozaiky skládat dohromady uteče spousta času. Hacking je celý založen na znalostech z čehož vyplývá, že se budete muset neustále učit a zdokonalovat. Budete často učením trávit i mnoho hodin denně, aby jste stihli vstřebávat informace rychleji, než je tempo kterým ujíždí vlak vývoje nových technologií. Pokud však jednou pochopíte smysl na kterém stojí a pracují počítačové sítě a další nezbytné základy, pak pro vás bude získávání nových vědomostí spíše příjemnou zábavou než čímkoliv jiným. Jestliže tedy nemáte dostatek volného času, který by jste této záležitosti mohli věnovat, radši na hacking zapomeňte a najděte si jiný koníček. Tento článek není žádným návodem. Je spíše takovou malou rukojetí, které se můžeš přidržet pokud nebudeš vědět kudy dál. Vyhledání bližších informací k jednotlivým tématům však nechávám zcela na tobě a uvedu zde jen body, které ti pomohou v jejich nalezení. Tyto body budu psát tučným písmem a stačí když si je zadáš do jakéhokoliv internetového vyhledávače.

Začínáme...

Předně by si měl začínající hacker zjistit informace o tom, co to hacking vůbec je. Měl by si najít nějakou tu filozofii hackingu a dokázat se zařadit. Měl by vědět čeho chce dosáhnout a podle toho pak v cyberspace vystupovat. Dříve než se takový začátečník pustí do zkoušení nově naučených praktik, měl by být také alespoň zhruba seznámen se zákonem, konkrétně s pojmem počítačová kriminalita. Hacking (i když morální) není vždy zrovna legální. Až se pak jednou dostaneš do průseru, bude pozdě se ohánět slovy "já to nevěděl". Nejdůležitější věcí, kterou ke svému učení budeš potřebovat je bezpochyby znalost internetových vyhledávačů. Snad nejznámější a nejobsáhlejší vyhledávač Google naleznete na adrese http://www.google.com. Rozhodně se nepouštěj do dalšího studia dříve než si plně osvojíš způsoby vyhledávání informací. Doporučuji ti prostudovat minimálně základní vyhledávací techniky v Příručce Google hackera. Mohlo by se totiž stát, že si svými neuváženými dotazy na bordech naděláš spousty nepřátel a utržíš mnoho různorodých nadávek.

Pokud jsi tedy již zvládnul techniky vyhledávání informací a máš stále chuť stát se hackerem pak určitě i ty prahneš po znalostech toho pravého haxorského softu. K jeho používání však budeš potřebovat alespoň minimální znalosti adresace na Internetu. Hlavně musíš vědět co je to IP adresa a také způsoby získání IP adresy počítače. Není také od věci si zjistit pár informací o internetové anonymitě a zanechávání stop na internetu. A nyní již k samotným programům, kterých existuje opravdu velké množství a stačí si jen vybrat ten správný. Mezi ty nejjednoduší patří keyloggery, které slouží k logování stisknutých kláves na napadeném počítači. Dále pak trojské koně (jinak též: trojan, backdoor). Ty nám otvírají zádní vrátka do napadeného systému. Můžeme tak většinou napadený počítač vzdáleně ovládat stejně, jako bychom seděli přímo u něj. Fake mailery a mail bombery, nám dávají možnost odeslání e-mailových zpráv pod falešnou hlavičkou. Nejčastěji je uváděn falešný odesilatel mailu. Tyto programy se dají použít i k zasílání velkého množství zpráv určitému příjemci, což může vést k zaplnění jeho mailové schránky, nebo mobilního telefonu. Dalším druhem hackerských programů jsou sniffery. Pomocí nich můžeme odchytávat data putující sítí a často se tak můžeme dostat k přístupovým jménům a heslům. Nakonec zde ještě uvedu nukery, sloužící ke vzdálenému shození (restartu) počítače nebo nějakého spuštěného procesu.

Pokud jsi se již dostatečně vyřádil při používání výše uvedených programů. Můžeme přistoupit k již trochu složitějším věcem. Pro další studium se neobejdeš bez znalosti aplikačních protokolů a portů, na kterých běží. Prozatím není důležité se jednotlivé protokoly učit dopodrobna včetně jednotlivých příkazů, nicméně časem se tomu stejně nevyhneš. Pro začátek bude stačit když se naučíš, k čemu jednotlivé protokoly slouží a na jakých portech jsou standartně spuštěny. Také by ses již měl blíže podívat na IP adresy. Měl by sis zjistit jaké rozeznáváme druhy sítí (LAN, WAN...) a co je to veřejná a neveřejná (skrytá) IP adresa. Také něco o speciálních IP adresách, třídách sítí a jejich adresaci. Co jsou to podsítě a masky sítí. Obeznam se také se systémem DNS a programem NSlookUp, který slouží k převodu doménového jména na IP adresu a zpět. Zajímavým tématem je zde také přenos zóny. Znalost domén nejvyšší úrovně také není k zahození. Práce s programem Telnet by ti neměla činit žádné problémy. Nauč se získávat stopy z Internetu, něco o mapování sítě a službě Whois. Nezapomeň také nahlédnou na Internet z fyzické stránky. Zjisti si, z jakých částí se sítě skládají, co jsou to huby, switche, routery..., k čemu slouží a jak pracují. Na chviličku nyní odběhneme od teorie a podíváme se opět na některé z programů, které můžeme využít. Scannery jsou programy, které slouží k automatickému vyhledávání informací. Rozeznáváme port scannery, které zjišťují, které z portů jsou na daném počítači otevřeny a jaké služby na nich běží. Dále pak doménové scannery, které zjišťují aktivní počítače v dané síti a hromadné scany, vyhledávající na síti stroje s určitým softwarem, chybou nebo trojským koněm. Existují i CGI scannery, které na stroji vyhledávají známé chyby.
Nyní na chvíli od scannerů odběhnu a podívám se na programy, které slouží k vyšší anonymitě na internetu. Jsou jimi různé redirectory, které sklouží k přesměrování paketů a utajení naší skutečné IP adresy. Při surfování na internetu je dobré využívat anonymní proxy servery, které naši IP adresu také maskují. Když jsme se nyní trochu zahalili a víme již jak zjistit služby běžící na daném stroji je načase zkusit se do některé z nich nabourat. Většina z nich však po uživateli požaduje autorizaci, tzn. zadání uživatelského jména a hesla. O způsobech jakým si lidé dávají hesla a jak je uhádnout, kde jsou hesla v počítači uložena a o způsobech kryptování bylo již také napsáno mnoho. K automatickému zjišťování hesel pak slouží programy nazvané crackery. Z těchto programů zde uvedu nejpoužívanější zástupce, kterými jsou Brutus a WWWhack. K použití těchto programů musíš vědět něco o různých způsobech útoků. Slovníkový útok (directory atack), zkouší hesla obsažená ve slovníku, tzv. wordlistu. Naopak útok hrubou silou (Brute force) zkouší prolomit heslo kombinací všech možných znaků. Dalším ze způsobů jak se dotat do systému, je využitím specifické chyby určitého programu. Takovéto chybě a malému prográmku, který této chyby využívá se říká exploit. Existuje jich mnoho druhů a snad pro všechny používané programy. Blíže se seznam s protokoly ARP a ICMP a s jejich funkcí na přepínaných sítích. V této souvislosti se nezapomeň podívat na téma ARP redirect. Zvláštním útokem je také třeba přetížení sítě nebo serveru, vedoucí k vyvolání DoS nebo DDoS, čili odepření služeb.

Jednou z věcí, kterou se hacker vyznačuje, je znalost mnoha operačních systémů. Měl bys tedy ovládat alespoň ty nejpoužívanější operační systémy. V oblasti hackingu je však nejpoužívanějším systémem Linux a jeho dokonalé zvládnutí je jednou z podmínek k širším obzorům. Časem také přijdeš na to, že dostupné programy nesplňují všechny tvé požadavky, že jsou tebou nasazení trojani odhaleni antivirovými programy, a že by bylo vhodné si takovéto programy vytvářet sám. Budeš se tedy muset naučit programovat a to nejlépe v C/C++, znalost dalších programovacích jazyků ti bude vždy jen k užitku. Naučíš se HTML, JAVAscript, PHP, ASP, SQL a mnoho dalšího. Také už bys měl dokonale ovládat jednotlivé aplikační protokoly a vědět něco o útocích na databáze tzv. SQL injection. Měl bys vědět jak vkládat kapsle s kódem do e-mailových zpráv a vědět vše o struktuře takovéto zprávy, včetně standartu MIME. Měl bys více proniknout do struktury sítí a protokolů. Měl bys přesně vědět co se stane s daty v každém uzlu sítě. Kudy data putují a jakými uzly prochází můžeš zjistit pomocí programu traceroute. V cestě však mohou stát firewally a různé filtry, které se nauč obcházet a identifikovat.
Měl bys vědět, jak se loguje tvá činnost a jak tyto logy zfalšovat. Prostě umět za sebou zahladit stopy. Neměla by pro tebe být problém změna identity spoofováním IP, také bys měl zvládnout DNS spoofing a znát i jiné metody spoofování. Vyhledej si také informace o různých chybách (bug) v programech a nauč se je využívat. Jednou z nejdůležitějších věcí je také ovládnutí anglického jazyka, bez kterého se v oblasti hackingu prostě neobejdeš a v neposlední řadě bys měl zlepšit své komunikační schopnosti a nučit se základy sociálního inženýrství k manipulaci s lidmi.
Ještě jsem zapomněl uvést, že je vždy dobré zkusit si vše z obou stran, proto se nauč i administraci různých serverů a budeš-li myslet na svou budocnost nezapomeň ani na obranu proti těmto útokům :)

Pokud jste dočetli až sem a naučili jste se všechny věci, o kterých jsem psal, pak před sebou máte otevřené dveře a mou poklonu. Nicméně není to ještě zdaleka konec vaší cesty, protože je stále spousta věcí, které se musíte naučit k tomu, aby jste byli nejlepší.
Snad jsem na moc věcí nezapomněl. Pokud ano máte opět možnost mě opravit nebo doplnit v komentářích.

.cCuMiNn.