Ghid de securitate · România

Ce fac dacă serverul a fost compromis?

Primul reflex după ce descoperi un proces necunoscut e să oprești serverul și să „cureți”. Amândouă sunt greșite: oprirea șterge dovezile din memorie, iar curățarea lasă aproape mereu o ușă în urmă. Un incident se tratează în ordine, nu în grabă.

Actualizat la

Răspuns scurt

  1. Dacă serverul a fost compromis, îl izolezi mai întâi prin firewall, blocând traficul spre internet și lăsând doar accesul tău, fără să-l oprești, ca să nu pierzi ce e în memorie.
  2. Păstrezi dovezile pe un suport din afara mașinii: copia discului, lista proceselor și a conexiunilor, logurile, cu sume de control.
  3. Rotești toate secretele care au trecut vreodată prin acel server: parole, chei SSH și API, certificate, token-uri de deploy.
  4. Restaurezi aplicația pe o mașină nouă, dintr-un backup verificat anterior compromiterii; serverul vechi nu se „curăță”, se analizează și se reinstalează.
  5. Notifici în termen: DNSC în 24 de ore dacă ești entitate sub OUG 155/2024, ANSPDCP în 72 de ore dacă sunt afectate date personale, și depui plângere la poliție.
Prima acțiune
izolare prin firewall, nu shutdown
Alertă timpurie DNSC (entități NIS2)
24 de ore de la constatare
Notificare ANSPDCP (breșă de date)
72 de ore, art. 33 GDPR
Unde repui aplicația
pe o mașină nouă, din backup verificat

Cum recunoști compromiterea și de ce nu oprești serverul

Semnele tipice: un proces cu nume banal care ocupă CPU-ul, conexiuni ieșite către adrese necunoscute, o intrare nouă în crontab sau în authorized_keys, fișiere de sistem modificate recent, un utilizator pe care nu l-ai creat, loguri lipsă. Nu oprești serverul, pentru că memoria conține procesele, conexiunile și, uneori, cheile atacatorului. Izolezi: refuz implicit pe intrare și pe ieșire, cu excepția adresei de la care investighezi.

Dovezi, secrete și restaurarea pe o mașină curată

Faci o copie a discului și îi calculezi suma de control; salvezi ieșirile din ps, ss, last și copiile logurilor. Abia apoi rotești toate secretele, nu doar cel pe care crezi că l-a folosit atacatorul: parole de baze de date, chei API, token-uri de CI, certificate. Aplicația o repui pe un server nou, instalat de la zero, dintr-un backup făcut înaintea primei urme de compromitere, după ce aplici patch-ul pentru vulnerabilitatea folosită. Serverul vechi îl analizezi, apoi îl reinstalezi.

  • Un canal de comunicare separat, nu e-mailul de pe serverul afectat
  • O cronologie scrisă din primul minut: ora, acțiunea, cine a făcut-o
  • Raport post-incident în cel mult două săptămâni: cauza, impactul, măsurile

Ce spune legislația din România

Dacă firma e entitate esențială sau importantă sub OUG 155/2024, transpunerea NIS2 aprobată prin Legea 124/2025, un incident semnificativ se anunță la DNSC cu alertă timpurie în 24 de ore, notificare în 72 de ore și raport final la o lună de la aceasta. Dacă sunt afectate date personale și încălcarea e susceptibilă să genereze un risc pentru drepturile persoanelor, notifici ANSPDCP în 72 de ore de la aflare, conform art. 33 GDPR, și informezi persoanele vizate când riscul e ridicat, conform art. 34. Plângerea penală o depui la poliție sau la parchet: accesul ilegal la un sistem informatic, art. 360 Cod penal, îl instrumentează parchetul de drept comun, nu DIICOT, care preia doar faptele din art. 361–365 sau pe cele ale unui grup infracțional organizat.

Termene de notificare după un incident, în România
Cine notificăCătre cineTermenTemei
Entitate esențială sau importantăDNSC, alertă timpurie24 de ore de la constatareOUG 155/2024 (NIS2)
Entitate esențială sau importantăDNSC, notificare de incident72 de oreOUG 155/2024 (NIS2)
Entitate esențială sau importantăDNSC, raport finalo lună de la notificarea de 72 h (sau de la gestionarea incidentului)OUG 155/2024, art. 15 alin. (7)
Orice operator de date personaleANSPDCP72 de ore de la aflareart. 33 GDPR
Orice operator, la risc ridicatPersoanele vizatefără întârzieri nejustificateart. 34 GDPR
Orice persoană vătămatăPoliție / parchet (DIICOT la art. 361–365)cât mai repede, pentru probeCodul penal, art. 360–366

Comenzi și configurări

Izolezi serverul, păstrând doar adresa de la care investighezi
sudo ufw default deny incoming
sudo ufw default deny outgoing
sudo ufw allow from 203.0.113.10 to any port 22 proto tcp
sudo ufw enable
Colectezi starea înainte de orice modificare, pe un suport din afara mașinii
# Dovezile NU se scriu pe mașina compromisă: montează un volum extern
# (mount /dev/sdb1 /mnt/dovezi) sau rulează comenzile de pe stația de investigație,
# cu: ssh root@server 'ps auxf --sort=-%cpu' > ps.txt
mount /dev/sdb1 /mnt/dovezi && cd /mnt/dovezi
ps auxf --sort=-%cpu > ps.txt
ss -tunap > conexiuni.txt
last -aF > logari.txt
for u in $(cut -d: -f1 /etc/passwd); do echo "== $u"; crontab -l -u "$u" 2>/dev/null; done > cron.txt
find / -xdev -type f -newermt "$(date -d '-14 days' +%F)" > modificate.txt
find / -xdev -name authorized_keys -exec sh -c 'echo "== $1"; cat "$1"' _ {} \; > chei.txt
sha256sum * > SUME.sha256

Exemple practice

Magazin online din Cluj cu miner descoperit de monitorizare

CPU la 100 % în weekend a arătat un proces pornit dintr-un plugin WordPress vulnerabil. Echipa a izolat serverul, a făcut snapshot, a rotit parolele de bază de date și de plată și a repus magazinul pe un VPS nou din backup-ul de vineri.

Firmă de transport din Constanța, entitate importantă NIS2

Un ransomware a criptat serverul de facturare. Alerta timpurie la DNSC a plecat în aceeași zi, notificarea completă la 72 de ore, raportul final la trei săptămâni. Restaurarea din backup-ul offline a durat o zi.

Greșeli frecvente

  • Oprești serverul imediat și pierzi toate dovezile din memorie.
  • Ștergi procesul suspect, schimbi o parolă și declari incidentul închis, fără să afli cum a intrat.
  • Restaurezi backup-ul pe același server compromis, peste backdoor-ul lăsat în urmă.
  • Amâni notificarea la autorități „până înțelegi ce s-a întâmplat”, deși cele două termene scurte, 24 și 72 de ore, curg din momentul în care ai luat cunoștință de incident.

Cum te ajută 4hosting

  • Serviciul SIEM & Incident Response are plan de răspuns, analiză a logurilor centralizate și raport post-incident; îl ceri din panoul de client, secțiunea „Servicii DevOps”, în orele incluse: 1–8 lunar la VPS, 10 la dedicate și GPU; orele se consumă în luna calendaristică și nu se reportează.
  • Înainte de orice intervenție păstrează o copie a discului; echipa 4hosting îți spune ce opțiuni ai pe planul tău.
  • Serviciul Hardening & Compliance include backup anti-ransomware, adică o copie la care serverul compromis nu are drept de scriere.

Întrebări conexe

  • Pot să curăț serverul în loc să-l reinstalez?

    Practic nu. Un atacator cu acces root poate înlocui binare, module de kernel sau servicii systemd cu variante care par legitime; nu poți ști ce a rămas. Reinstalarea de la zero plus restaurarea datelor e mai rapidă și singura garanție.

  • De unde știu de când e compromis serverul?

    Din logurile centralizate, dacă le ai: prima autentificare anormală, prima cerere suspectă în nginx, prima modificare de fișier. Pe serverul afectat, datele fișierelor și intrările din cron dau un indiciu, dar pot fi falsificate. Backup-ul restaurat trebuie să fie dinaintea acestei date.

  • Trebuie să anunț clienții?

    Dacă datele lor personale au fost accesate și riscul pentru ei e ridicat, GDPR îți cere să îi informezi direct, fără întârziere. Chiar când nu e obligatoriu, o comunicare scurtă și onestă costă mai puțin decât zvonul, fără detalii utile altor atacatori.

Cere o verificare de securitate

Un server de producție e atacat automat din primele minute după ce primește IP public, indiferent cât de mic e proiectul. Ghidul ordonează controalele după impact, de la accesul SSH până la răspunsul la incident, cu legislația din România care se aplică. Fiecare temă are o pagină dedicată, cu răspuns scurt, exemple și configurări.

Ghiduri pentru firme din România