Un ghid pentru consolidarea serverului dvs. web

Publicat: 2022-03-15

Datorită funcției lor, serverele web sunt diferite de multe alte dispozitive dintr-un mediu de rețea obișnuit – nu sunt doar expuse internetului prin proiectare, dar probabil că servesc traficul web unor străini complet. În plus, în multe situații, serverele web deservesc probabil aplicații dinamice, cum ar fi site-urile web WordPress sau acționează ca proxy pentru alte aplicații interne. Prin urmare, nu este surprinzător faptul că serverele web reprezintă ținte interesante pentru atacatori.

Întărirea unui sistem se referă la procesul de îmbunătățire a apărării unui sistem astfel încât să fie mai greu pentru un hacker rău intenționat să compromită acel sistem și să câștige un punct de sprijin într-o rețea.

Procesul de întărire a unui server web va depinde, desigur, de tipul de server web pe care îl utilizați (de exemplu, Apache HTTP Server, Nginx, Microsoft IIS...), cu toate acestea, există o serie de principii de bază și cele mai bune practici pentru a vă îmbunătăți securitatea serverului web de care ar trebui să țineți cont, indiferent de serverul web pe care îl utilizați.

Acest articol este un ghid de întărire a serverului web. În acesta, vom analiza o serie de bune practici independente de tehnologie prin care vă puteți îmbunătăți securitatea serverului dvs. web. Pentru întărirea WordPress, consultați ghidul nostru de securitate și întărire WordPress.

1. Țineți-vă serverul web actualizat

Menținerea la zi a software-ului poate să nu sune ca o mare problemă, dar aplicarea la timp a patch-urilor de securitate este, fără îndoială, una dintre cele mai importante apărări pe care le puteți implementa. Pe lângă îmbunătățirile de performanță și stabilitate, actualizările serverului web și ale sistemului de operare conțin adesea remedieri pentru vulnerabilitățile de securitate.

La suprafață, poate părea banal, totuși, orice profesionist în securitatea informațiilor vă va spune că corecția este mai complicată decât pare - nu pentru că instalarea celei mai recente versiuni a majorității software-ului este deosebit de dificilă, ci pentru că corecția este întotdeauna văzută ca ceva care poate fi amânat.

Cea mai bună abordare pentru a vă asigura că software-ul serverului dvs. web este actualizat în mod constant este să găsiți un sistem sau o rutină care să funcționeze pentru dvs. sau pentru oricine are sarcina de a vă actualiza serverul web și software-ul sistemului de operare. De cele mai multe ori, se rezumă la un memento periodic (de exemplu, stabilirea unui eveniment repetat din calendar) pentru care vă veți face timp.

2. Eliminați software-ul și modulele inutile

Deși nu pare întotdeauna așa, serverele web sunt componente complexe de software. Unele servere web, cum ar fi Apache HTTP Server, sunt livrate cu o serie de „module” (asemănătoare cu ceea ce sunt pluginurile WordPress) pe care le puteți activa sau dezactiva în funcție de cazul dvs. de utilizare. Se știe că atacatorii rău intenționați folosesc caracteristicile și vulnerabilitățile unui modul de server web pentru a aduna mai multe informații despre serverul dvs. web. Deși s-ar putea să nu fie singurul motiv pentru un atac de succes, scopul întăririi serverului web este de a adopta o abordare de apărare în profunzime și de a îngreuna ca actorii rău intenționați să obțină chiar și cel mai mic punct de sprijin.

Un exemplu practic în acest sens sunt module precum mod_status al serverului Apache HTTP. Acest modul este conceput pentru a obține o imagine de ansamblu asupra activității și performanței serverului (gazde curente, numărul de cereri procesate, numărul de lucrători inactiv și utilizarea CPU) prin adresa URL /server-status. O astfel de caracteristică poate oferi unui atacator o indicație destul de bună despre cât de bine funcționează serverul dvs. web - un instrument destul de util în cazul unui atac de tip Denial of Service (DoS).

În mod similar, alte programe software neutilizate care rulează pe serverul dvs. web ar putea prezenta un risc inutil. De exemplu:

  1. Executați un server FTP, cum ar fi vsftpd , de care nu aveți nevoie?
  2. Există un agent de transfer de e-mail, cum ar fi Sendmail sau Postfix, de care nu mai aveți nevoie? Dacă utilizați un serviciu terță parte pentru a îmbunătăți capacitatea de livrare a e-mailului WordPress, nu veți avea nevoie de un astfel de serviciu.

Aceste aplicații/servicii și multe altele de pe server sunt toate componente care au propriile lor particularități de securitate, vulnerabilități și cerințe de corecție.

În rezumat, rulați mai puțin software acolo unde este posibil. Dacă nu utilizați un modul sau un serviciu, ar trebui să vă uitați să îl dezactivați sau să îl eliminați. Desigur, nu dezactivați doar modulele sau aplicațiile fără testare amănunțită într-un mediu de dezvoltare sau de pregătire (uneori este posibil să nu fie complet clar că este utilizat un modul de server web sau o aplicație).

3. Strângeți controlul accesului

Controlul accesului la serverul dvs. web este esențial pentru a fi corect. La urma urmei, doriți să minimizați șansa ca accesul la serverul dvs. web să cadă în mâini greșite. Următoarele sunt o serie de bune practici de urmat în legătură cu menținerea unui control adecvat al accesului.

  • Nu utilizați utilizatorul root. Dacă trebuie să efectuați sarcini administrative, utilizați în schimb sudo;
  • Utilizați parole puternice de sistem (și WordPress);
  • Folosiți cheile SSH în favoarea parolei când utilizați SSH;
  • Luați în considerare restricționarea accesului SSH/RDP de la anumite adrese IP;
  • Activați autentificarea cu doi factori (2FA) pe orice conturi de furnizor de cloud;
  • Asigurați-vă că fiecare persoană care accesează serverul web are propriul utilizator - nu partajați conturile de utilizator între utilizatori;
  • Limitați accesul shell/SSH/Remote Desktop în mod explicit persoanelor care au nevoie de el.

4. Configurați monitorizarea integrității fișierelor (FIM)

Monitorizarea integrității fișierelor (FIM) îi ajută pe administratorii de sistem să identifice când se modifică fișierele pe un server web. În timp ce unele fișiere se schimbă destul de frecvent ca parte a operațiunilor normale ale serverului web, fișierele precum o instalare WordPress nu ar trebui să se schimbe niciodată decât dacă un administrator face modificări (de exemplu, actualizează fișierul wp-config.php) sau actualizează WordPress însuși.

Deși există o multitudine de opțiuni pe care le puteți alege să utilizați când vine vorba de monitorizarea integrității fișierelor, se recomandă să rămâneți cu ceva care este specific aplicației pe care o executați, este simplu de configurat și de utilizat și nu necesită o multă acordare. În caz contrar, te vei îneca în notificări fără sens și înainte de a-ți da seama, oboseala alertă se va instala, ștergându-ți efortul de a fi alături. Pe scurt, mai multe alerte și funcții nu sunt mai bune atunci când vine vorba de FIM, în schimb căutați o soluție care oferă cea mai mare valoare cu cea mai mică cantitate de cheltuieli generale.

5. Utilizați un serviciu de atenuare a DDoS și WAF

În loc să vă expuneți serverul web direct la Internet, ar trebui să luați în considerare utilizarea unui serviciu precum Cloudflare, Fastly, Akamai sau similar pentru a vă proteja împotriva unei game largi de atacuri, inclusiv atacuri Distributed Denial of Service (DDoS). Un atac de tip Denial of Service (DoS) este un tip de atac în care un atacator urmărește să copleșească un site web cu solicitări și, ca urmare, să împiedice serverul dvs. web să transmită cereri utilizatorilor legitimi.

Pe lângă atenuarea refuzului serviciului, astfel de servicii cloud oferă, de obicei, și capabilități Web Application Firewall (WAF) care sunt capabile să oprească multe atacuri comune ale aplicațiilor web, cum ar fi injecția de bază SQL (SQLi) și simplu Cross-site. Scriptare (XSS). Deși WAF-urile nu sunt o soluție pentru vulnerabilitățile aplicațiilor web, ele oferă o anumită protecție împotriva exploatării, în special cu regulile WAF care sunt optimizate pentru site-urile WordPress.

Care sunt următorii pași?

În timp ce acest articol acoperă câteva tehnici comune de întărire a serverelor web, nimic din securitate nu este un glonț de argint. Ca atare, nicio metodă de apărare a unui sistem nu este sigură, mai ales în fața unui adversar hotărât. Prin urmare, de ce trebuie să securizați fiecare componentă care alcătuiește site-ul dvs. WordPress. Nu vă puteți securiza serverul web și ignora securitatea WordPress sau propriul computer.

Cu toate acestea, corecția constantă și respectarea bunelor practici de securitate și igienă pot crește drastic efortul pe care trebuie să îl depună un atacator pentru a reuși cu succes un atac - ceea ce, de cele mai multe ori, înseamnă frustrarea atacatorului, forțându-l să se apropie de o țintă mai moale.