Nyní, když jsme si osvětlili situaci, pojďme se společně podívat na ty nejlepší vtipy, které se na účet Jidáše snesly.
Na YouTube se můžete podívat na rozhovor se zaměstnancem Cermatu k tomuto tématu.
Po dopsání didaktického testu se píše maturitní slohovka. Na výběr je vždy několik témat. Ještě než se je studenti dozvěděli, téměř jednohlasně se shodli, že je určitě čeká charakteristika Jidáše.
Chybí mi zde nějaké meme s tématikou Jidáše a maturity 2015? Podělte se prosím v komentářích.
Poznámka: termín hacknutí zde používám ve stejném významu jako redaktoři jedné nejmenované oblíbené české televize.
Vše začalo poněkud nenápadně, a to přímo na tomto webu. Z ničeho nic se místo úvodní stránky načítala šedá plocha. V HTML přitom vše vypadalo v pořádku. Okamžitě jsem z tohoto problému obvinil plugin W3 Total Cache. Zkoušel jsem pročistit cache, vypnout celý plugin i kompletní odinstalaci. Nic z toho nepomohlo. Řekl jsem si, že se nějak rozhodila šablona. Zkusil jsem aktivovat jinou. To naštěstí pomohlo a já problém dál neřešil.
Jednu neděli jsem úplně čirou náhodou zjistil, že mi už 22 hodin neběží VPS s většinou mých webů a projektů. Neděle už najednou tak hezká nebyla. Moje VPS se nachází v zahraničí, započala tedy komunikace s tamější podporou, aby mé VPS bylo opětovně nahozeno. Z logu jsem se dozvěděl, že důvod pro suspendování serveru bylo tisíc SMTP spojení a rozesílání SPAMU. Než můj VPS server zase běžel, trvalo to celý den. Opětovně po jeho spuštění jej totiž automatický skript poskytovatele ihned zablokoval, opět pro rozesílání SPAMu. Bylo třeba přidat výjimku, aby VPS šlo vůbec spustit.
Nejprve jsem myslel, že jsem na serveru nezakázal open relay (to znamená, že by se kdokoliv mohl na server připojit a přes STMP posílat kamkoliv email). Jak však ukázal jeden z mnoha online testů, tímto to nebylo. Rozhodl jsem se tedy alespoň omezit počet souběžných SMTP připojení. Pro Postfix je nutno v souboru /etc/postfix/master.cf najít tento řádek:
smtp inet n – – – – smtpd
Poslední pomlčku lze nahradit za konkrétní číslo. To udává maximální počet souběžných procesů, které budou obsluhovat SMTP:
smtp inet n – – – 3 smtpd
Když už jsem byl v tom nastavování, rozhodl jsem se ztížit robotům pokusy o přihlášení. Do souboru /etc/postfix/main.cf (klidně např. na konec) stačí přidat následující 3 řádky:
smtpd_error_sleep_time = 1s smtpd_soft_error_limit = 10 smtpd_hard_error_limit = 20
I když jsem však provedl všechna výše zmíněná opatření, ničemu to nepomohlo — v mailové frontě na serveru se stále objevoval nový SPAM. Začaly mi docházet nápady. Neodesílá emaily náhodou nějaký skript na serveru? Letmo jsem se podíval do adresářové struktury jednoho webu běžícího na WordPressu a skutečně — byly tu soubory, co zde na první pohled nemají co dělat.
Než začnete cokoliv dělat, udělejte si zálohu všech souborů (ano, těch hacknutých) i databáze. Možná to zní zvláštně, ale vyplatí se to. Pravděpodobně totiž budete ve stresu a může se stát, že uděláte něco, čeho budete později litovat.
V mém případě složka s WordPressem obsahovala řadu podivných souborů. Namátkou uvedu některá jména:
Takže, co je vlastně cílem? Smazat všechny soubory, co zde nemají co dělat. Důležité je, že se nesmí zapomenout ani na jeden. Stačí jeden infikovaný PHP soubor na serveru zanechat a útočník stále bude schopný se serverem provádět řadu věcí. K nalezení zmíněných souborů jsem použil plugin Sucuri Security, který mohu jen doporučit. Tato pomůcka proskenuje adresářovou strukturu a zobrazí změněné i nově přidané soubory. My přitom prahneme po těch nově přidaných. Vžijme se do role útočníka. Přece chceme, aby naše infekce přežila případnou přeinstalaci/aktualizaci WordPressu. Proto nemůžeme modifikovat stávající soubory, ale musíme škodlivý kód uchovávat v těch nově přidaných. Sucuri Security všechny soubory zobrazí v přehledém seznamu. Obzvláště podivné je PHP ve složkách wp-admin, wp-includes, přímo narušení bezpečnosti je poté PHP v wp-content/uploads.
Než nalezené soubory smažete, raději zkontrolujte jejich obsah, zda-li náhodou nemáte v úmyslu odstranit něco důležitého. Pokud soubor obsahuje jeden řádek s hashem (můj případ), okamžitě jej smažte, to zde nemá co dělat. Druhý trik co útočníci u mě použili, byl rádoby prázdný soubor. Respektive na jednom řádku bylo milión mezer a až poté škodlivý kód. Na první pohled to tedy vypadalo, že je soubor prázdný.
Jakmile smažete vše, co na vašem serveru nemá být, vůbec není vyhráno. Útočníci totiž přístup nějakým způsobem získali a je nutno tuto díru záplatovat. Určitě musíte aktualizovat WordPress, pluginy i šablony na nejnovější verzi. Já bohužel používal starou verzi WordPressu, a dopadlo to hackem…
Dále vám doporučím zavítat do nastavení pluginu Sucuri Security a v záložce Hardening povolit vše, co budete moci. Efektivně tím zakážete spouštění PHP souborů zvnějšku serveru. I kdyby se útočníkovi nějak podařilo nahrát na server zákeřný kód, relativně se nic neděje, protože jej nemá jak spustit.
Jako programátorovi mi to samozřejmě nedalo a lehce jsem zákeřný kód prostudoval. Uvažoval jsem, že bych zde kódy zveřejnil, nerad bych ovšem, aby si Google myslel, že tento web obsahuje malware.
Infekce začíná spuštěním exec__root.php, což ostatně evokuje i samotný název souboru. Tento skript proskenuje celou adresářovou strukturu a hledá složky, které typicky budou přístupné z webu (např. css, js apod.). Dále bezpečně umí rozpoznat CMS WordPress i Joomla a vyhledává v nich opět přístupné složky. Do každého umístění je poté nakopírován jeden ze souborů s nenápadným názvem (např. wpconfig-new.php, options.php, defines.php apod.). Na konci skriptu je vtipná podmínka, která kontroluje, zda-li server dokáže přes cURL komunikovat s okolním světem. Za tímto účelem se netestuje žádný ze serverů útočníka, ale toto video na YouTube. To je rusky, takže si podle toho možná můžeme udělat obrázek o původu oněch vtipálků. V krátkém pětivteřinovém videu pán říká: „Vy jste kdo? Já vás nezval. Jděte pryč!“. Jak trefné :-D.
Každý z nakopírovaných souborů v mém případě obsahoval kód prohnaný nějakým PHP obfuscatorem, nestudoval jsem jej tedy (ani jsem se nesnažil jej deobfuscatorovat (to je slovo ). Při načtení z webu se zobrazí jednoduchý formulář, který chce jediné — zadat heslo. Po správném zadání se hádám útočníkům zobrazí nějaká administrace , která jim umožní provádět, co se jim zrovna zamane.
Závěrem uvedu stručný výčet několika pravidel, u kterých mi vychází, že je webmaster musí mít na paměti, pokud používá WordPress a chce v noci v klidu spát:
Jedná se jednoznačný identifikátor počítače v síti (ale té počítačové), pokud je používán protokol IP, což bude platit prakticky pro každého čtenáře tohoto článku. IP adresa se skládá ze čtyř částí, které oddělují tečky. Každé této čtvrtině se říká oktet, IP adresa je tedy složena ze čtyř oktetů. Každý oktet může obsahovat číslo v rozmezí 0 až 255. Proč zrovna 255? Protože na uložení čísla máme jen 8 bitů, tedy jeden bajt a pokud tento bajt vyplníme samými jedničkami, tak větší číslo než 255 nedostaneme (111111112 => 25510). Takový běžný domácí počítač mívá IP adresu ve stylu 192.168.1.X nebo 10.0.0.X, kde X je typicky malé číslo (např. 1, 2 nebo 3) .
Protože kamarád bydlí jinde, a má u sebe jinou počítačovou síť, než je u vás doma. Koukněte znovu na první řádek předcházejícího odstavce, IP adresa musí být jedinečná v rámci sítě, kterých je ale na světě nepočítaně (Blaník, Jára Cimrman). Kamarád má síť, vy máte síť. Ale zkuste se oba sejít např. u vás doma (v rámci jedné počítačové sítě) a oba dva si nastavte stejnou IP adresu, to se teprve budou dít divy :-).
Toto téma jsme už načali, troufale jsem tvrdil, že protokol IP používá prakticky každý. Umí totiž velice důležitou věc, propojit více sítí dohromady. Tohoto cíle dosahuje směrováním paketů. Až si budete na Facebooku psát se svým kamarádem, bude to právě protokol IP, který zaslanou zprávu přes různé počítačové sítě doručí na servery Facebooku a odtud až do počítače vašeho známého. Zmíněný paket se skládá jak se samotné zaslané zprávy na Facebooku (např. jj, příjdu), tak metadat, s jejíchž pomocí bude protokol IP vědět, kam paket doručit.
Zajímavé je, že protokol IP nezaručuje, že paket skutečně doručí, jen se o to pokusí. Což může být docela problém, že? Co kdybychom posílali přes datovou schránku daňové přiznání a ono nedorazilo? Proto se IP kombinuje s dalším protokolem TCP. Výsledné kombinaci se říká TCP/IP a zmíněné TCP v této dvojici zaručuje spolehlivé doručení zprávy ve správném pořadí. Ne vždy je to ale výhodné. Až bude Česko sledovat na internetu mistrovství světa v hokeji, počítačové sítě by měly co dělat, pokud by musely garantovat dodání každého pixelu v obraze, přičemž výpadek jednoho čtverečku běžně člověk ani není schopný zaregistrovat. Naštěstí zde máme protokol UDP, opět kombinovaný s IP do podoby UDP/IP. UDP na spolehlivost příliš nehledí, raději se zaměřuje na rychlost. Servery České televize pak nemusí přeposílat ztracený (a v tu dobu již starý) pixel, protože hokejové utkání již pokročilo o nějakou vteřinu a raději odešlou aktuální data.
Teď se můžeme vrátit k IP adrese a vysvětlit si pojem maska. Správně totiž nemá moc smysl uvádět jen samotnou IP adresu, protože maska s ní umí dělat úplné divy a tak je více než žádoucí ji znát. Každá IP adresa je rozdělena na 2 části. První část udává síť, druhá již identifikuje konkrétní zařízení v síti. Podívejme se například na populární kombinaci 192.168.1.1 a masku 255.255.255.0. Masku si musíme převést do binární podoby a počet jedniček zleva nám říká, kde se IP adresa dělí na zmíněné dvě poloviny.
Po rozdělení máme 11000000.10101000.00000001.00000001. Červená část udává síť, modrá prostor, který můžeme použít k identifikaci zařízení (např. počítačů) uvnitř této sítě.
V adresním prostoru automaticky vznikají dvě speciální adresy:
K čemu je tedy ta maska? Stručně řečeno, s její pomocí lze měnit rozsah jednotlivých sítí a vytvářet podsítě. U sebe doma si tak např. můžete vyrobit 2 sítě, které se vzájemně neuvidí a k jejich propojení použijete router. K příkladu z úvodu článku — masku při vytváření LAN uvádíme proto, aby počítače byly na stejné síti a vzájemně se viděly.
Router neboli směrovač je krabička, která přeposílá pakety. Umí adresovat (směrovat) mezi sousedními sítěmi. Switch dělá něco podobného ale pouze na úrovni lokální sítě. Krásně je to napsáno na Wikipedii:
Rozdílné funkce routerů a switchů si lze představit jako switche coby silnice spojující všechna města ve státě a routery coby hraniční přechody spojující různé země.
Ta krabička co máte pod stolem tedy automaticky není vždy router, i když jí tak možná říkáte. Také může jít o switch. Je jednoduchá metoda, jak poznat, co vám to tam vlastně bliká. Switch ke svému běhu nepotřebuje IP adresu. Koupíte jej v obchodě, donesete domů, strčíte do něj kabel a to je vše. Router je ve své podstatě počítač, který ale nedělá nic jiného, než že neustále přeposílá (směruje) pakety. Ke svému běhu musí mít nastavenou IP adresu, vlastně ideálně dvě, aby mohl mezi těmito dvěma sítěmi směrovat.
Někdy potřebujeme odeslat paket na více cílových stanic zároveň. Představme si například internetové rádio, pro které je zbytečné duplikovat provoz a odesílat ta samá data k mnoha počítačům separátně. Na místo toho je lepší vytvořit tzv. IP multicast. Cílové stanice v tomto případě sdružíme do skupin a paket odešleme právě do této skupiny. Zmíněnou funkcionalitu přináší protokol IGMP.
]]>Na webu lowendbox.com jsem objevil velmi atraktivní nabídku. VPS s 2 GB RAM a 50 GB SSD diskem za 6 USD měsíčně. Dlouho jsem neváhal a server pořídil. Pokud o něj máte také zájem, můžete jej objednat zde. Nabídka údajně není nijak časově omezena. Doporučuji nejprve si přečíst komentáře a ověřit si tak, zda-li vám VPS po všech ohledech vyhovuje.
Tip: Pokud si mnou zmíněné VPS skutečně koupíte a budete platit přes PayPal, bude vás firma nutit k automatické měsíční platbě. Stačí však jednoduše první stránku žádající úhradu zavřít. Po přihlášení ke svému účtu si následně vyhledáte nezaplacenou objednávku. Tu můžete uhradit jen na jedno období (a každý měsíc si tedy musíte pamatovat, že je třeba opět VPS zaplatit) nebo zvolit automatické strhávání peněz z PayPalu. Osobně preferuji první možnost, i když se zdá o něco složitější, protože už z principu se mi automatické posílání i menší částky příliš nelíbí :-).
Nyní tedy máme VPS s dostatečným výkonem a operačním systémem Debian 6, vybraným při vytvoření objednávky. Kde je ale slíbená plocha? Tu stačí jednoduše doinstalovat. O úspěšné provedení tohoto kroku jsem se v minulosti již několikrát pokoušel, vždy neúspěšně. Zachránil mě až tento zapadlý, ale velmi užitečný návod. Postupujte přesně podle něj a máte VPS se vzdálenou plochou za sympatickou měsíční cenu 6 USD.
]]>Protože jsem však v danou chvíli byl líný přepisovat hash ze své čtečky do počítače, začal jsem hledat co nejjednodušší OCR. Narazil jsem na jednoduchý portál cam2txt.com, který však nabízel přesně to, co jsem potřeboval. S pomocí webové kamery služba zachytí obrázek a ten následně dekóduje (vyhledá v něm text). V Chrome jsem měl problémy s povolením webkamery, to však patrně bylo způsobeno tím, že používám Linux. Vše naštěstí vyřešila změna prohlížeče, přičemž věřím, že na Windows vám Chrome potíže nezpůsobí.
Cam2Txt.com dokáže znaky dekódovat, vyžaduje to však chvíli laborování. Úspěch totiž významnou měrou závisí na kvalitě vstupní fotografie. Nejlepší výsledky přináší přímé nahrání souboru s obrázkem v digitální podobě. Věnujte rovněž pozornost správnému nastavení jazyka (volba Czech nechybí). Jak už to u OCR bývá, finální kvalitu výstupu ovlivňuje i použitý font a jeho velikost, roli hrají i rozestupy mezi jednotlivými písmeny. Na rychlý převod krátkého vstupu však může být Cam2Txt.com dostačující, protože uživatele nezdržuje registrací a ihned zobrazí získaný text.
A co vlastně hash obsahoval? Bohužel další, pro mě neznámý hash, tipuji jej na interní řešení daného obchodu. Přesný obsah kódu jsem se tedy nedozvěděl, s největší pravděpodobností však půjde pouze o ID, které v tabulce eshopu identifikuje mě jako kupujícího.
]]>Koncept používání proxy serverů k obcházení geografického omezení není žádnou novinkou, Hola mě však zaujala velmi jednoduchým použitím. Službu tak použije i člověk, který pod pokličku IT příliš nevidí. Projekt je k dispozici pro Windows, Android, Chrome, Firefox a Mac OS. Já běžně používám Linux, a proto jsem zvolil plugin pro Chrome. Ten stáhnete přímo z oficiálního tržiště sdružujícího jednotlivá rozšíření.
Po dokončení instalace stačí přejít na stránku, jenž se odmítá zobrazit. V pravé části adresního řádku (omniboxu) klikněte na ikonku Hola. Následně zvolte zemi, kterou portál vyžaduje. Hotovo.
Pro vybrané portály jsou dokonce k dispozici speciální skripty, jenž Hola použije ke správnému automatickému nastavení. Pokud například zavítáte na hulu.com, nemusíte se o nic starat, Hola vše udělá za vás. Stačí jen opět v menu jedinkrát kliknout. Seznam skriptů naleznete pod záložkou Settings, kde lze jednotlivé položky spravovat a hledat další pomůcky tohoto druhu. Jejich počet roste, podívejte se například zde.
Další výhodu projektu Hola vidím v rychlosti. S klidným svědomím proto můžete na cílové stránce otevřít video. S podobným úkolem mívají bezplatné proxy servery často problémy, Hola však s tímto případem počítá a dokonce k němu i sama vybízí. Pro zmíněnou online videotéku hulu.com se například přiřadí server pojmenovaný jako US fast slibující rychlou odezvu.
]]>http://www.mobilmania.cz/#utm_source=zive&utm_medium=selfpromo&utm_campaign=hlavicka
Jaký má smysl přijít o původně krátký odkaz a záměrně jej doplnit o další informace? Až donedávna jsem si myslel, že se bez UTM kampaní skvěle obejdu. Mnoho podrobností o návštěvnících totiž dokáže odhalit Google Analytics. Problémem ovšem je, že stále častěji se mi na předních příčkách zobrazuje not provided. Google u uživatelů používajících SSL verzi jeho stránky (s https:// na začátku) totiž neponechává informaci o zdroji, ze kterého člověk přichází. Konkrétně se v $_SERVER[‚HTTP_REFERRER‘] nachází naprosto nepodstatný údaj – URL vyhledávače Google, nic víc. Zajímavé přitom je, že záměna pole HTTP REFERRER není tak úplně jednostranným rozhodnutím ze strany Google. Se zmíněnu vlastností totiž počítá přímo HTTPS, a to s cílem ochránit soukromí surfařů.
Pokud máte několik webů, které na sebe vzájemně upozorňují a zajímá vás přelévání návštěvníků mezi nimi, patrně se bez UTM neobejdete, což byl i můj případ. Jednoduše proto nyní vysvětlím, co vše jednotlivé parametry s utm_ na svém počátku znamenají.
Podobných parametrů je mnohem více, výše zmíněné tři se ovšem považují za povinný standard. Pro osoby které k IT netíhnou a nemohou si zapamatovat, kde v URL patří otazník a kam zase ampersand, vytvořil Google jednoduchý generátor UTM odkazů, který zmiňuje i ostatní parametry.
Odkaz jsme tedy vytvořili, ale stála ta námaha za to? Ano, přihlaste se do Google Analytics, vyberte dotyčný web a pokračujte přes Zdroje návštěvnosti → Zdroje → Kampaně. Zde snadno zjistíte, jaká kampaň patří mezi ty úspěšnější. Primární dimenze pak ukrývá i další údaje, například nejvýkonnější zdroje. Rozhodně se někdy vyplatí zkombinovat více informací dohromady, a proto klikněte na Sekundární dimenze, rozbalte Zdroje návštěvnosti a zvolte druhý požadovaný UTM parametr.
]]>Podívejme se nejprve na hardwarové parametry samotného VPS. K dispozici je 128 MB RAM, o uložení dat se postará disk o velikosti 10 GB. Potěší neomezený bandwith a především veřejná IP. Bez ní by totiž server rázem neměl tak široké pole působnosti. Virtualizace spoléhá na OpenVZ.
Osobně mívám na levných VPS především problém s nedostatkem volné RAM. Jak však ukazuje následující příkaz, ihned po spuštění serveru má uživatel k dispozici 90 MB.
Následuje výpis defaultně spuštěných služeb:
K získání VPS zavítejte na host1free.com a zvolte Free Cloud VPS. Nejprve budete vyzvání ke stažení aplikace k zabezpečení počítače. Zda přitom program skutečně nainstalujete závisí zcela na vás, není to nutná podmínka k přidělení VPS.
V dalším kroku doporučuji použít email, který se netváří tak, že slouží k ochraně před SPAMem. O povolení účtu totiž rozhodují skuteční lidé. Snažte se proto vytvořit dojem seriózního zájemce, který by v budoucnosti mohl uvažovat o placeném upgrade svého serveru a nevkládejte adresu typu neco@temporaryemail.com.
A tím registrace končí. Nyní již stačí doufat, zda se svého VPS skutečně dočkáte. V mém případě jsem dostal potěšující email s přístupovými údaji již na druhý den.
VPS se pochopitelně pro náročnější projekty nehodí. Osobně server momentálně využívám jen k nastavení CRONu. Mnou dosud preferovaná služba totiž zavedla určitá omezení, jenž nedovolují velmi časté spouštění úloh. Ani jednou jsem prozatím nezaznamenal výpadek, mějte však na paměti, že tak tomu u bezplatného produktu vždy být nemusí.
]]>Začneme tím, že si vytvoříme klasický HTML soubor a do něj zapíšeme podpis v požadované podobě. Použít můžeme i obrázky z externím serverů (v mém případě používám logo operačního systému Ubuntu). Výsledek může vypadat například takto:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title></title> </head> <body> <div> <div> <span style="font-size: 1.3em"><strong>Jméno Příjmení</strong></span> </div> <div> <em>Adresa</em> </div> <div> <img src="http://assets.ubuntu.com/sites/ubuntu/latest/u/img/logos/logo-ubuntu-orange.png" /> </div> </div> </body> </html>
Nyní celý obsah lokální stránky označte (CTRL + A) a zkopírujte do schránky (CTRL + C).
Následně zavítejte na Gmail. Klikněte na ozubené kolo v pravém horním rohu a zvolte Nastavení. Již v první záložce Obecné se nachází část Podpis. Zde do zobrazeného pole vlože obsah schránky (CTRL + V) a změnu uložte s pomocí tlačítka situovaného na úplném konci stránky.
A to je vše, nyní se Gmail naučil používat HTML podpis a bude jej automaticky vkládat ke všem odeslaným zprávám.
]]>Zmíněné rozšíření pracuje bez sebemenší chybičky, přichází však podle mého názoru s poněkud neintuitivní formou počátečního nastavení. Popíši proto, jak plugin vyladit přesně pro konkrétní účel.
Po přidání do Chromu se Autofill ukrývá pod položkou Nástroje → Rozšíření. Do prohlížeče žádné tlačítko pro rychlý přístup přidáno není. Na stránce s dostupnými pluginy u položky Autofill zvolte poněkud nenápadnou volbu Možnosti. Zde konečně získáváte nad rozšířením plnou kontrolu. Můžete například odstranit některá předpřipravená pravidla, což jsem učinil. Plugin si je však stále pamatoval a předvyplňoval údaje u formulářů, kde jsem si to nepřál. Po mnoha pokusech jsem konečně zaregistroval na spodní části stránky s nastavením tlačítko Save. Změny tedy nejsou prováděny okamžitě, ale až po uložení.
Nyní tedy máme z pluginu odstraněná nechtěná pravidla a můžeme se vrhnout na vytvoření vlastních podmínek. Po počátečním zklamání, kdy jsem získal dojem, že si budu muset napsat vlastní regulární výrazy, jsem objevil menu Autofill v kontextové nabídce vyvolané pravým tlačítkem myši. Stačí proto v prohlížeči načíst stránku s formulářem, jenž si přejete předvyplňovat a zvolit v kontextovém menu Autofill → Add rules for this form. Pod adresním řádkem se zobrazí stručný průvodce, jenž si vyžádá vložení informací do formuláře, výběr profilu a uložení pravidla. Po provedení tohoto kroku již nikdy opakovaně shodné údaje vypisovat nemusíte.
]]>