Odată cu dezvoltarea Internetului, numărul de servere a crescut exponențial, în același mod ca și problemele de securitate. Apar zilnic noi și noi vulnerabilități software, adăugându-se la problemele generate de utilizatorii care nu respectă câteva cerințe minimale pentru a preveni incidentele.
În activitatea zilnică de administrare servere întâlnim probleme din ce în ce mai diversificate, pe care încercăm să le rezolvăm utilizând programe software specializate, scripturi create de administratorii noștri de sistem, adăugând experiența obținută în toți anii de activitate.
Ținând cont că majoritatea serverelor expuse la atacurile dinspre Internet, indiferent de sistemul de operare pe care îl rulează (Linux, Windows, OSx etc.), sunt cele de web/mail, putem să facem o analiză și să creăm un set de reguli principale, pe categorii, care ar trebui respectate pentru securizarea serverelor, pentru minimizarea efectelor unor astfel de atacuri și pentru acoperirea breșelor de securitate pe servere.
Pentru unele reguli trebuie să aplicați la nivel de companie o politică de securitate care să fie respectată de către toți angajații, pentru implementarea altor reguli sau activități de configurare, monitorizare sau audit puteți apela la serviciile firmei noastre.
Securitatea Parolelor
- Utilizați parole de cel puțin 8 caractere lungime
- Utilizați parole care conțin numere, simboluri și semne de punctuație
- Nu folosiți aceeași parolă pentru conturi diferite pe servere diferite
- Nu folosiți parole simple și nu repetați secvențe de caractere
- Nu folosiți parole bazate pe informații personale
- Nu salvați parolele pe laptop-uri, tablele sau telefoane care pot fi pierdute
- Puteți utiliza unde este cazul autentificarea în doi pași
Securizarea Comunicațiilor
- Utilizați FTP Securizat în loc de FTP clear-text
- Utilizați SSH pentru conexiunea la server în loc de TELNET
- Configurați clientul de mail să folosească conexiuni securizate (POP3S/IMAPS/SMTPS)
- Securizați toate interfețele web de administrare cu SSL (HTTPS)
- Securizați toate formularele web cu SSL (HTTPS)
- Întotdeauna cand e posibil utilizați VPN
- Utilizați firewall pe toate device-urile unde e posibil, mai ales pe servere și stații
- Utilizați acolo unde e posibil sisteme IDS/IPS/UTM
- Criptați mediile de stocare pentru email-uri
- Nu accesați informații importante utilizând calculatoare publice sau care fac parte din rețele publice
Securitatea Aplicațiilor WEB
- Abonați-vă la noutățile pe care le pun la dispoziție dezvoltatorii de aplicații
- Faceți update la timp aplicațiilor web
- Scanați remote aplicațiile web folosind software-uri de verificare a securității
- Utilizați o aplicație de web firewall
- Verificați codul sursă customizat să nu conțină breșe de securitate
- Folosiți CMS-uri sau framework-uri care au istoric bun din punct de vedere al securității
- Nu vă bazați pe principiul „securitate prin obscuritate” ascunzând numele de fișiere/directoare
- Securizați zona de administrare a aplicațiilor web incluzând restricții per IP
- Informațiile sensibile păstrați-le separat de directorul rădăcină sau restricționați accesul la ele
- Încercați să nu rulați comenzi sistem în cadrul script-urilor
- Utilizați în php POST în loc de GET pentru a trimite date, astfel încât informațiile sensibile să nu apară în URL
- Specificați permisiunile atunci când creați fișiere
- Limitați upload-ul de fișiere la anumite directoare
- Creați mesaje de eroare customizate care să nu conțină informații sensibile
- Acordați atenție la datele din cookies pentru că pot fi manipulate
- Criptați fișierele de configurare care conțin date sensibile
- Limitați câmpurile de introducere date pentru a evita atacurile de tip DOS
- Aplicați restricțiile open_basedir și disable_functions
- Dacă e posibil dezactivați funcțiile PHP care pot induce probleme de securitate
Securitatea Serverului
- Aplicați update-urile sistemului de operare (Linux, Windows, OSx etc.) regulat, chiar imediat în cazul celor critice
- Dacă e cazul, faceți update regulat interfeței web de administrare
- Nu instalați software pe care nu îl veți utiliza
- Nu stocați backup-uri sau versiuni vechi ale aplicațiilor pe serverele aflate în producție
- Restricționați accesul la directoare configurând permisiuni adecvate
- Verificați că serviciul de loguri funcționează corect
- Verificați că sunt create loguri la toate nivelele de administrare care să conțină data, ora și utilizatorul care a făcut modificări pe server
- Utilizați serviciul de firewall
- Stergeți conturile implicite ale serviciilor de baze de date (MySQL, PostgreSQL, MSSQL etc.)
- Limitați sau dezactivați definitiv posibilitatea conectării la server cu user root sau administrator
- Renuntați la logarea cu parolă și activați conectarea folosind chei SSH
- Opriți și dezactivați serviciile neutilizate
- Implementați o politică de salvare a datelor (backup) și de mentenanță
- Testați regulat salvările create
- Nu faceți dezvoltare software pe sistemele care rulează în producție
- Ramâneți tot timpul infomat abonându-vă la servicii de notificare în ce privește securitatea serverelor
- Monitorizați traficul pentru activități suspecte sau care ies din tiparul uzual
- Rulați regulat un audit extern al serverelor
- Rulați regulat scanări locale privind securitatea
- Configurați serviciile de WEB/MAIL/SSH etc. cât mai restrictiv posibil
- Utilizați userul root sau administrator doar când este absolut necesar
- În cazul sistemului de operare Linux utilizați sudo pentru a da drepturi de root utilizatorilor obișnuiți
- Dacă e posibil activați SELinux
- Pentru traficul intern către/dinspre server utilizați rețele private
- Întotdeauna utilizați criptarea când este posibil
- Realizați o analiză de risc și un audit al serverului