La mod_security è una buona cosa?

9

Recentemente sono stato frequentato da errati messaggi di errore da mod_security. I suoi set di filtri coprono gli exploit PHP obsoleti e devo riscrivere le mie cose perché Wordpress & Co ha avuto bug anni fa.

Succede a qualcun altro?

Apache mod_security blocks possibly dangerous HTTP requests before they reach applications (PHP specifically). It uses various filter sets, mostly regex based.

Quindi ho un buon provider di hosting condiviso, tecnicamente adatto e roba del genere. Ma questo mi ha infastidito:

Proprio la scorsa settimana ho dovuto modificare il nome di un parametro &src= in una delle mie app perché mod_security blocca QUALSIASI richiesta con quella. Non ho cercato i suoi dettagli, ma questa regola del filtro stava impedendo la sfruttabilità di un'altra app che non uso e probabilmente non avevo mai sentito. Tuttavia ho dovuto riscrivere il mio codice (il parametro di rinomina spesso è sufficiente per ingannare mod_security) che non aveva niente a che fare o in comune con quello!

E oggi, una silice regex blocca i submission, perché volevo inviare codice di esempio php. Dato, questa è la roba semplice che mod_security è lì per proteggere contro. Ma non credo che mod_security possa rilevare codice seriamente offuscato, e si limita ad ovviare (e in questo caso totalmente banale) ai frammenti di php.

Fondamentalmente sono penalizzato da mod_security perché altre persone hanno rilasciato app bug-prone. (Non sto dicendo che le mie app sono ultra sicure - sono piuttosto cauto sulla sicurezza, ma non faccio affermazioni iperboliche.)
Ho già chiesto al mio provider di disattivarlo comunque, i vantaggi sono troppo minuscoli IMO e per le mie app.

Che ne pensi? Mod_security ha molto senso al di fuori dell'hosting di WP? O è davvero solo una manciata di liste nere di bug di sicurezza scaduti? Quali delle sue regole sono effettivamente utili? Esiste un livello di applicazione equivalente?

    
posta mario 22.09.2010 - 01:41
fonte

2 risposte

3

Personalmente vedo mod_security come patch. Lo uso su alcuni dei nostri server in cui non possiamo controllare il codice che viene caricato (server di hosting condiviso, ad esempio), ma non mi è mai sembrata una buona soluzione. Basato su un approccio di blacklist ampio e molto generale, è più una patch per coprire buchi di sicurezza che una buona politica di sicurezza.

Può anche fornire un falso senso di sicurezza. mod_security può rivelare alcuni attacchi comuni ma non può in alcun modo impedire attacchi. Ancora una volta, è una lista nera di attacchi noti comuni. Se installi semplicemente mod_security e pensi di essere magicamente al sicuro, stai sbagliando in modo orribile.

Ho trovato una politica molto migliore per i server gestiti in cui il mio team rivede tutto il codice che viene inserito su di essi, combinato con molti registri, analisi dei logfile, sistemi di reporting e sistemi di rilevamento delle intrusioni / prevenzione delle intrusioni (IPS). Ogni volta che viene installato software di terze parti o open source (sto guardando tu , WordPress!) Teniamo un registro di dove è stato installato, e quando vengono rilasciate nuove versioni aggiorniamo ogni copia che è stato installato.

Anche in questo caso, è più probabile che tu abbia trovato mod_security su un server di hosting condiviso, come stai vivendo ora. Man mano che cresci, puoi passare a un provider di hosting basato su VPS o clod in cui ottieni il tuo ambiente gestito e puoi controllare più strettamente il software disponibile.

    
risposta data 26.09.2010 - 19:11
fonte
0

Secondo me, se sei un principiante alla programmazione, mod_security è una buona idea, ma se ti prendi il tempo per scrivere correttamente le tue applicazioni ed evitare di scrivere codice non sicuro che usa eval o concatenare le stringhe GET direttamente in SQL, dovresti Va bene senza di essa. mod_security non interromperà mai gli hacker seri, e se hai una buona applicazione, gli script kiddies si arrenderanno e passeranno alla prossima app davvero debole e insicura.

    
risposta data 26.09.2010 - 13:59
fonte

Leggi altre domande sui tag