website security & wordpress (peter gramantik)
DESCRIPTION
TRANSCRIPT
Website Security & WordPress
co se děje & jak se vyhnout katastrofě
Kdo je P.G. ?!
Specializace:- malware researcher- mobilní malware- “vrtačka”
Kdo je P.G. ?!
Specializace:- malware researcher- mobilní malware- “vrtačka”
Zájmy:- rock- rybaření
Kdo je P.G. ?!
Specializace:- malware researcher- mobilní malware- “vrtačka”
Zájmy:- rock- rybaření- malware ;-)
Sucuri - www.sucuri.net- malware protection
detection alerting cleanup
Kdo jsme?- Website Security Company- Celosvětová působnost- Všechny webové platformy- Scanování přes 1M unikátních domén / měsíc- Zablokování přes 1M webových útoků / měsíc- čištění cca 300 - 500 web stránek / den- detekce založená na signaturách / heuristice - operace 24/7
Obsah
Část 1: - statistiky, trendy, pozorování... - & více..
Obsah
Část 1: - statistiky, trendy, pozorování... - & více..
Část 2: - případová studie
Obsah
Část 1: - statistiky, trendy, pozorování... - & více..
Část 2: - případová studie (menší nuda)
O čem to celé je?- počet napadených linků / stránek stoupá
85% infikovaných stránek je hostováno u legitimních (a oblíbených) provozovatelů web hostingu
Malware, nebo alespoň něco jako malware je všude kolem
Typy malware a jejich distribuce
Malé stránky v nebezpečí?Otestovali jsme prvních1 000 0000stránek zAlexa Page Rank
Tohle jsou výsledky:
Malé stránky v nebezpečí?Otestovali jsme prvních1 000 0000stránek zAlexa Page Rank
Tohle jsou výsledky:
Malé stránky v nebezpečí?Otestovali jsme prvních1 000 0000stránek zAlexa Page Rank
Tohle jsou výsledky:
Malé stránky v nebezpečí?Otestovali jsme prvních1 000 0000stránek zAlexa Page Rank
Tohle jsou výsledky:
Malé stránky v nebezpečí?Otestovali jsme prvních1 000 0000stránek zAlexa Page Rank
Tohle jsou výsledky:
We need to go deeper...
We need to go deeper...
Všechno je o přístupu
Automatizované hackování- Exploze v Malware as a Service (MaaS) obchodu
- zaplaťte si vlastního hackera
- Různé automatické nástroje na hackování a generování payloadu- “script kiddies” vs. profesionální teamy
- Blesková infekce- jeden moment je vše OK, za chvilku.. je to plné hvězd malware
- Blackhole Exploit Kit- Leader v poskytování MaaS
Co to všechno znamená?- Poškození značky- Právní problémy- Dopad na prodeje- Blacklistování ve vyhledávacích enginech- Blacklistování u platebních služeb- Nejhorší den života...
Obrana?
Obrana! Vrstvy
Obrana!
- Kontrola přístupů- Zranitelnosti- Hosting- Online chování & zvyky- Sociální sítě- Hesla
Všechno je to o přístupu... “ It’s about risk reduction… risk will never be zero… ”
- všichni to ví, (téměř) nikdo to nedodržuje- bezpečná heslo, brute-force vs. slovníkový útok- jméno vašho zvířecího mazlíčka není bezpečné heslo- pravidelná změna hesla, silné heslo není všechno- spolehlivý password manager? Dobrá volba! - nevěřte nikomu :)- sledujte kdo přistupuje na váš server- SFTP / SSH místo FTP
Ochranné vrstvy - přístup
Ochranné vrstvy - zranitelnosti
Ochranné vrstvy - servry
Část 2: Případová studie
Příběh jedné naprosto běžné infekce
Pozadí- bežná honeypot stránka- zranitelnost v přístupu- měsíce čekání, dokud...
Jak to začalo?
Nejenom pokus, ale někdo se opravdu přilogoval jako admin z následující IP: 188.3.48.163
Útočník
Zcela zjevně nikdo z kolegů, čas podívat se na to trochu víc
Logy
Bylo nezbytné zjistit co všechno útočník provedl, takže jsme začali u auditovací funkce v Sucuri pluginu. Hledali jsme a našli...
Potvrzení známých skutečností
Ano. Konání našeho hackera je dobře viditelné v auditu a samozřejmě i v “syrovém” server access logu. To důležité v server logu najdeme jednoduše korelováním těchto dvou logů.
Hax0r má problémy
Jeho dalším krokem bylo ověřit si, jestli byl úspěšný, takže se pokusil navštívit stránku 404. Nejdřív přímo v umístění témy, následně v rootu.
Je dobré si všimnout dvou různých chybových kódů po tomto pokusu: 403 a 404. První, 403 říká, že Přístup byl odmítnut. Druhý, 404, říká, že Soubor nebyl nalezen.
403-ka je způsobena naším “zpevněním” v .htaccess uvnitř wp-content, které zabraňuje zpouštění PHP:
404-ka se objevila, protože napadená táma nebyla aktivní. Vzpomínáte? Později změnili tému. Stejně to nevysvětluje, proč nepracovali přímo s aktivní témou. Hackeři se někdy chovají podivně..
Úspěch
Tak se jim to povedlo a oni si to ověřili. Byli uvnitř...
[01/Nov/2013:13:23:48 -0700] "GET /wp-admin/theme-editor.php?file=404.php&theme=twentythirteen&scrollto=8896&updated=true HTTP/1.1" 200 66718 [01/Nov/2013:13:24:04 -0700] "GET /wp-admin/theme-editor.php?file=index.php&theme=twentythirteen HTTP/1.1" 200 7810 [01/Nov/2013:13:24:14 -0700] "POST /wp-admin/theme-editor.php HTTP/1.1" 302 486 [01/Nov/2013:13:24:20 -0700] "GET /wp-admin/theme-editor.php?file=index.php&theme=twentythirteen&scrollto=8896&updated=true HTTP/1.1" 200 66725
After switching theme, they needed to verify:
[01/Nov/2013:13:24:27 -0700] "GET / HTTP/1.1" 200 3001 "-"
Yes, they’ve got the 200 result.
Kde je zakopaný pes malwareÚtočníci zneužili jinak poměrně užitečnou vlastnost. Abyste pochopili co dělají, musíte pochopit jak WordPress a taky mnoho jiných CMS pracuje.
Mají hierarchii načítání která zpustí PHP soubory patřící k aktivní témě a pluginům. V tomto případě náš útočník vložil infikovaný kód do souborů 404.php a index.php témy z které nasledně udělal aktivní, takže malware kód se načetl. No a jelikož infikovali i (témový) index.php, mohli si otestovat funkčnost načtením přímo rootu stránky “/” - to je to co jste viděli na předchozím slidu.
No a jelikož byli úspěšní, mohli začít pracovat se svým backdoorem posíláním příkazů. Každý z nich nám způsobil jinou obtíž, ale bylo hezké to sledovat. Konec konců, my jsme chtěli být napadeni..
Nebezpečný Náklad[01/Nov/2013:13:24:32 -0700] "GET /?webr00t=telnet HTTP/1.1" 200 2805
Kompletní analýza je mimo rámec téhle prezentace, ale ve zkratce:
další BACKDOOR
Nové ohlédnutí do logů
Následně útočníci používají další backdoor funkci:
Nyní už víme co dělají. Ale proč .root soubory a jak to funguje? Odpověď je v modifikovaném .htaccess souboru:
[01/Nov/2013:13:24:59 -0700] “GET /?webr00t=config HTTP/1.1″ 200 2828 “http://www.[honeypot].com/?webr00t=telnet”
Ještě to nestačilo?Jeden z příkazů backdooru byl “config”. Co dělá?
Nyní již máme kompletně napadenou stránku, navíc se symlinkama všude možně, takže útočník má přístup v podstatě k čemukoliv na servru. Není to hezké? A už to stačilo?
V tomto momentu můžou útočníci dělat cokoliv. Krást data, uploadovat další soubory / skripty a užívat server k dalším akcím. Co bylo dál?
Velké finálePo detailní analýze jsme zjistili, že útočníci stáhli další data ze sdíleného servru. Věci jako /etc/passwd a další soubory. Každá z funkcí backdooru byla naprogramována tak aby provedla automatizovanou a kompletníútočnou sekvenci, takže poměrně složitý útok byla jenom otázka pár “kliků”. Když skončili, zanechali nám malý dárek - zlikvidovanou stránku, což je celkem neobvyklé:
Proč?Jednoduše proto, že mohli. Podle všeho se chtěli jenom ukázat. Název našeho honeypotu byl nejspíš také poněkud vybízející takže nám zkrátka zanechali jedno velké virtuální LOL. Další možností je, že jim to prostě bylo jedno...
Na základě analýzy jejich akcí a web-shellu samotného to vypadá, že se zaměřili na servrová data. Věci jako existující uživatelské účy a podobně. Zničení stránky nebylo nic víc než jedno velké FU na konci jejich pracovního dne. V každém případě, sledování takovýchto incidentů je vždy zábava, ale také se neustále učíme. Útočníci jsou téměř vždy o krok napřed.
A jak nám zničili stránku?
Nejdříve prostě smazali wp-includes a wp-admin, následně navíc přidali nový .htaccess do rootu který znemožní spuštění jakéhokoliv PHP kódu.A to je všechno...
Zajímavé linky:http://blog.sucuri.nethttp://sucuri.tvhttp://wordpress.org/tags/hackedhttp://wordpress.org/tags/malwarehttp://codex.wordpress.org/Hardening_WordPresshttps://www.badwarebusters.org/http://www.exploit-db.com/search/?action=search&filter_description=Wordpress&filter_platform=31
Děkuji za pozornost!...a dejte si pozor...
Na všecno ;-)