Back to top

Autore Topic: Strategie di Sicurezza di base - considerazioni  (Letto 3422 volte)

Offline bolina

  • Esploratore
  • **
  • Post: 54
    • Mostra profilo
Strategie di Sicurezza di base - considerazioni
« il: 28 Dic 2009, 16:06:06 »
Ciao a tutti,

mi trovo di punto in bianco a dover gestire vari domini con svariatissime versioni di Joomla (dalla 1.0.12 alla 1.5.15 con moltissime versioni intermedie, praticamente quasi tutte) e con tantissimi moduli e componenti di terze parti anch'essi in varie situazioni di vulnerabilità.

Oltre ad un approccio migratorio verso la ultima release sia del CMS che dei componenti, che porterà via, però, un po' di tempo (23 domini), stavo pensando ad altre soluzioni più rapide e parzialmente tutelative e ne ho piacere di discuterne con voi per trovare conforto e consiglio o anche "bacchettate" nel caso stia scrivendo delle stupidaggini:

numero le azioni che vorrei intraprendere per permettere risposte anche a singoli punti.

lato hosting (non hosto direttamente)
parte veloce
1) accesso FTP a directory madre della public_html dove spostare il file di configuration.php
2) protezione della directory /administrator tramite .htaccess che setti un utente/psw
3) protezione dell'url del pannello di controllo di Joomla tramite JSecure (domanda: cozza con la protezione tramite .htaccess?)
4) chmod di directory a 750 e files a 640 (tutto per adesso, poi vedo cosa sbloccare per permettere un minimo di interazione lato backoffice)
5) cambio di tutte le psw e le utenze di Administrator, di FTP, di DB (attualmente si accede a tutti i domini, spazi FTP e DB con stesso utente/psw, credo vecchio di qualche anno)

lato CMS (amministro direttamente)
parte lenta
- check di tutto quello che è stato installato
- disinstallazione di tutto quello che non è utilizzato
- verifica con i files .XML dei componenti l'effettiva disinstallazione sia di files che di DB
- migrazione dei componenti
- migrazione dei CMS

altro al momento non mi viene in mente, voi cosa ne pensate/suggerite?

grazie a chi ha avuto pazienza di leggere e magari darmi qualche suggerimento.

ale

Offline carlodamo

  • Global Moderator
  • Instancabile
  • ********
  • Post: 3817
  • Sesso: Maschio
    • Mostra profilo
Re:Strategie di Sicurezza di base - considerazioni
« Risposta #1 il: 28 Dic 2009, 16:48:30 »
usa delle password lunghe formate da una parola, dei numeri, altra parola in maiuscolo tipo:

cartone254786GIOCATTOLO

Ciao
Evisole Web agency a Vicenza

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Strategie di Sicurezza di base - considerazioni
« Risposta #2 il: 30 Dic 2009, 22:33:32 »
non ho capito se gli attuali proprietari dei siti potrannno accedere tramite ftp / o web (all'amministrazione)

hosting (non hosto direttamente)

1) accesso FTP a directory madre della public_html dove spostare il file di configuration.php
. non ho capito che intendi :(

2) protezione della directory /administrator tramite .htaccess che setti un utente/psw
. puoi farlo, basta che la password non sia banale, e che l'utente non sia admin ;)
tipicamente i problemi nascono da moduli e componenti scritti con i piedi, raramente da un accesso al back end: forse è meglio se setti pws complesse e ti concentri sul front end.

3) protezione dell'url del pannello di controllo di Joomla tramite JSecure
. non conosco jsecure, leggendo velocemente mi pare che non debba avere conflitti, a meno che non usi l'autenticazione http.
Citazione
any web user can easily know the site is created in Joomla! by typing the URL to access the administration area...
mio pensiero: Security through obscurity is not Security ;) anche perchè è scritto da tutte le parti che è Joomla!, non sarà certo nascondere il back end che non lo farà capire...

4) chmod di directory a 750 e files a 640
ARGH! non limiti in alcun modo né php né ftp, ma corri il rischio di bloccare altri processi quali backup et cetera...  >:( se non hai un accesso da shell non modificare i permessi, a meno che non siano 777! (in genere non modificare i permessi se non sai come funzionano esattamente, ovvero se non sei pratico di *nix)

5) cambio di tutte le psw e le utenze ... (si accede a tutti i domini, spazi FTP e DB con stesso utente/psw, credo vecchio di qualche anno)
ARGH! sicurezza inanzi tutto  >:(

lato CMS (amministro direttamente)
tutto ok, lento ma ok...

ciao e buon lavoro,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline bolina

  • Esploratore
  • **
  • Post: 54
    • Mostra profilo
Re:Strategie di Sicurezza di base - considerazioni
« Risposta #3 il: 31 Dic 2009, 16:31:36 »
Innanzitutto grazie per le risposte, in joomla mi sento un novellino e quindi cerco di non fare troppe castronerie.

non ho capito se gli attuali proprietari dei siti potrannno accedere tramite ftp / o web (all'amministrazione)

allora in 1 caso accedono via FTP
in 3 casi via web administrator
sto pensando di iniziare a installare un componente per permettere ACL.
in nessun caso possono loggare da front end

hosting (non hosto direttamente)

1) accesso FTP a directory madre della public_html dove spostare il file di configuration.php
. non ho capito che intendi :(

mi sono spiegato come un cane. Ho letto ma devo rileggere, di poter spostare il file configuration.php in una directory "fuori" dallo spazio web, e poi includerlo

es. /etc/qualchecosa/configuration.php NON raggiungibile direttamente da web.


2) protezione della directory /administrator tramite .htaccess che setti un utente/psw
. puoi farlo, basta che la password non sia banale, e che l'utente non sia admin ;)
tipicamente i problemi nascono da moduli e componenti scritti con i piedi, raramente da un accesso al back end: forse è meglio se setti pws complesse e ti concentri sul front end.
per le psw ok, diciamo che mediamente le mie sono di 10-15 caratteri, ovviamente .htpasswd NON è in /administrator.


3) protezione dell'url del pannello di controllo di Joomla tramite JSecure
. non conosco jsecure, leggendo velocemente mi pare che non debba avere conflitti, a meno che non usi l'autenticazione http.
mio pensiero: Security through obscurity is not Security ;) anche perchè è scritto da tutte le parti che è Joomla!, non sarà certo nascondere il back end che non lo farà capire...

no, certo, è solo per impedire un facile accesso ad /administrator nel caso venga recuperata una delle psw tramite qualche componente fallato (questo insieme ad .htaccess).


4) chmod di directory a 750 e files a 640
ARGH! non limiti in alcun modo né php né ftp, ma corri il rischio di bloccare altri processi quali backup et cetera...  >:( se non hai un accesso da shell non modificare i permessi, a meno che non siano 777! (in genere non modificare i permessi se non sai come funzionano esattamente, ovvero se non sei pratico di *nix)

si, cancella tutto, ho detto una caxxata. le directory verranno settate a 755 e files a 644, tranne nel caso di:
- images 775
- dmdocuments (Docman) 775
- cache (che pensavo però di non usare) 775
- tmp 775
- eventuali altre directory necessarie per determinati componenti. 775


comunque con oggi ho finito di cancellare tutti i vecchi utenti administrator e sostituirli con nuovi (due administrator per sito nel caso ne venga bloccato uno), ed ho iniziato il processo di gestione dei back up sia manuali che semiautomatici.

Sto pensando di estendere il contratto con l'hosting per prevedere un bkup da parte sua sia di files che di DB il tutto giornaliero ma devo ancora vedere quanto mi chiederà.

Per quanto riguarda i componenti installati ho visto che mediamente essi sono:
- docman
- jevents
- acajoom

in vari stadi delle varie releases.

in un caso ho un virtuemart assolutamente datato ma con modifiche al core e quindi lì devo vedere come migrare (consigli?).

altre cose "volanti" per incrementare la sicurezza ora non me ne vengono, ma sicuramente tornerò con altre domande più avanti.

ale

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Strategie di Sicurezza di base - considerazioni
« Risposta #4 il: 03 Gen 2010, 21:54:14 »
ciao,

. spostare configuration.php al di fuori dello spazio web
puoi farlo, ma non ne capisco i vantaggi: se php si inchioda uno può leggerlo, ma non penso serva ad un gran chè dato che l'unica informazione interessante è il server sql che solitamente non è raggiungibile dall'esterno. se php gira il file è, e deve essere, raggiungibile da php, quindi qualsiasi hack può leggerlo e modificarlo. inoltre dovresti modificare il codice di joomla per includerlo e ti complicheresti la vita in caso di aggiornamenti ( e non mi parlare di symlink ;) )

. protezione della directory /administrator...
vedi anche questo, meno codice prevede il sistema più e sicuro: [link]http://forum.joomla.it/index.php/topic,90885.msg397946.html[/link]

. chmod di directory ...
ok, ma ricordati, che serve solo a non commettere errori di programmazione, NON ha alcuna funzione di protezione se non abbinato ad un chown

. back up
è sempre cosa buona e saggia

. virtuemart assolutamente datato...
verifica che non ci siano problemi di sicurezza nelle note, se no riscrivi le modifiche, il codice del nuovo virtuemart è sicuramente più leggibile di quello per Joomla! 1 ed un upgrade non fa mai male.

ciao,
marco
 
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline bolina

  • Esploratore
  • **
  • Post: 54
    • Mostra profilo
Re:Strategie di Sicurezza di base - considerazioni
« Risposta #5 il: 05 Gen 2010, 16:17:43 »
Continuo a ringraziarti, mi sto cercando di fare una cultura molto velocemente in joomla e sulla sua sicurezza e non è semplicissimo.

ciao,

. spostare configuration.php al di fuori dello spazio web
puoi farlo, ma non ne capisco i vantaggi: se php si inchioda uno può leggerlo, ma non penso serva ad un gran chè dato che l'unica informazione interessante è il server sql che solitamente non è raggiungibile dall'esterno. se php gira il file è, e deve essere, raggiungibile da php, quindi qualsiasi hack può leggerlo e modificarlo. inoltre dovresti modificare il codice di joomla per includerlo e ti complicheresti la vita in caso di aggiornamenti ( e non mi parlare di symlink ;) )

ok, ricevuto e digerito, lo lascio dove è con permessi a 644.


. protezione della directory /administrator...
vedi anche questo, meno codice prevede il sistema più e sicuro: [link]http://forum.joomla.it/index.php/topic,90885.msg397946.html[/link]

sto usando un classico:
AuthType        Basic
AuthName        "Accesso riservato"
AuthUserFile    /etc/blabla/blablabla/htpasswd
require user    misterX


. chmod di directory ...
ok, ma ricordati, che serve solo a non commettere errori di programmazione, NON ha alcuna funzione di protezione se non abbinato ad un chown

allora, se ho capito bene, la mia situazione attuale è questa:
utente FTP fa un po' quelo che gli pare sulle directory del suo spazio web
utente apache (joomla) non fa niente su directory in cui non ha permesso di scrittura (es. 755)

Di fatto, da dentro joomla, non riesco neanche ad uploadare una immagine in /images.

Questo non è un problema nei siti dove non ho degli utenti che si loggano nel backend in quanto le modifiche le faccio sempre in locale, comprese le installazioni, verifico il tutto e poi uppo e aggiorno il db online.

caso inverso invece in quei siti dove ho degli admin lato back office, lascio a 775 le directory /images, /dmdocuments e /quellochemiservenelcaso.

tutto il resto è impostato a 755.


. back up
è sempre cosa buona e saggia

oh yeah, dovrebbe essere la prima pietra basilare di chiunque si dedichi all'informatica.

sono riuscito ad oggi ad impostare i backup automatici dei DB, e manuali dei file che mi serve salvare.


. virtuemart assolutamente datato...
verifica che non ci siano problemi di sicurezza nelle note, se no riscrivi le modifiche, il codice del nuovo virtuemart è sicuramente più leggibile di quello per Joomla! 1 ed un upgrade non fa mai male.

forse questo lo bypasso, lo usavano solo come catalogo e anche male, credo mi rivolgerò ad altri componenti, magari più leggeri e senza tante funzioni da portarsi appresso.

grazie ancora.

ale

 



Web Design Bolzano Kreatif