Příručka Google hackera
Překlad dokumentu "The Google Hacker's Guide" od Johnnyho Longa, aneb jak vyhledávat a hackovat s pomocí Google, případně jak se bránit. Je to jen otázka pohledu.
Porozumění Google hackerům a obrana proti nim
Z originálu:
The Google Hacker's Guide
Understanding and Defending Against the Google Hacker
Johnny Long
johnny@ihackstuff.com http://johnny.ihackstuff.com
přeložil:
.cCuMiNn.
ccuminn@seznam.cz
Originál tohoto dokumentu je možné stáhnout na:
http://johnny.ihackstuff.com/security/premium/The_Google_Hackers_Guide_v1.0.pdf
Tento překlad bude možné stáhnout v pdf na adrese:
časem doplním :)
Vyhledávací nástroj Google naleznate na internetové stránce www.google.com.
Nabídne vám různé možnosti vyhledávání. Prohledává web, obrázky, skupiny a adresář.
Tyto možnosti poskytují spoustu výhod pro snadné surfování na internetu,
ale dovolují i daleko více nečistých možností zcela zlomyslným internetovým
uživatelům jako hackerům, počítačovým zločincům, zlodějům identit a dokonce i teroristům.
Tento dokument poukazuje na černé stránky vyhledávače Google s tím,
že bychom pro něj společně mohli používat termín "Google hacking".
Cílem tohoto dokumentu je vést webové administrátory a jiné lidi zabývající
se bezpečností na síti v naději v lepší utěsnění děr, jimiž touto cestou prosakují informace.
Techniky vyhledávání pomocí Google
Webové rozhraní Google
Vyhledávací nástroj Google je fantasticky jednoduchý na používání.
Navzdory této jednoduchosti je však velice důležité řádné porozumění základním
technikám v dalším postupu k plnému pochopení více pokročilých funkcí.
Nejjednodušší dotaz pro vyhledávání pomocí Google může obsahovat jen
jediné slovo vložené na vyhledávací stránku www.google.com.
Dále budou popsána různá nastavení dostupná z hlavní stránky www.google.com.
-Nástrojová lišta Google (toolbar)
Internet Explorer umožňuje použití nástrojové lišty Google
(ke stáhnutí na http://toolbar.google.com), nainstalované a umístěné ve vrchní
části prohlížeče, pod polem s adresou. Nástrojová lišta také umožňuje použití
pokročilých vyhledávacích funkcí. Některým uživatelům (různé druhy webových prohlížečů,
mobilní telefony, atd.) je však přístupná pouze vyhledávací webová stránka www.google.com.
-Nabídka: Web, obrázky, skupiny, adresář
Záložky z této nabídky umožňují na Internetu prohledávat buďto webové stránky, fotogalerie,
zprávy diskusních skupin nebo adresářový seznam Google.
-Oblast pro zadání dotazu
Tato oblast je umístěna hned pod výše zmíněnou nabídkou. Tato textová oblast
umožňuje uživatelům zadat dotaz pro vyhledávání. Pravidla pro psaní těchto dotazů budou popsána později.
-Tlačítko: vyhledat Googlem
Toto tlačítko předá dotaz zadaný uživatelem k vyhledání. V mnoha prohlížečích stačí
stisknout klávesu ENTER pro aktivaci tohoto tlačítka, po napsání dotazu.
-Tlačítko: Zkusím štěstí
Namísto seznamu nalezených stránek nám stisk tohoto tlačítka zobrazí rovnou stránku s
největším rankem pro hledaný výraz. Častokrát tato stránka nanejvýš odpovídá naší představě.
-Pokročilé vyhledávání
Tento odkaz zavede uživatele na stránku pokročilého vyhledávání.
Mnoho z funkcí pokročilého vyhledávání je z této stránky dostupných,
avšak některé pokročilé vyhledávací prvky na této stránce nenajdeme.
-Nastavení
Tento odkaz uživatele zavede na možnost nastavení několika parametrů.
Tyto jsou uloženy v cookies na uživatelově počítači pro příští použití.
Nastavit zde můžeme rodný jazyk, různé filtry, množství jednotlivých výsledků
zobrazených na stránce a upřesnit rozlišení obrazovky.
-Výběr jazyka
Tento odkaz zavede uživatele na stránku vyhledávání v různých zemích a jazycích.
Jakmile jednou uživatel odešle svůj dotaz k vyhledání, kliknutím na tlačítko "Vyhledat googlem"
nebo stiskne ENTER v oblasti pro zadání dotazu, bude zobrazena stránka s výsledky.
Výsledky hledání umožňují uživateli zkoumat jednotlivé nalezené stránky různými cestami.
-Topline: Nejvyšší řádka
Nejvyšší řádka výpisu je přehled o výsledku hledání.
Zde uvedená čísla nás informují o počtu nalezených výsledků, o číslech právě
zobrazených záznamů a o čase, který náš dotaz vyžadoval pro své vyřízení.
Každý nalezený záznam dále obsahuje:
-Hlavní odkaz na stránku
Tento odkaz tě zavede přímo na webovou stránku nalezeného záznamu.
-Archiv
Tento odkaz tě zavede na kopii webové stránky, kterou si vytvořil Google.
Tato vlastnost Google je velice praktická pokud byla webová stránka změněna nebo dokonce odstraněna.
Další výhodou této vlastnosti je anonymita, které se budeme věnovat později.
-Podobné stránky
Tento odkaz ti předhodí stránky, které má Google zařazené pod stejnou kategorií ve svém adresáři.
-Sponzorované odkazy
Odkazy v tomto sloupci si zaplatili jednotlivý inzerenti. Také tyto odkazy by však měli odpovídat tvému požadavku.
Za určitých okolností se může stát, že Google vygeneruje stránku, na které se nám Google pokouší sdělit, že nenašel žádný odpovídající záznam. Zkus překontrolovat nebo pozměnit svůj dotaz.
Kromě stránky, která nás informuje o nenalezení žádných výsledků může nastat ještě případ, kdy se nám objeví velmi strohá stránka, ketrá nás informuje o tom, že jsme odeslali prázdný dotaz. Zřejmě došlo ke stisku klávesy ENTER dříve než byl zadán hledaný výraz do správného políčka.
Existuje ještě daleko více vyhledávacích funkcí Googlu, které v tomto článku nejsou popsány. Teď se však podíváme na ty základní.
Základní vyhledávací techniky
-Hledání jednoho nebo více jednotlivých slov
Základní vyhledávání Google, které teď popíši se skládá z jednoho nebo více slov zadaných volně do vstupního pole.
Například:
máslo
zdravé máslo
zdravé máslo rama
‚+'
Když zadáte několik slov, která chcete vyhledat ,Google automaticky zkouší najít všechna obsažená slova s použitím Boolean operátoru ‚AND'. Některé vyhledávací nástroje mohou používat k označení Boolean operátoru ‚AND' znaménko plus(+). Google však používá znaménko plus(+) v jiném významu, který bude popsán o trochu níže.
Když Google přijme základní vyhledávací dotaz tak ten může obsahovat i velmi běžná slova jako: ‚then' ‚how' nebo ‚where'. Tyto slova budou častokrát z dotazu vypuštěna.
Pokud chceme Google donutit aby tato běžná slova také zahrnul do dotazu předcházíme toto běžné slovo znaménkem plus(+). Nepoužívejte mezeru mezi znaménkem plus a hledaným slovem.
Například následující dotazy mají poněkud odlišné výsledky:
where quick brown fox
+where quick brown fox
Operátor (+) může být také použit v pokročilých Google dotazech jak bude popsáno níže.
‚-'
K vyloučení slova z vyhledávání prostě umístíme znaménko mínus(-) před slovo, které chceme z výsledků vypustit. Google pak nebude stránky na niž se toto slovo vyskytuje vyhledávat.
Například následující dotazy mají poněkud odlišné výsledky:
quick brown fox
quick -brown fox
Operátor (-) může být také použit v pokročilých Google dotazech jak bude popsáno níže.
Vyhledávání frází
Pro vyhledávání frází uzavřeme slovní spojení do dvojitých uvozovek.
Například:
"čerstvé hovězí maso"
"kniha klade důraz"
Argumenty pro pokročilé vyhledávání mohou být také uzavřeny v uvozovkách jak bude popsáno níže.
Kombinované vyhledávání
Kombinované vyhledávání může obsahovat jak fráze tak i individuální slova.
Například:
macintosh "microsoft office"
Tento dotaz vyhledá pouze výsledky, které obsahují frázi "microsoft office" a termín "macintosh"
Pokročilé operátory Google
Google umožňuje použití určitých operátorů k získání přesnějších výsledků. Užití těchto pokročilých operátorů je velice jednoduché, když je věnována velká pozornost na syntax.
Základní formát je:
Operátor:termín
Upozorňuji, že není mezera mezi operátorem, dvojtečkou a termínem. V opačném případě Google nepodá správné výsledky.
Některé pokročilé operátory mohou být použity jako samostatně stojící dotazy.
Například:
cache:www.google.com
můžete odeslat Googlu jako správně podaný dotaz
Jiné naopak musí být použity společně s hledaným výrazem.
Například:
site:www.google.com help
Pozn. V dalším textu bude ukázáno, že operátor site lze použít i bez hledaného výrazu
site: Vyhledá zadaný výraz pouze v uvedené síti
filetype: Vyhledá výraz pouze v dokumentech tohoto typu
link: Vyhledá stránky, které se odkazují na zadanou stránku
cache: Zobrazí danou stránku z cache Google
intitle: Vyhledá stránky jenž mají daný výraz ve svém titulku
inurl: Vyhledá stránky jenž mají daný výraz ve svém URL
-site: (hledání výrazů v zadané síti)
Tento pokročilý operátor říká Google, aby vyhledával zadaný výraz pouze ve specifikované webové síti nebo doméně. Když použiješ tento operátor je potřebné uvést hledaný výraz.
Například:
site:harvard.edu tuition
Tento dotaz vrátí výsledky ze sítě harvard.edu, které obsahují termín ‚tuition' někde na stránce.
-filetype: (hledání uvnitř souborů daného typu)
Tento operátor nařizuje Google, aby vyhledával daný termín jen uvnitř textových souborů specifického typu. Tento operátor potřebuje zadat ještě hledaný termín jako argument.
Například:
filetype:txt tutorial
Tento dotaz vyhledá slovo ‚tutorial' pouze uvnitř standartních textových souborů (txt).
Poznámka: Neuvádí se tečka před typem souboru a mezera mezi operátorem, dvojtečkou a následným typem. Následuje ještě jedna významná poznámka a to, že Google bude schopen prohledávat pouze soubory určitých typů.
Z vlastní zkušenosti vím, že Google může najít slova uvnitř souborů typu txt, html, php, protože výstup těchto souborů ve standartních prohlížečích je textový. Naopak dokumenty WordPerfect můžou vypadat jako text pouze pokud jsou otevřeny prostřednictvím aplikace WordPerfect, ale pro standartní prohlížeče bez speciálních pluginů a nástaveb je nečitelný.
Google proto nemůže interpretovat tyto dokumenty správně a vyhledávání v nich je proto nemožné. Díky tomu Google nemůže vyhledávat uvnitř specifických typů souborů dotazy jako "filetype:jpg help"
Aktuální seznam typů souborů, které lze pomocí Google prohledávat je umístěn
ve Filetype FAQ na http://www.google.com/help/faq_filetypes.html
Google může vyhledávat v souborech těchto typů:
Adobe Portable Document Format (pdf)
Adobe PostScript (ps)
Lotus 1-2-3 (wk1, wk2, wk3, wk4, wk5, wki, wks, wku)
Lotus WordPro (lwp)
MacWrite (mw)
Microsoft Excel (xls)
Microsoft PowerPoint (ppt)
Microsoft Word (doc)
Microsoft Works (wks, wps, wdb)
Microsoft Write (wri)
Rich Text Format (rtf)
Shockwave Flash (swf)
Text (ans, txt)
-link: (hledání stránek obsahujících odkaz)
Hypertext je jedním ze základních kamenů internetu. Jde o volitelné spojení z jedné stránky na jinou. Velmi často jsou odkazy zobrazeny jako obrázky, video či jiný typ multimediálního zobrazení. Tento pokročilý operátor žádá Google aby našel všechny odkazy směřující na zadanou stránku.
Tento operátor nevyžaduje žádné další argumenty.
Například:
link:www.apple.com
Tendo dotaz vyhledá webové stránky, ze kterých vede odkaz na hlavní stránku Apples.com.
Tento speciální operátor je poněkud limitovaný v tom, že hledaný odkaz musí vypadat přesně jako ten v našem dotazu. Výše uvedený dotaz tedy nevyhledá stránky s odkazy typu www.apples.com/ipod.
-cache: (Zobrazí stránku z cache Google)
Tento operátor zobrazí kopii webové stránky, kterou si Google stáhl již dříve při indexaci sítě.
Tento operátor nevyžaduje žádné další argumenty.
Například:
cache:www.seznam.cz nebo cache:http://www.seznam.cz
Tento dotaz zobrazí zkopírovanou verzi webové stránky www.seznam.cz , která je uložena na serveru Google.
Poznámka: oba z uvedených dotazů vrátí stejný výsledek, ale mám zjištěno, že občas trochu jinak formované dotazy můžou podat odlišné výsledky. Například výpis "Nebyl nalezen žádný odkaz"
-intitle: (vyhledává výraz v titulku dokumentu)
Tento operátor nutí Google vyhledávat zadaný termín uvnitř titulku dokumentu. Většina webových prohlížečů zobrazuje titulek dokumentu zcela nahoře v titulním pruhu prohlížecího okna.
Tento operátor nevyžaduje žádné další argumenty.
Například:
intitle:gandalf
Tento dotaz vyhledá pouze stránky, které obsahují slovo gandalf v titulku.
Odvozeninou od tohoto operátoru je ‚allintitle' pracující na podobném principu.
Například:
allintitle:gandalf silmarillion
Tento dotaz vyhledá obě slova, ‚gandalf' i ‚silmarillion' v titulcích dokumentů. Operátor ‚allintitle' říká Google aby vyhledal každé obsažené slovo v dotazu jen v titulcích stránek.
Je to ekvivalent řetězce jednotlivých ‚intitle:' operátorů.
-inurl: (vyhledává výraz v URL stránek)
Tento operátor nutí Google aby vyhledával výraz jen v URL (adrese) dokumentu.
Tento operátor nevyžaduje žádné další argumenty.
Například:
inurl:amidala
Tento dotaz vyhledá stránky, kde slovo ‚amidala' je obsaženo ve webové adrese nebo v názvu domény. Jedna z najitých stránek je třeba http://www.yarwood.org/kell/amidala/ obsahující slovo ‚amidala' jako název adresáře. Slovo může být umístěno kdekoliv uvnitř webové adresy, včetně názvu sítě nebo názvu dokumentu.
Odvozeninou od tohoto operátoru je ‚allinurl' pracující na podobném principu.
Například:
allinurl:amidala gallery
Tento dotaz vyhledá v URL stránek obě stova ‚amidala' i ‚gallery'.
Operátor ‚allinurl' říká Google aby vyhledal každé z uvedených slov pouze v URL stránek. Je to ekvivalent řetězce jednotlivých operátorů ‚inurl:'
Pro kompletní seznam všech pokročilých operátorů a jejich použití se podívejte na http://www.google.com/help/operators.html
Něco o syntaxi Google URL
Pokročilý uživatel Google častokrát přeskočí vyhledávací proces užitím Google toolbaru (nebylo zde probíráno) nebo převezme plnou kontrolu užitím Google URL.
Vezmeme například URL vygenerované webovým prohlížečem pro slovo ‚sardine':
http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=sardine
Zaprvé si všimněme, že základ URL pro vyhledávání Googlem je http://www.google.com/search. Otazník označuje konec URL a začátek argumentů pro vyhledávací program. Symbol ‚&' odděluje argumenty. URL zobrazené uživateli se může měnit podle mnoha vstupujících faktorů (rodný jazyk uživatele, atd.) Argumenty pro vyhledávací program Google jsou dobře zdokumentovány na http://www.google.com/apis.
Argumenty, které jsme v našem URL použily jsou tyto:
hl: Rodný jazyk výpisu. V tomto případě ‚en' neboli ‚english'.
ie: Input encoding, formát příchozích dat. V tomto případě ‚UTF-8'.
oe: Output encoding, formát odchozích dat. V tomto případě ‚UTF-8'.
q: Query, vyhledávací dotaz zadaný uživatelem. V tomto případě ‚sardine'.
Některé z argumentů v URL mohou být vynechány. Vytvořená URL pak mohou být mnohem stručnější. Uvedené URL může být například zkráceno na:
http://www.google.com/search?q=sardine
Další vyhledávané termíny mohou být do URL přidávané pomocí znaménka plus(+).
Například pro vyhledání slova ‚sardine' společně s ‚peanut' a ‚butter' použijeme toto URL:
http://www.google.com/search?q=sardine+peanut+butter
Jelikož jsou zjednodušené Google URL jednoduché na čtení a snadno přenositelné, jsou často používána jako cesta k zobrazení Google hledání.
Google (a jiné programy založené na webu) musí kódovat speciální znaky obsažené v URL jako hexadecimální čísla, která předchází znak procento(%) a to z toho důvodu aby byly srozumitelné pro standart HTTP URL. Pokud například chceme najít frázy "The quick brown fox" musíme věnovat zvýšenou pozornost uvozovkám a výsledné URL pak vypadá takto:
http://www.google.com/search?q=%22+the+quick+brown+fox+%22
V tomto případě jsou dvojité uvozovkyzobrazeny jako ‚%22' a mezery jsou nahrazeny znakem plus(+).
Pokud jsou často užívaná slova uzavřena společně s frází v uvozovkách, potom je Google z hledané fráze nevyloučí.
Techniky hackování Googlem
Operátor ‚site' může být použit pro rozšířené hledání v rámci domény.
Například:
site:gov secret
Tento dotaz prohledá stránky v doméně ‚gov' na slovo ‚secret'. Poznamenávám, že operátor ‚site' prochází síť odzadu.
Google tedy předpokládá použití operátoru ‚site' takto:
site:www.cia.gov
site:cia.gov
site:gov
Naopak Google nenalezne požadované výsledky pokud bude operátor ‚site' použit nějak takto:
site:www.cia
site:www
site:cia
Důvod je jednoduchý ‚cia' a ‚www' nejsou platná doménová jména nejvyšší úrovně. Proto si zapamatujte, že internetová jména adres nemohou končit ‚cia, www', apd.
Ovšem zaslání takovýchto neočekávaných dotazů je součástí vhodných Google hackerských technik, které probereme v kapitole ‚googleturds'.
Jak může být tato technika použita
-Novináři a jiní čmuchalové mohou použít tyto techniky k vyhledání zajímavých informací o skupinách, vládních nebo neziskových organizacích. Nezapomeň, že domény nejvyšší úrovně se často jmenují velmi popisně a můžou obsahovat zajímavé skupiny podobně jako: U.S, Goverment (.gov nebo .us)
-Hackeři při hledání cílů. Jestliže má hacker spadeno na cíl v nějaké zemi nebo organizaci může použít tento typ vyhledávání k nalezení citlivých cílů.
Hledání ‚googleturds' užitím operátoru ‚site'
‚Googleturds', jak je nazývám, jsou takové malé ‚zmetky' na Google.
Například: site:csc nebo site:microsoft
Žádný z těchto dotazů není správný podle řádných pravidel operátoru ‚site', protože jejich název nekončí jménem domény nejvyšší úrovně. Avšak tyto dotazy mnohdy produkují zajímavé výsledky.
Tyto malé zmetky jsou pravděpodobně výsledky typografických chyb v odkazech umístěných na webových stránkách.
Jak může být tato technika použita
Hackeři pátrající po cílech mohou použít takováto podobná jména k nalezení stránek (a následně potenciálních citlivých dat), která nejsou dostupná při správném použití operátoru ‚site'. Zajímá-li se hacker například o společnost ABCD umístěné na webových stránkách www.ABCD.com může pomocí dotazu ‚site:ABCD' najít zamlžené odkazy (http://www.ABCD namíto http://www.ABCD.com) obsahující hledané informace.
Mapování sítě: více o operátoru ‚site'
Mapování obsahu webového serveru pomocí Google je snadné. Máme-li následující dotaz:
site:www.microsoft.com microsoft
pak nám tento dotaz vyhledá slovo ‚microsoft' na stránkách serveru ‚www.microsoft.com'. Kolik stránek na webovém serveru Microsoftu obsahuje slovo ‚microsoft'? Podle Google všechny! Vzpomeň si, že Google neprohledává pouze obsah stránek, ale i titulky a URL. Slovo ‚microsoft' je tudíž obsaženo v URL každé stránky na www.microsoft.com. Pomocí jednoho primitivního dotazu útočník získá každou webovou stránku sítě z cache Google.
Jestliže odkaz na webové stránce Microsoftu ukazuje na IP adresu Microsoft web serveru pak je nutné k vyhledání těchto stránek přes Google přepsat v dotazu slovo ‚microsoft' také IP adresou.
Google nedávno přidal další metodu vykonávající tento úkol. Tato technika umožňuje uživatelům Google odeslat v dotazu operátor ‚site' bez argumentů.
Například:
site:microsoft.com
Tato technika je jednoduchá, ale nejsem si jistý jestli zůstane stálou vlastností Google.
Protože Google indexuje pouze odkazy, které najde na webu, není u této techniky stoprocentně jisté, že objevý opravdu všechny webové stránky nacházející se na webovém serveru.
Jak může být tato technika použita
Tato technika je velmi jednoduchá pro někoho kdo chce získat kompletní cache struktur webových sítí bez jakékoliv přímé návštěvy cíle. Proces zobrazení takto získaných stránek může být také bez rizika pokud Google hacer nepovolí svému prohlížeči stahování odkazovaných obsahů jako jsou třeba obrázky na takto získaných stránkách. Pro způsobilého útočníka je to banální záležitost.
Vyhledání adresářové struktury
Výpis souborů a adresářů v okně prohlížeče je opatřen typickým textovým a grafickým mixem obvykle spojeným s webem.
Výpisy adresáře jsou na webových stránkách často umístěny záměrně aby mohli návštěvníci stránek procházet adresářovou strukturou a stahovat soubory. Častokrát však tyto výpisy úmyslné nejsou. Špatně nakonfigurované webové servery můžou produkovat výpis adresáře jestliže chybí index nebo hlavní webová stránka. V některých případech jsou výpisy adresáře nastaveny jako dočasné úložiště pro soubory. Nejednou útočník získá z výpisu adresáře zajímavé informace.
Lokalizování těchto výpisů pomocí Google je celkem zřejmé, neboť většina těchto výpisů začíná frází "index of" což také zobrazuje v titulku. Cílený dotaz na vyhledání takovéhoto typu stránky je "intitle:index.of", který vyhledá stránky s termínem "index of" v titulku dokumentu. Tečka se v Google používá jako zástupný znak mezery.
Bohužel uvedený dotaz vrátí příliš velké množství falešných nálezů, které jsou podobné stránkám s takovýmto titulkem:
"Index of Native American Resources on the Internet"
"LibDex - Worldwide index of library catalogues"
Soudě z titulků těchto dokumentů je očividné, že pro nás nejsou tyto stránky chtěné. Prostě nejsou těmi výpisy adresáře, které jsme hledali. Několik alternativních dotazů, které poskytnou přesnější výsledky:
intitle:index.of "parent directory"
intitle:index.of name size
Tyto dotazy již skutečně s mnohem větším úspěchem obstarají požadované výpisy adresáře, neboť nejsou mířeny jen na "index of" v titulkum ale i na klíčová slova, která se v těchto výpisech často nalézají ("parent directory" nebo ‚name' a ‚size').
Jak může být tato technika použita
Musíme pamatovat na to, že mnoho výpisů adresáře je úmyslných. Přesto výpisy adresáře dodávají hackrovi velmi dobrou cestu pro rychlou navigaci sítí. Pro účely nalezení citlivých nebo zajímavých informací může být prohlížení výpisů souborů a jmen adresářů mnohem více produktivní než procházení webových stránek. Výpisy adresáře nám dávají prostředky například pro určování verzí serverů a hledání slabých míst, jak bude popsáno dále v textu.
Určování verzí: Získání verze softwaru webového serveru
-Přes výpisy adresáře
Zjistit verzi software webového serveru, který běží na serveru je jedna část informací důležitých pro útočníka před provedením úspěšného útoku proti tomuto webovému serveru. Útočník může tuto informaci získat třeba z http hlavičky pokud navštíví tento server. Je však rozumné nevstupovat do tohoto teritoria a zmiňovanou verzi si zjistit jiným způsobem bez přímého spojení s cílovým serverem. Jedna z metod k získání této informace je přes výpisy adresáře (pokud jsou povoleny).
Na spodní řádce typického výpisu je uvedena právě tato informace.
Poznamenávám, že výpis adresáře obsahuje jméno a verzi serverového software. Znalý webový administrátor však může tuto informaci změnit aby zmátl útočníka, ale většinou je tato informace pravdivá.
Dejme tomu, že se útočník rozhodne zaútočit proti webovému serveru.
Může k tomu pak použít dotazy z následujících příkladů:
intitle:index.of server.at
Tento dotaz vyhledá termín "index of" v titulcích a "server at" v obsahu stránek. Tento typ dotazu může být navíc zaměřen jen na určitou síť.
intitle:index.of server.at site:aol.com
Výsledek tohoto dotazu ukazuje, že gprojects.web.aol.com a vidup-r1.blue.aol.com běží na webovém serveru Apache.
intitle:index.of server.at site:apple.com
Výsledek tohoto dotazu ukazuje server mirror.apple.com také s běžícím webovým serverem Apache.
Tato technika může být použita i k vyhledání serverů běžících s patřičnou verzí webového serveru.
Například:
intitle:index.of "Apache/1.3.0 Server at"
Tento dotaz vyhledá servery s povoleným výpisem adresářů na nichž běží Apache verze 1.3.0
Jak může být tato technika použita
Tato technika je poněkud limitována faktem, že cíl musí mít nejméně jednu stránku, která vytváří výpis adresáře a tento výpis musí obsahovat poznámku o verzi webového serveru dole na stránce.
Existují i více pokročilé techniky, které mohou být použity pokud výpisy adresáře nejsou označeny poznámkou o verzi webového serveru. Tato technika zapojuje analýzu hlaviček, titulků a celkového vzhledu výpisů. Srovnáním známých formátů s cílovým formátem výpisu adresáře je znalý Google hacker obvykle schopen určit verzi serveru poměrně rychle. Bohužel některé servery, povolující výpis adresáře úmyslně, mívají vytvořen vlastní vzhled stránek pro toto procházení adresáři. Tvorbu některých těchto výpisů nemá na starosti webový server, jak bývá zvykem, ale místo toho spoléhají na software třetí strany.
Bez ohledu na to jak pravděpodobné je určení verze webového serveru užitím této specifické techniky mohou jí hackeři (především znetvořovači webů) použít k získání potenciálních cílů.
Pokud hacker vlastní nějaký exploit, který je určen dejme tomu proti Apache 1.3.0 může rychle nalézt Googlem oběti pomocí tohoto dotazu: intitle:index.of "Apache/1.3.0 Server at".
Tento dotaz pak vrátí seznam serverů, které povolují procházet adresáře a na spodním řádku výpisu mají tag s "Apache 1.3.0 Server". Tato technika může být použita proti jakémukoliv webovému serveru, který uvádí svoji verzi ve výpisu adresáře. Útočníci vědí jak sílu tohoto tagu využít.
-Přes defaultní stránky
Tato technika, založená na existenci defaultních stránek, je také vhodná pro zjištění verze webového serveru. Když je webový server instalován je obdařen defaultními stránkami, například Apache.
Tyto stránky slouží webovým administrátorům k rozběhnutí webových serverů a k jejich snadnému otestování. Administrátor se prostě spojí na tento webový server a hned si pomocí těchto stránek ověří jestli je nainstalován správně. Některé operační systémy mají nainstalován webový server implicitně. V tomto případě si ani nemusí internetový uživatel uvědomit, že na jeho počítači tento webový server běží. Tento typ nedbalého chování vede útočníka ke správnému předpokladu, že webový server není často aktualizován a je tudíž nechráněný. Z tohoto nastavení může také útočník předpokládat, že bude zranitelný i celý operační systém zanedbáním údržby.
Jak může být tato technika použita
Jednoduchý dotaz:
intitle:test.page.for.apache it.worked!
vrátí seznam sítí s běžícím Apache 1.2.6 s nastavenou defaultní stránkou. Podobné dotazy na Apache vrátí obdobný výsledek, viz tabulka:
Apache 1.3.0 - 1.3.9 Intitle:Test.Page.for.Apache It.worked! this.web.site!
Apache 1.3.11 - 1.3.26 Intitle:Test.Page.for.Apache seeing.this.instead
Apache 2.0 Intitle:Simple.Page.for.Apache Apache.Hook.Functions
Apache SSL/TLS Intitle:test.page "Hey, it worked !" "SSL/TLS-aware"
Internet Information Services (IIS) od Microsoftu je také dodáván s defaultními webovými stránkami.
Dotazy, které lokalizují standartní webové stránky IIS webserveru jsou:
Mnoho intitle:welcome.to intitle:internet IIS
Neznámé intitle:"under construction" "does not currently have"
IIS 4.0 intitle:welcome.to.IIS.4.0
IIS 4.0 allintitle:welcome to Windows NT 4.0 Option Pack
IIS 4.0 allintitle:welcome to Internet Information Server
IIS 5.0 allintitle:welcome to Windows 2000 Internet Services
IIS 6.0 allintitle:welcome to Windows XP Server Internet Services
V případě webových serverů založených na bázi microsoftu není tato technika vhodná pouze k určení webového serveru, ale i celého operačního systému a verzí servisních patchů.
Tato informace je neocenitelná pro útočníka zběhlém v hackingu nejen webových serverů, ale i operačních systémů. V případech kdy má útočník pod kontrolou celý operační systém může napáchat mnohem více škody než když ovládá pouze webový server.
Servery od Netscape obsahují defaultní stránky také:
mnoho allintitle:Netscape Enterprise Server Home Page
neznámé allintitle:Netscape FastTrack Server Home Page
Některé dotazy lokalizující defaultní stránky jiných webových serverů jsou:
Jigsaw / 2.2.3 intitle:"jigsaw overview" "this is your"
Jigsaw / mnoho intitle:"jigsaw overview"
iPlanet / mnoho intitle:"web server, enterprise edition"
Resin / mnoho allintitle:Resin Default Home Page
Resin / Enterprise allintitle:Resin-Enterprise Default Home Page
JWS / 1.0.3 - 2.0 allintitle:default home page java web server
J2EE / mnoho intitle:"default j2ee home page"
KFSensor honeypot "KF Web Server Home Page"
Kwiki "Congratulations! You've created a new Kwiki website."
Matrix Appliance "Welcome to your domain web page" matrix
HP appliance sa1* intitle:"default web page" "congratulations" "hp web"
Intel Netstructure "congratulations on choosing" intel netstructure
Generic Appliance "default web page" congratulations "hosting appliance"
Debian Apache intitle:"Welcome to Your New Home Page!" debian
Cisco Micro Webserver 200 "micro webserver home page"
-Přes manuál, stránky nápovědy nebo vzorových programů
Jiná metoda určení verze serveru spočívá na hledání manuálů, stránek nápovědy nebo vzorových programů, které bývají defaultně instalovány na webových serverech.
Mnoho těchto serverů je distribuováno s instalací manuálů a vzorových programů ve standartním umístění. Za léta mají hackeři najitých mnoho těchto defautních cest k získání privilegovaného přístupu na webový server. Přestože distributoři webových serverů naléhají aby administrátoři po instalaci webových serverů odstranili tyto vzorové programy před zpřístupněním serveru na internetu, uživatelé často těchto rad nedbají. Pouhá existence těchto programů v počítači může pomoci určit typ webového serveru a jeho verzi.
Jak může být tato technika použita
Pro určení verze webového serveru mohou hackeři použít tuto techniku k vyhledání náchylných cílů.
Například:
inurl:manual apache directives modules
Tento dotaz vrátí stránky, které hostují Apache web server manuály. Apache manuály jsou obsaženy v defaultní instalační sadě mnoha různých verzí Apache. Jiné verze Apache mohou mít jiný styl manuálu a umístění manuálu se může poněkud lišit, pokud jsou vůbec nainstalovány.
Verze serveru je zobrazena navrchu stránky s manuálem. Pokud byl však server od své instalace aktualizován nemusí verze zobrazená v manuálu odpovídat skutečnosti.
Microsoftí IIS často rozvinou své manuály (zvané help pages) současně pro rozmanité verze jejich webových serverů. Jednou cestou jak vyhledat tyto ‚help pages' je použití dotazu: "allinurl:iishelp core" Mnoho verzí IIS případně instaluje ukázkové aplikace. Mnohokrát jsou tyto aplikace uloženy v adresáři nazvaném ‚iissamples' a ty mohou být následně objeveny užitím takovéhoto dotazu: "inurl:iissamples". Přidáním názvu vzorového programu můžete vložit dotaz třeba takto: "inurl:iissamples advquery.asp".
Existuje celá řada defaultních manuálů, stránek nápovědy a vzorových aplikací, které můžeme vyhledávat. Výše zmíněné ukázkové aplikace často obsahují zranitelná místa. Vyhledávání zranitelných programů už ale patří do jiné kapitoly.
Užití Google jako CGI scanneru
‚CGI scanner' nebo ‚web scanner' jsou jedny z nejdůležitějších nástrojů ve světě WWW hackingu. Nemilosrdně vyhledávají zranitelné programy na servereh. Scannery nám pomůžou přesně určit potenciální cesty k útoku. Tyto programy jsou neobyčejně jednoduché, výkonné a celkem přesné. Ovšem znalý Google hacker zná důvtipnější a zajímavější cesty jak tento úkol vyřešit.
Scannery prochází servery a vyhledávají na nich zranitelné soubory nebo adresáře, které mohou obsahovat vzorový kód či jiné zranitelné soubory. Aby scannery mohli určit, který soubor je potenciálně nebezpečný jsou vytvořeny soupisy zranitelných míst, které jsou uloženy v souborech podobných tomuto:
/cgi-bin/cgiemail/uargg.txt
/random_banner/index.cgi
/cgi-bin/mailview.cgi
/cgi-bin/maillist.cgi
/cgi-bin/userreg.cgi
/iissamples/ISSamples/SQLQHit.asp
Jak může být tato technika použita
Řádky v těchto souborech jsou pro Google hackera na serverech jako automapa. Každou z těchto řádek může útočník použít v dotazech ‚index of' nebo ‚inurl' pro najití zranitelného cíle.
Například:
allinurl:/random_banner/index.cgi
Hacker si může ponechat výsledky vrácené Googlem a aplikovat část svého umění například k výpisu souboru s hesly
Z mnoha technik Google hackerů je tato technika nejlepší kandidát pro zautomatizování, protože CGI scanner může být velmi rozsáhlý. Gooscan tool napsaný Johnnym má mnoho funkcí. GooScan a automatizace budou popsány později.
Užití Google k vyhledání zajímavých souborů a adresářů
Užití Google k vyhledání zranitelných cílů může být velmi úspěšné. Není to ovšem užitečné pouze k vyhledání zranitelných souborů, ale tato technika může být použita i pro vyhledání citlivých dat, která nejsou určena pro veřejné zobrazení. Lidé a organizace často zanechávají takováto data na webových serverech (doufajíc, že je nikdo neobjeví). Google však tato data dokáže rychle najít a vybrat téměř nepozorovaně. Často tak můžeme vyhledat citlivá data jako jsou finanční informace, čísla sociálního zabezpečení, zdravotní záznamy apd.
Jak může být tato technika použita
Ze všech zde popsaných technik je tato pro popis nejobtížnější, protože vyžaduje notnou dávku fantazie a někdy i kousek štěstí. Často používáme pro vyhledání citlivých souborů a adresářů slova ze seznamu důležitých slov a frází. Vezmeme-li například fakt, že mnoho lidí uchovává směs veškerých dat uvnitř adresáře se zálohou, pak je častokrát obsah celého webového serveru nebo pracovního počítače nalezen v adresáři nazvaném ‚backup'. Použitím jednoduchého dotazu "inurl:backup" můžeš obdržet seznam odpovídajících výsledků.
Dotaz "inurl:admin" může často prozradit administrativní adresáře. Často plodné jsou různé kombinace tohoto dotazu jako například:
inurl:admin intitle:login
Tento dotaz může vrátit stránky s administrátorským loginem.
inurl:admin filetype:xls
Tento dotaz nám může vrátit zajímavé excelovské sešity nazvané admin nebo uložené v adresáři admin. Vzdělávací instituce jsou notoricky známé pro podléhání tomuto hledání.
inurl:admin inurl:userlist
Toto je všeobecný dotaz s vyhledáním mnoha jiných typů administrátorských stránek uživatelských seznamů. Tyto výsledky jsou často cenné jako seznam uživatelských jmen, hesel, telefonních čísel, adres, atd.
inurl:admin filetype:asp inurl:userlist
Vyhledá více specifické příklady administrátorských seznamů uživatelů, které jsou napsány v ASP stránce. V některých případech však tyto stránky vyžadují autentizaci.
O automatickém Google scannování
Když máme po ruce tolik známých kombinací zranitelných míst, je jasné, že automatický nástroj pro scannování stránek pomocí Google bude velice účinný. Google však takovéto automatizování odsuzuje a uvádí na http://www.google.com/terms_of_service.html :
"Na Google není povoleno posílat automatické dotazy určitého druhu bez jasného povolení dodaného Googlem a to:
-Užívání software, který na Google posílá dotazy ke stanovení množství Googlem indexovaných sítí a stránek.
-‚meta-serching' Google
-pochybné ‚offline' vyhledávání na Google
Google k tomuto postupu nabízí alternativy v Google web API's nalezeném na http://www.google.com/apis/
Několik hlavních nevýhod programu napsaného v Google API je:
Uživatelé a vývojáři Google API programů musí vlastnit licenční klíče dodané Googlem. Dále pak jsou tyto programy omezeny na 1000 dotazů za den, protože Google web API servis je jen experimentální free program a zdroje dostupné podpory jsou proto limitovány (podle prohlášení na API FAQ http://www.google.com/apis/api_faq.html#gen12 ). Je jasné, že s tak mnoha potenciálními dotazy pro zranitelné cíle je 1000 dotazů jednoduše nedostačující.
Jakýkoliv automatizovaný nástroj pro dotazování Google (s vyjímkou nástrojů vytvořených v Google API) musí být na spodním řádku opatřen jasným povolením obdrženým od Google.
Jsou neznámé následky ignorování těchto pravidel, ale toto se zdá být nejlepší postoj Google.
Různé doplňky Google
Google přístroje
Vyhledávací přístroj Google je popsán na http://www.google.com/appliance/
Každý si může na svůj web vložit Google vyhledávací přístroj, který kombinuje hardware a software řešení. Je snadný na používání, jednoduchý na nasazení a může být nasazen na tvém intranetu nebo veřejné webové síti ve velmi krátkém čase.
Přístroj Google může být nejlépe popsán jako lokálně řízený a ovládaný minigoogle vyhledávací prostředek pro jednotlivce a společnosti. Když se dotazuješ Google přístroje ručně napsanými URL, častokrát zkrácené dotazy uvedené v kapitole o URL syntaxi nebudou pracovat bez extra parametrů. Vezmeme-li například hledání výrazu "steve hansen" v Google přístroji umístěném ve Stanfordu, bude po zaslání tohoto dotazu předána URL v tomto tvaru:
http://find.stanford.edu/search?q=steve+hansen&site=stanford
&client=stanford&proxystylesheet=stanford&output=xml_no_dtd&as_dt=i&as_sitesearch=
Nyní si toto URL rozebereme na jednotlivé části:
-Cílová aplikace je find.stanford.edu
-následuje dotaz "steve hansen" nebo "steve+hansen"
- a nakonec se nachází neméně důležité extra parametry
&site=stanford&client=stanford&proxystylesheet=stanford
&output=xml_no_dtd&as_dt=i&as_sitesearch=
Tyto parametry se mohou přístroj od přístroje lišit, ale musí být jasné defaultní parametry, které vycházejí z typické instalace, podobně jako na find.stanford.edu.
Googledorks
Termín ‚googledorks' prosadil Johnny Long ( http://johnny.ihackstuff.com ). Důležité je, že termín ‚googledork' popisuje citlivý termín, který je vložen na webu a Google ti ho pomůže najít. Oficiální stránka googledorks ( http://johnny.ihackstuff.com/googledorks ) obsahuje seznam mnoha zajímavých příkladů, které mohou být vyhledány pomocí Google okamžitě ze stránky http://johnny.ihackstuff.com. Každý záznam ukazuje dotaz potřebný k nalezení informace společně s popisem proč jsou nalezená data tak zajímavá.
GooScan
GooScan (http://johnny.ihackstuff.com) je UNIX(Linux/BSD/Mac OS X) nástroj, který se automaticky dotazuje Google s různými obměnami. Tyto konkrétní dotazy jsou vytvořeny k nalezení potencionálních zranitelností na webových stránkách. Je to vlastně ‚CGI scanner', který nikdy nekomunikuje přímo s cílovým webovým serverem. Jednoduše všechny dotazy posílá Google a ne na cíl. Pro bezpečnostního profesionála je GooScan serverů naprostá informační sklizeň. Administrátorům webových serverů pomůže GooScan zjistit co všechno se mohou lidé na webu pomocí Google dozvědět o jeho síti.
GooScan není vytvořen pomocí Google API. To vyvolává otázky okolo legality používání GooScanu jako Google scanneru. Je tedy GooScan legální při používání? Neměl bys tento nástroj nikdy používat na dotazování se Google bez předchozího povolení. U Google přístroje však nemáš omezení. Měl by sis ale opatřit povolení od podniku nebo správce Google přístroje před samotným scanováním automatizovaným nástrojem pro různé legální a morální účely. Pokud použiješ tento nástroj jinak než na Google přístroje, vystavuješ se hněvu ze strany Google.
Ačkoliv je mnoho prostředků GooScanu, jeho primární účel je scan Google (samozřejmě pouze s patřičným povolením od Google) nebo Google přístroje (jen s povolením od vlastníka sítě) pro záznamy uvedené v seznamu na googledorks stránce.
Ještě jednou upozorňuji, že GooScan provádí velmi důkladný CGI scan sítě skrz Google nebo Google přístroj.
GooPot
Pojem ‚honeypot' je celkem jasný. Podle techtarget.com:
"HoneyPot" je počítačový systém na Internetu, který je úmyslně nastaven k vábení uživatelů, kteří se pokouší k pronikání do počítačových systémů jiných lidí."
Slouží k získávání informací o tom, jaké nové útočné síly jsou útočníky používané. Správci systému Honeypot monitorují, analyzují a katalogizují každý útok.
Rozšířením tohoto klasického Honypot systému je Honeypot na webu neboli Pagepot. Je navrhnut k atraktivnímu použití technik popsaných v tomto dokumentu.
Záměr je zřejmý. Jednoduchý vstup googledork, podobný tomuto: "inurl:admin inurl:userlist" může být lehce nastaven na webu Haneypot vytvořením index.html stránky s odkazem na jiný index.html soubor v /admin/userlist.
Jestliže nástroj, který prohledává web podobně jako Google se bude chtít dostat na top-level stránku index.html, najde eventuelně odkaz na /admin/userlist/index.html.
Tento odkaz uspokojí Google dotaz, eventuelně podobně atraktivní dotaz. Jakmile uživatel Google klikne na vyhledaný odkaz, odchytne si systém cestu na webovou stránku. Pozadí uživatelova webového prohlížeče také posílá mnoho proměnných webovému serveru, včetně různých zajímavostí. Tento záznam obsahuje kompletní jméno webové stránky, kterou uživatel předtím navštívil nebo ještě přesněji webovou adresu, která uživatele odkázala na tuto stránku, za předpokladu, že klikl na daný odkaz ve vyhledávači. Tato drobná informace je velice cenná pro správce Pagepot systému, pokud se jedná o popsanou metodu Google vyhledávání použitá pro lokalizaci Pagepot systemu. Jedná se tedy o informační pomůcku k ochraně jiných webových sítí před podobnými dotazy.
Představa PagePotu není nová díky lidem tvořícím skupinu http://www.gray-world.net. Jejich webový Honeypot je umístěn na http://www.gray-world.net/etc/passwd/ a je navrhnut k lákání těch, kteří využívají Google jako CGI scanner. Není to špatná představa, ale v tomto dokumentu jsme viděli, že je mnoho jiných cest využití Google na vyhledávání zranitelných nebo citlivých stránek.
Google honeypot systém Goopot navrhl Johnny@ihackstuff.com. Použitím webového serveru s možností prohlížení citlivých dokumentů a monitorováním se může administrátor něco naučit o nových webových vyhledávacích technikách. Kromě jednoduchého Pagepotu používá Goopot svádění založené na mnoha technikách popsaných v tomto dokumentu. Goopot se velice podobá vnadným cílům, po kterých hackeři typicky jdou. John Long, administrátor seznamu googledorks, zužitkovává GooPot k odhalení nových vyhledávacích typů a publikuje je v seznamu googledorks. Vytváří tak věčný kruh pro učení se těmto technikám a obraně proti nim.
Ačkoliv v době psaní tohoto článku není systém GooPot veřejně přístupný, očekává se jeho zpřístupnění ve 2Q 2004.
Obrana proti Google hackerům
-Držte svá citlivá data mimo web!
I když si myslíš, že sis svá data na webovou síť odložil jen dočasně, je dost pravděpodobné, že to vypustíš z hlavy nebo, že je může některý uživatel objevit. Zvaž bezpečnější cesty sdílení citlivých dat přes SSH/SCP nebo šifrováním emailů.
-Googledorks
Použij techniky popsané v tomto dokumentu k prohledání své vlastní sítě na citlivé informace a zranitelné soubory.
Použij na proskenování své sítě GooScan z http://johnny.ihackstuff.com Ovšem nejprve si sežeň patřičné povolení od Google, který by tě mohl napadnou za hrubé porušení jejich pravidel. Autor si sice není vědom nějakých důsledků z tohoto porušení, ale proč pokoušet osud.
Prohlídni si oficiální stránku googledorks a udržuj si aktuální přehled o nejnovějších tricích a technikách vyhledávání.
-Rozvaž odstranění své sítě z indexu Google
Google webmaster FAQ na http://www.google.com/webmasters/ poskytují neocenitelné informace o cestách k řádnému zabezpečení a odkrytí tvé sítě na Google.
-Použij soubor robots.txt
Cesty, které jsou uvedeny v tomto souboru vyhledávací roboti ignorují. Musím však upozornit na skutečnost, že hackeři často vyhledávají tento soubor pro získání lepší představy o síti.
Více o robots.txt nalezneš na http://www.robotstxt.org/wc/norobots.html
Poděkování
Protože jsem z překladu tohoto článku již celkem na zhroucení tak si dovolím tento poslední odstavec ‚Poděkování' vynechat. Pokud by však někoho tyto informace opravdu zajímaly odkazuji ho tímto na originál tohoto dokumentu, který můžete najít na http://johnny.ihackstuff.com/security/premium/The_Google_Hackers_Guide_v1.0.pdf
.cCuMiNn.
Líbil se Vám článek?
Budeme potěšeni, pokud vás zaujme také reklamní nabídka
Hodnocení/Hlasovalo: 1.53/59