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.
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.
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.
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.
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.
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.
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ě.
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.
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.
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.
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:
Tento odkaz tě zavede přímo na webovou stránku nalezeného záznamu.
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.
Tento odkaz ti předhodí stránky, které má Google zařazené pod stejnou kategorií ve svém adresáři.
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á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.
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í 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".
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.
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.
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.
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 jeu mí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)
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.
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
.
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 intitle
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ů.
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 inurl
operátoru je allinurl
pracující na podobném principu.
Například: allinurl:amidala gallery
Tento dotaz vyhledá v URL stránek obě slova 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
.
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
nebolienglish
.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čí.
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ů.
todo
‚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í 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.
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.
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.
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"
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.
‚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í 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.
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.
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.
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 [email protected]. 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.
-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