Prijeđite na sadržaj

Postavke kolačića

Za svaku vrstu odaberite koje kolačiće dopuštate. Svoj odabir uvijek možete promijeniti putem poveznice Postavke kolačića na dnu svake stranice. Izjava o privatnosti

Nužni

Uvijek uključeni

Potrebni za prijavu, čuvanje košarice i pamćenje Vaših odabira. Uvijek su uključeni.

Koji kolačići?
  • weboke_sessie, weboke_klant, weboke_remember: Vaša sesija i to da ostanete prijavljeni
  • weboke_basket: Vaša košarica
  • wkBtwIncl: prikaz cijena s PDV-om ili bez njega
  • wok_cookies: Vaš odabir kolačića, 12 mjeseci

Mjeri koji oglas dovodi do posjeta ili narudžbe, kako ne bismo plaćali oglase koji ništa ne donose.

Koji kolačići?
  • Google Ads putem Google Tag Managera (_gcl_au, _gcl_aw), do 90 dana
  • OpenAI Ads, oglasi u ChatGPT-u
  • wok_aff: preko kojeg ste partnera došli k nama (partnerski program), 60 dana

4,6

Država i jezik

Svaka država ima vlastitu stranicu, s cijenama i PDV-om te države.

Pogledajte

Kada nešto pođe po zlu

Modul 10: Ostanite sigurni · Vrijeme čitanja: 11 minuta

Cilj učenja: Nakon ove lekcije prepoznat ćete znakove hakiranog poslužitelja i poduzeti prve korake bez uništavanja dokaza ili sigurnosnih kopija. Znat ćete birati između čišćenja i ponovne instalacije te kada morate prijaviti povredu osobnih podataka.

Ključni pojmovi: incident, znakovi, izolacija, snimka (snapshot) kao dokaz, dnevnik incidenta, ponovna instalacija, zamjena ključeva i lozinki, čista sigurnosna kopija, obveza prijave povrede osobnih podataka (72 sata), Agencija za zaštitu osobnih podataka, plan za hitne slučajeve

Prepoznavanje incidenta

Provala se rijetko najavljuje. Obično primijetite nešto što je "čudno". Znakovi koje trebate shvatiti ozbiljno:

  • Visoko opterećenje bez razloga: procesor je stalno na 100%, primjerice zbog cryptominera. Pomoću top ili htop provjerite o kojem je procesu riječ i pod kojim korisnikom radi.
  • Nepoznati procesi ili servisi: program neobičnog naziva, često u /tmp, /dev/shm ili /var/tmp, ili systemd servis ili timer koji niste sami izradili.
  • Odlazni promet koji nije u redu: Vaš pružatelj usluge javlja da Vaš poslužitelj šalje spam ili napada druge poslužitelje, ili grafovi mrežnog prometa na upravljačkoj ploči pokazuju skokove.
  • Novi korisnici ili ključevi: redak u ~/.ssh/authorized_keys koji ne poznajete, korisnik u /etc/passwd s UID 0, novi redak u /etc/sudoers.d/.
  • Izmijenjene datoteke: nepoznate PHP datoteke na Vašoj web-stranici, izmijenjen crontab.
  • Zapisi koji su nestali ili su prazni: napadači rado brišu svoje tragove.

Nekoliko naredbi za brzi pregled:

anna@web1:~$ top -o %CPU
anna@web1:~$ sudo ss -tunap | grep ESTAB
anna@web1:~$ sudo last -n 20
anna@web1:~$ awk -F: '$3 == 0 {print $1}' /etc/passwd
anna@web1:~$ sudo find /etc/systemd/system /etc/cron* -newer /etc/hostname -type f
anna@web1:~$ for u in /root /home/*; do sudo cat $u/.ssh/authorized_keys 2>/dev/null; done

last prikazuje tko se i kada prijavio, redak s awk prikazuje sve račune s UID 0 (to bi trebao biti samo root), a redak s find traži unite i cron datoteke koje su novije od datoteke nastale pri instalaciji.

Pozor: na poslužitelju koji je stvarno hakiran i ove naredbe mogu biti krivotvorene. One Vam pomažu da nešto posumnjate, a ne da dokažete da je sve čisto.

Prvi koraci: mir, izolacija, bilježenje

U prvim minutama najvažnije je ne brisati stvari u panici. Radite ovim redoslijedom.

1. Započnite dnevnik. Na papir ili na svoje prijenosno računalo (ne na poslužitelj) zapišite što vidite, kada i što radite. To će Vam kasnije trebati za pronalaženje uzroka, za prijavu, kaznenu prijavu ili Vaše osiguranje. To preporučuje i nizozemski NCSC.

2. Izolirajte poslužitelj. Spriječite da nanosi daljnju štetu (spam, napadi, slanje podataka van), a da ga pritom ne isključite:

  • u vatrozidu Vašeg pružatelja usluge (ako postoji) zatvorite sve osim SSH-a s Vaše vlastite adrese; ili
  • učinite isto na samom poslužitelju, putem konzole;
  • ako drukčije ne ide: isključite poslužitelj putem upravljačke ploče. Tada ćete ipak izgubiti sadržaj radne memorije.

3. Napravite snimku (snapshot). Snimka na upravljačkoj ploči bilježi stanje kakvo je sada. To je Vaš dokaz i izvor za kasnije istraživanje kako je napadač ušao, čak i ako poslužitelj nakon toga ponovno instalirate.

4. Osigurajte svoje sigurnosne kopije. Provjerite jesu li Vaše sigurnosne kopije izvan poslužitelja još netaknute i pobrinite se da im hakirani poslužitelj više ne može pristupiti (primjerice, opozovite pristupni ključ poslužitelja za spremište sigurnosnih kopija). Napadači pokušavaju izbrisati ili šifrirati i sigurnosne kopije.

Čišćenje ili ponovna instalacija?

Primamljiv odgovor glasi: uklonite sumnjivu datoteku, zaustavite cryptominer i gotovo. No ne znate što je napadač još napravio: druga stražnja vrata, izmijenjen program, dodatni ključ, timer koji sve vraća natrag. Poslužitelju na kojem je netko imao root ovlasti više ne možete vjerovati.

Savjet administratora, a i nizozemskog NCSC-a, stoga glasi: ponovno instalirajte pogođene sustave i vratite svoje podatke iz sigurnosne kopije koja sama nije zaražena. Konkretno:

  1. Nova instalacija (ponovna instalacija na upravljačkoj ploči ili novi poslužitelj).
  2. Odmah osnove iz ovog tečaja: ažuriranja, običan korisnik sa sudo ovlastima, SSH s novim ključevima, vatrozid (moduli 2 do 5).
  3. Ponovna instalacija Vaših aplikacija iz službenih izvora, po mogućnosti uz Vaše compose datoteke ili bilješke (lekcija 10.4).
  4. Vraćanje podataka (baza podataka, prenesene datoteke) iz sigurnosne kopije od prije incidenta. Nemojte naslijepo vraćati kod ili konfiguraciju: oni mogu sadržavati stražnja vrata. I vraćene podatke pregledajte kritično; napadač je možda bio unutra dulje nego što mislite.
  5. Zatvaranje propusta kroz koji je napadač ušao. Inače će se to ponoviti. Snimka iz 3. koraka pomaže u istraživanju.

Zamijenite sve što je moglo procuriti

Polazite od pretpostavke da je sve što je bilo na poslužitelju u rukama napadača:

  • SSH ključevi: posvuda uklonite javne ključeve koji su bili na poslužitelju i izradite nove parove ključeva ako su na poslužitelju bili privatni ključevi.
  • Lozinke baza podataka, upravljačkih ploča i korisnika Vaše aplikacije.
  • API ključevi i tokeni (e-pošta, plaćanja, spremište u oblaku, spremište sigurnosnih kopija) iz datoteka .env i konfiguracije: opozovite ih kod pružatelja usluge i zamijenite.
  • Certifikati: privatni ključ Vašeg certifikata bio je na poslužitelju. Neka se certifikat opozove i zatražite novi (s Let's Encrypt to ide brzo, lekcija 7.3).

Prijava: GDPR (OUZP) i ostali

Ako su na poslužitelju bili osobni podaci (podaci o klijentima, korisnički računi, adrese e-pošte), možda je došlo do povrede osobnih podataka. GDPR (OUZP, članak 33) propisuje da voditelj obrade povredu prijavljuje nadzornom tijelu bez nepotrebnog odgađanja i, ako je izvedivo, najkasnije 72 sata nakon što je za nju saznao. U Hrvatskoj je to Agencija za zaštitu osobnih podataka (AZOP). Nekoliko važnih točaka:

  • prijava nije potrebna ako povreda vjerojatno ne predstavlja rizik za ispitanike; ako dvojite, prijavite;
  • ako još nemate sve informacije, ipak prijavite unutar 72 sata i kasnije dopunite;
  • osobe čiji su podaci procurili obavijestite ako za njih postoji visok rizik;
  • svaku povredu evidentirajte u vlastitom registru, čak i ako je ne morate prijaviti.

Ako poslužitelj održavate za klijenta, obično ste izvršitelj obrade: tada klijenta (voditelja obrade) morate obavijestiti bez nepotrebnog odgađanja kako bi on mogao podnijeti prijavu. Ova lekcija nije pravni savjet; u slučaju dvojbe pogledajte stranice AZOP-a.

Nadalje: zlouporabu izvršenu s Vašeg poslužitelja prijavite svom pružatelju usluge (on ju je često već primijetio), a kod ozbiljnog napada podnesite kaznenu prijavu policiji. Ako Vaša organizacija podliježe Zakonu o kibernetičkoj sigurnosti (NN 14/2024, prijenos NIS2), vrijede posebni, kraći rokovi za prijavu.

Priprema: plan za hitne slučajeve

Incident se uvijek dogodi u lošem trenutku. Ono što ste unaprijed pripremili štedi sate:

  • Znajte kako doći do konzole i gumba za snimke svog pružatelja usluge i čuvajte pristupne podatke upravljačke ploče (s dvofaktorskom autentifikacijom) negdje izvan poslužitelja.
  • Znajte gdje su Vaše sigurnosne kopije, kako ih vratiti i da rade (lekcija 8.2).
  • Vodite popis svih tajni koje se nalaze na poslužitelju, kako biste znali što morate zamijeniti.
  • Vodite popis kontakata: Vaš pružatelj usluge, tko još mora znati za poslužitelj (klijent, kolega) i kontaktni podaci za prijavu povrede podataka.

U praksi

U VPS sučelju WebOké pronaći ćete konzolu, snimke, sigurnosne kopije i gumb za ponovnu instalaciju; kod drugih pružatelja usluga zovu se otprilike isto (console ili VNC, snapshot, rescue, reinstall). Ovaj tečaj je samopomoć: nitko ne prati Vaš poslužitelj i nitko umjesto Vas ne rješava incident. Upravo je zato toliko važan plan za hitne slučajeve koji možete sami provesti.

Sažetak

  • Znakovi: neobjašnjivo opterećenje, nepoznati procesi, servisi ili ključevi, čudan odlazni promet, izmijenjene ili nestale datoteke i zapisi.
  • Prvi koraci: vođenje dnevnika, izolacija poslužitelja, snimka kao dokaz, osiguravanje sigurnosnih kopija.
  • Poslužitelj na kojem je netko imao root ovlasti ne čistite, nego ga ponovno instalirate; podatke vraćate iz čiste sigurnosne kopije i zatvarate propust.
  • Zamijenite sve ključeve, lozinke, tokene i certifikate koji su bili na poslužitelju.
  • Pogođeni su osobni podaci? Povredu prijavite AZOP-u, ako je izvedivo, unutar 72 sata i evidentirajte svaku povredu.

Kviz

1. Otkrili ste nepoznati proces koji već satima koristi 100% procesora, pokrenut iz /tmp. Što ćete učiniti prvo?



2. Zašto je nakon provale s root ovlastima ponovna instalacija bolja od čišćenja?



3. Nakon provale vraćate sigurnosnu kopiju. Što vraćate?



4. Na Vašem hakiranom poslužitelju bili su podaci o klijentima Vaše web-trgovine. Što GDPR (OUZP) kaže o prijavi?



5. Koje tajne morate zamijeniti nakon provale?



Zadatak

Zadatak O10.3: Vaš plan za hitne slučajeve na jednoj stranici. Za svoj poslužitelj napišite plan za hitne slučajeve od najviše jedne stranice A4: kako pristupate upravljačkoj ploči, konzoli i snimkama; gdje su Vaše sigurnosne kopije i kako ih vraćate; koje se tajne nalaze na poslužitelju; koga morate obavijestiti (i morate li prijaviti povredu podataka); te kojih pet prvih koraka poduzimate kada posumnjate na provalu. Plan čuvajte izvan poslužitelja.

Zadatak O10.3: Vaš plan za hitne slučajeve na jednoj stranici

Ovaj zadatak rješavate sami; nitko ga ne provjerava. Označite što ste napravili i označite zadatak kao završen.





Vaše kvačice i bilješke ostaju samo u ovom pregledniku; ne šaljemo ih nikamo. Ako ste prijavljeni, u Moji tečajevi čuvamo samo podatak da ste zadatak završili.

Dodatno štivo

Trenutak…

Postavite svoje domene

Za svaku domenu odredite nameservere, povezivanje s hostingom i tko postaje vlasnik.

Učitavanje Vaših domena…