Zamestnanci pravdepodobne práve sedeli pri vianočnom stromčeku s deťmi a rozbaľovali darčeky, keď sa na jednom z produkčných webových serverov nášho klienta začali diať čudné veci. Na začiatku incidentu, ktorý sa udial na Štedrý deň minulého roka, išlo o požiadavku na endpoint webovej aplikácie, kde sa nachádzala neopravená zraniteľnosť. Už o niekoľko sekúnd začal server robiť to, čo by vôbec nemal: skúšať komunikáciu smerom von, na infraštruktúru útočníka.
Príbeh nie je z hypotetického scenára. Ide o reálny, anonymizovaný incident z praxe, ktorý riešil na prelome rokov tím Binary Confidence. Klient prevádzkoval webový server s viacerými aplikáciami a spracúval citlivé osobné údaje. Po potvrdení incidentu preto nebolo našou úlohou len zistiť, ako sa útočník dostal dovnútra, ale aj či mohol pristupovať k dátam alebo ich odoslal mimo prostredia.
Známa zraniteľnosť bola bránou do systému
Naše vyšetrovanie ukázalo, že útok smeroval na neopravenú zraniteľnosť v komponente Laravel Livewire. Išlo o kritickú chybu typu “Remote Code Execution”, teda zraniteľnosť, ktorá môže útočníkovi umožniť spustiť vlastný kód na serveri.
Tieto zraniteľnosti sú mimoriadne nebezpečné najmä vo chvíli, keď sa ich technické detaily dostanú na web. „Ak sa zraniteľnosť stane verejne známou a existujú k nej automatizované nástroje, internet sa začne skenovať prakticky okamžite,“ hovorí Jozef Rusnák, expert Binary Confidence.

V tomto prípade boli prvé úspešné požiadavky zaznamenané 24. Decembra večer. Server následne s rozdielom niekoľkých sekúnd začal komunikovať smerom von. To je presne ten moment, kedy sa z potenciálneho technického problému stáva vážny bezpečnostný incident.
“ET zavolal domov” a útočník získal prístup k súborom na serveri
Samotná zraniteľnosť bola vstupnou bránou. Následná analýza ukázala prítomnosť škodlivých PHP súborov tzv. “webshellov”, ktoré útočníkovi umožňovali čítať, upravovať alebo mazať súbory, ku ktorým mal prístup webový proces. V prostredí, kde sa spracúvajú citlivé dáta, je to vážny problém, aj keď sa neskôr nepotvrdí masová exfiltrácia.
Už samotný fakt, že útočník využil komunikáciu servera smerom von na získanie možnosti spúšťať kód v jeho prostredí, je mimoriadne vážnym ohrozením. „Používateľ sa má vedieť pripojiť na web. To je normálne. Ale keď začne server po zneužití zraniteľnosti volať von na neznámu infraštruktúru, to je správanie, ktoré musí okamžite spustiť všetky alarmy,“ vysvetľuje Jozef Rusnák.
Ako sme útok zastavili?
Bezpečnostné kontroly podozrivú komunikáciu zachytili. Firewall spojenia označil ako hrozbu a ukončil ich. Forenzná analýza zároveň nenašla dôkaz o úspešnej masovej krádeži dát, databázových dumpov alebo podozrivých archívov pripravených na odoslanie.
Stále to ale neuberá na vážnosti incidentu. Útočník sa dostal dovnútra, na serveri boli nájdené škodlivé nástroje a systém sa pokúšal komunikovať s externou infraštruktúrou. Rozdiel bol v tom, že monitoring a bezpečnostné kontroly pomohli obmedziť dopad.
Poučenie číslo 1: Aj na patchovaní nezaplátanej zraniteľnosti stojí vaša kyberbezpečnosť
Nepriepustnosť akéhokoľvek systému často zlyhá na veciach, ktoré vôbec nevyzerajú dramaticky. Zvyčajne nejde o žiaden hollywoodsky scenár, kedy hackeri využívajú ultra-sofistikované metódy. Spravidla vašu bezpečnosť môže zabiť nenápadný, neaktualizovaný komponent webovej aplikácie. Zvyčajne je to knižnica, plugin alebo framework, ktorý niekto kedysi nasadil, aplikácia na ňom roky spoľahlivo fungovala a preto prestal byť v centre pozornosti.
Hackeri dnes už necielia len na veľké a dobre známe systémy. Ransomware útoky stále viac cielia na malé a stredné podniky, ktoré predstavujú “low-hanging fruit”, teda ľahká korisť s poddimenzovanou bezpečnosťou. Pri spomínaných automatizovaných systémoch, ktoré skenujú celý internet a hľadajú zraniteľnosť, ktorú niekto nestihol alebo zabudol opraviť, je rozdiel medzi bezpečným a kompromitovaným serverom otázkou sekúnd.

Nestačí aktualizovať iba operačný systém, firewall alebo najviditeľnejšie aplikácie. Moderné weby stoja na desiatkach komponentov, knižníc a pluginov. Práve tie sa môžu stať slabým miestom. Firma musí vedieť, čo prevádzkuje, kde to beží, či je to vystavené do internetu a či existuje dostupná oprava. Bez takejto evidencie sa patchovanie mení na hádanie.
Poučenie číslo 2: Zálohy musíte mať. Ideálne čisté
Jednou z možností pri riešení incidentu bolo obnoviť systém zo staršej zálohy. Problém nastal v momente, keď sa zistilo, že najstaršia dostupná záloha už obsahuje známky kompromitácie. Prakticky to znamenalo, že neexistoval čistý bod obnovy, ku ktorému by sa klient mohol bezpečne vrátiť.
„Pri incident response nestačí mať zálohu. Potrebujete vedieť, či je tá záloha čistá. Ak sa útočník dostal do systému pred jeho vytvorením, obnovíte si späť aj kompromitovaný stav,“ upozorňuje Jozef Rusnák. Zálohy je nevyhnutné okrem vytvárania aj pravidelne testovať. Overovať ich časový rozsah, integritu a bezpečnosť. Ideálne v izolovanom prostredí, nie rovno v produkcii.
Poučenie číslo 3: Logy sú dôležitý nástroj vyšetrovania
Logy sú pamäťou systému. Ukazujú, čo sa dialo, kedy sa to dialo a odkiaľ aktivita prišla. Ak organizácia uchováva logy iba krátko, vyšetrovanie sa môže veľmi rýchlo dostať do slepej uličky.
V prípade tohto vyšetrovania nášmu tímu krátka doba uloženia logov výrazne sťažovala spätnú analýzu. Záznamy o dianí v systéme mala firma nanajvýš z posledných dvoch týždňov. Útočník pritom mohol byť v prostredí prítomný dlhšie, no bez starších logov sa to nedalo spoľahlivo potvrdiť ani vyvrátiť.

Centralizovaný logging, SIEM, monitoring správania webového používateľa, monitorovanie integrity súborov a dlhšia retencia logov sú vhodnými praktikami, ktoré vás podržia, keď príde na najhoršie, a sú predpokladom kvalitnej reakcie na incident.
Na kvalitnejšiu bezpečnosť môže stačiť aj disciplína
Incident z minulých Vianoc dáva veľmi jednoduchý príklad, že základná kybernetická bezpečnosť nemusí nevyhnutne stáť (a spravidla ani nestojí) len na veľkých projektoch a drahých technológiách. Vyžaduje si hlavne disciplínu v základných procesoch, akými v tomto prípade boli softvérové záplaty či zálohovanie.
Tieto procesy zvyčajne nevyžadujú extrémne nákupy technológií ani zásadnú námahu vášho IT tímu. Na konci dňa pritom môžu znamenať rozdiel medzi bezpečím a totálnou kompromitáciou vášho podnikania.
Ak chcete zabezpečiť svoje dáta, reputáciu a vaše podnikanie, vždy sa môžete obrátiť na expertov. Dobré postavené procesy vedia robiť divy a ak chcete poradiť, s nami vždy viete, kto klope na infraštruktúru a ako ho treba vyprevadiť von. Binary Confidence pomáha firmám útoky odhaliť, zastaviť a pochopiť skôr, než sa z technického problému stane drahá krízová situácia. Zároveň sa špecializujeme na vyhľadávanie a predvídanie hrozieb vrátane monitoringu zločineckých aktivít. Hackeri milujú chodiť najmä na sviatky, ale my ich sledujeme aj vtedy.
Projekt financovaný cez grantovú zmluvu číslo 101145856 je podporovaný Európskym kompetenčným centrom pre kybernetickú bezpečnosť.
