Article View: chile.comp.programacion
Article #2748Re: seguridad en web
From: Vinko Vrsalovic
Date: Tue, 08 Nov 2005 06:27
Date: Tue, 08 Nov 2005 06:27
81 lines
4588 bytes
4588 bytes
Rick_oj <rick_oj@[sin-esto]tutopia.com> dijo: > >> Y de ahi pa arriba con una buena administracion de servidor (hay un >> ranking de hostings v/s defacements o algo asi para tener un >> parametro?), buenas practicas de codigo, no ser vulnerable a xss ni a >> sql injection, que los backups sean tanto o mas seguros que los datos >> 'live', etc, etc, etc. >> > > bueno como dije lo pienso instalar en la casa, pero si pensara usar el > hosting que tengo este tiene que soportar SSL? > osea el modulo en apache deberia estar intalado > A ver, partamos por el principio. Primero, de quien quieres proteger la informacion? Quienes son los potenciales ladrones? Script kiddies? Ladrones de bases de datos? la CIA? De eso depende cuanto tendras que invertir (en esfuerzo y/o dinero) para asegurar la informacion. Una vez determinado eso, debes ver cual es tu eslabon mas debil, esto es, por donde es mas probable que la informacion sea obtenida, por ejemplo, esta bien usar encriptacion (SSL) entre los clientes y el servidor, pero si puede llegar tu hermano y hacer rm -rf /, o si tu haces backups y los subes a un sitio publico (si, estupido, pero para ilustrar el punto) de que te sirve esa encriptacion. Debes tener en cuenta todo el circuito, desde el usuario final hasta el administrador, sobre todo donde participan humanos en la interaccion con el computador (tipicamente los puntos mas debiles) y determinar como es mas facil de crackear tu sistema, reforzar eso y luego iterar hasta que el esfuerzo que tenga que hacer el cracker sea mayor al valor de la informacion. Esa es la teoria, ahora consideraciones practicas: Servidor y redes: - Servidor con todos los parches de seguridad al dia (o a la hora) - Servidor solo y exclusivamente con los servicios que vas a ofrecer, por ejemplo si vas a poner un sitio web con apache, php y mysql, solo tener esos servicios corriendo y nada mas INSTALADO (ni compiladores, ni utilidades para bajar archivos, etc.) - Instalar un firewall ojala independiente del servidor, e idealmente que el servidor no pueda establecer conexiones hacia afuera - Instalar un IDS - Configuraciones seguras de todos los servicios, p.ej., deshabilitar cuentas por defecto (la tipica root sin password de mysql), investigar sobre como vienen las configuraciones por omision y que se puede hacer al respecto para mejorarlas, si corresponde. - Encriptar la comunicacion entre el cliente y el servidor (unico punto del que has hablado) Aplicacion: - Programar con atencion a la seguridad, no confiar nunca en datos que vienen del cliente, por ejemplo, si de un formulario armas un query SQL, verificar que no vengan comandos SQL (select, delete, etc.), y si los tiene eliminarlos o escaparlos debidamente (sql injection) - Atencion con el cross site scripting y con session hijacking, donde a traves de ciertos errores en la validacion un sitio malicioso puede hacerse pasar por tu sitio o robarte la sesion o robar datos de los clientes (cookies, p.ej.) Todo esto en el entendido que vas a servir el contenido a clientes a traves de internet, porque si solo lo vas a poner en tu casa para usuarios en la misma red, gran parte de la tarea estaria lista con solo desconectar esa red del mundo :) Bueno, eso se me ocurre por ahora, como ves, la tecnologia per se no es la solucion a la seguridad, hay muchas otras consideraciones que tomar, todo esto es aplicable a PHP+Apache, a ASP+IIS, a JSP+Tomcat, a Perl+Roxen o a palomas mensajeras camufladas. Ah, y claro que el hosting tiene que soportar SSL si quieres usarlo. -- V.
Technical Details
Message-ID:
<4370453f@news.vcd.cl>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!news.kjsl.com!news.nivel5.cl!news.vcd.cl!not-for-mail!not-for-mailReferences:
<dkg47l$4mn$1@news.nivel5.cl> <87y841llzc.fsf@bender.guti.cl> <436e55df@news.vcd.cl> <dkp1c5$4h5$1@news.nivel5.cl>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,6a840574b49cfeae
X-Google-Attributes: gid1593cb,public
X-Google-Language: SPANISH,ASCII-7-bit
Message-ID: <4370453f@news.vcd.cl>
From: Vinko Vrsalovic <el@vinko.invalid>
Subject: Re: seguridad en web
Newsgroups: chile.comp.programacion
References: <dkg47l$4mn$1@news.nivel5.cl> <87y841llzc.fsf@bender.guti.cl> <436e55df@news.vcd.cl> <dkp1c5$4h5$1@news.nivel5.cl>
User-Agent: tin/1.7.6-20040906 ("Baleshare") (UNIX) (Linux/2.6.10-5-386 (i686))
NNTP-Posting-Host: 200.73.82.239
X-Original-NNTP-Posting-Host: 200.73.82.239
Date: 8 Nov 2005 02:27:13 -0400
X-Trace: news.vcd.cl!not-for-mail 1131431233 200.73.82.239 (8 Nov 2005 02:27:13 -0400)
X-Original-Trace: 8 Nov 2005 02:27:13 -0400, 200.73.82.239
Lines: 81
X-Authenticated-User: vinko
Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!news.kjsl.com!news.nivel5.cl!news.vcd.cl!not-for-mail!not-for-mail