Jump to content
hari

Securizare server web

Recommended Posts

Salut,

Povesteam cu cineva despre securizarea unui server de web si am pregatit o lista de sugestii.

Daca ar fi serverul meu, as face urmatoarele lucruri:

1. m-as uita saptamanal daca nu au aparut versiuni noi la aplicatiile pe care le-am instalat (cpanel, phpbb, wordpress...)

cel mai bine este sa te inscrii la mailinglist-urile proiectelor respective si sa fii anuntat instant cand a aparut un security fix.

2. as pune o parola puternica la toate serviciile de administrare (cpanel, mysqladmin, ...)

http://strongpasswordgenerator.com/

3. mai bune, as restrictiona accesul la aceste servicii doar pentru anumite adrese de IP (din firewall, e simplu).

sa am access numai de pe IP-urile folosite de mine.

4. as muta ssh pe un alt port. daca ramane pe portul 22 toate lumea il ataca si la un moment dat poate au noroc.

5. as inchide toate porturile care nu sunt necesare.

Pentru un server de web sunt necesare doar 80, 443 (eventual 53 - DNS si 25 - SMTP - mail)

Eventual, daca am porturi pe care vreau sa le folosesc din cand in cand de pe alte ip-uri:

folosesc port knocking http://www.portknocking.org/ pentru porturile alea.

idea de baza aici este ca se definesc niste secvente de event-uri in urma carora se deschid/inchid porturi.

eventurile pot sa fie knock-uri in firewall (de ex. trimiti un pachet pe portul 3 pe urma pe 5 pe urma, ...)

cand seventa corespunde, deschid portul. cand nu mai am nevoie de el, il inchid.

6. configureaza apache sa nu arate continutul directoarelor

http://www.ducea.com/2006/06/26/apache-tips-tricks-disable-directory-indexes/

incredibil de multe probleme apar din chestia asta.

7. as instala mod_security si l-as configura sa logheze post-urile.

asta poate sa ocupe mult loc dar merita. daca ai probleme vezi tot ce a facut atacatorul.

http://www.modsecurity.org/ - mod_security este un foarte bun application firewall si chiar daca ai aplicatii vulnerabile face sa fie foarte greu de exploatat vulnerabilitatiile. (chiar imposibil in unele cazuri)

8. as instala php cu patch-ul Suhosin

http://www.hardened-php.net/

9. as configura php.ini-ul (chestiile de baza)

http://www.conftool.net/en/technical_documentation/security_hints.html

http://www.php.net/magic_quotes

magic_quotes_gpc = On

register_globals = Off

disable_functions = show_source, system, shell_exec, passthru, phpinfo, proc_open, proc_nice

allow_url_fopen = Off

allow_url_include = Off

display_errors = Off

open_basedir = "/var/www"

10. as folosi un Host-based intrusion detection system (gen tripwire, samhain, aide)

http://en.wikipedia.org/wiki/Host-based_intrusion_detection_system

http://sourceforge.net/projects/tripwire/

http://sourceforge.net/projects/aide

astea sunt simplu de folosit. la configurezi sa indexeze un director si pe urma regulat sa verifice daca sunt schimbari in structura

(a aparut un fisier nou, s-a modificat continutul la alt fisier). poti sa prinzi instant deface-uri, cand cineva uploadeaza un shell, ...

se pot configura sa-ti trimita email cand apar modificari. foarte folositoare.

11. as activa selinux

poate sa te salveze intr-o multime de cazuri de 0day-uri

https://wiki.ubuntu.com/SELinux

12. si in final si as folosi AppArmor

https://wiki.ubuntu.com/AppArmor

sau systrace (pentru OpenBSD)

http://www.citi.umich.edu/u/provos/systrace/

AppArmor e o chestie super geniala. Idea originala a pornit din OpenBSD de la systrace.

Se defineste un fisier/profil pentru fiecare aplicatie, unde se specifica exact ce poate sa faca aplicatia respectiva (scrie in fisierul asta, deschide portul asta, ...)

Pentru aplicatiile de baza (apache, ssh) sunt deja definite profile care pot fi refolosite.

Daca apare un 0day, exploit-ul nu poate sa faca nimic pentru ca este restrictionat.

Cam atat pentru moment. :)

Link to comment
Share on other sites

da, pe hosting e cam nashpa. depinzi de provider la greu.

pe hosting s-ar putea face cam 1,2,6,7,9.

tot mai bine decat nimic.

si doar setarile de php.ini + mod_security daca s-ar face s-ar imbunatati securitatea serverului substantial.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...