domingo, 5 de diciembre de 2010

Los 10 Mandamientos de la Seguridad Informática

En nuestros días, la sociedad se encuentra informatizada en gran medida. Muchas de nuestras actividades cotidianas las realizamos online. Los delincuentes, lamentablemente, también forman parte de la sociedad y para poder seguir llevando a cabo sus robos y estafas han tenido que modernizarse. Todo tipo de delitos virtuales se suceden a diario, sustrayendo millones de dólares por año a personas de todo el mundo, que pecan de una inocencia extrema a la hora de operar una computadora. Evitar caer en sus garras no es fácil: requiere rigor y constancia. Aquí tengo el gusto de compartirles un articulo publicado en la revista de tecnología e informática dattamagazine donde se exponen, las diez leyes que reducirán al mínimo la posibilidad de que seamos víctima de los cyberladrones.

1.Cuidaras la seguridad del sistema Operativo:

Elegir el sistema operativo (S.O) adecuado según la importancia y confidencialidad de los datos a almacenar en el equipo es vital. Si la información es crítica, lo ideal es emplear Sistemas Operativos muy seguros (como OpenBSD) o bastante seguros (GNU/Linux) y evitar a toda costa los menos fiables (todos los de la familia Windows, particularmente Vista y los anteriores a Windows 2000). Se debe eludir la utilización de cuentas privilegiadas, como Administrador o root, a las que sólo se recurrirá para instalar software o cambiar la configuración del sistema. Para las tareas de uso diario, debe emplearse una cuenta de usuario común, sin “superpoderes”. Todas las cuentas deben tener siempre contraseña y la misma contará con al menos 8 caracteres de largo y contendrá tanto letras como números, rehuyendo siempre al empleo de palabras que se hallen en el diccionario. Lo conveniente es usar directamente frases clave. En inglés, son conocidas como “passphrases” y un ejemplo típico sería algo así: “ 3 3 t i g r e s c o m e n d e 3 3 p l a t o s detrigo”. Ocurre que hasta una contraseña aleatoria, pero de únicamente ocho caracteres de longitud, se encuentra expuesta a ser vulnerada en pocas horas mediante un ataque de fuerza bruta. Pero inclusive al equipo más poderoso de la actualidad le llevaría años crackear por fuerza bruta una contraseña de 30 caracteres de longitud.

2.Aplicaras regularmente las actualizaciones de seguridad.

Hasta los S.O. más seguros tienen vulnerabilidades. Lo que los hace confiables no es solamente una baja cantidad de errores explotables, sino también la velocidad de sus desarrolladores para implementar una solución lo más rápidamente posible una vez que los mismos han sido detectados. Los S.O. de la familias *BSD y GNU/Linux suelen publicar actualizaciones de seguridad en forma diaria. Microsoft libera parches para sus S.O. bastante más esporádicamente. En cualquier caso, es responsabilidad del administrador del sistema controlar regularmente si se disponen de actualizaciones de seguridad para su correspondiente S.O. y aplicar las que sean indispensables. Nunca es buena idea configurar al equipo para que instale las actualizaciones de manera automática. Siempre es preferible que se nos notifique y poder elegir el momento en que se realiza la instalación de los parches e, incluso, excluir algunos en particular si no los necesitamos o no deseamos actualizar algún paquete determinado por razones de estabilidad.

3.Emplearas chequeadores de integridad, antivirus y antispyware.

Los usuarios de todos los S.O., pueden beneficiarse con los chequeos de integridad. Los programas o scripts que llevan a cabo esta labor son capaces de detectar cualquier modificación sobre un archivo o lote de archivos. Modificaciones inesperadas sobre documentos o, lo que es peor, sobre archivos del sistema revelarán la presencia de un malware o una intrusión no autorizada. En cambio, la utilización de antivirus y antispyware es imprescindible solamente para los usuarios de Windows. No es que no existan virus para otros S.O. como GNU/Linux, por ejemplo, pero la cantidad de virus reconocidos para esta familia de Sistemas Operativos se encuentra alrededor de los ochocientos, mientras que los virus para Windows ya han superado el medio millón. El antispyware también es fundamental para los usuarios de los S.O. de Microsoft, si buscan garantizar su privacidad. Multitud de programas gratuitos para Windows que se descargan por Internet instalan subrepticiamente programas ocultos que estudian nuestros hábitos y comunican esa información a sus creadores, quienes la convierten en valiosos datos estadísticos. Luego, se comercializan por mucho dinero a distintas empresas dedicadas al marketing y la publicidad.

4.Encriptarás la información sensible.

Nunca debe almacenarse información crítica, como contraseñas, números de cuentas bancarias o de tarjetas de crédito, o cualquier otro tipo de datos confidenciales sin haber tomado la precaución de encriptarlos. Hay diversas maneras, algunas más sencillas (y, por lo tanto, menos seguras) y otras más sofisticadas. Lo importante es elegir los métodos a aplicar de manera acorde a la confidencialidad de dichos datos. Para guardar contraseñas, por ejemplo, existen diversos paquetes de software (incluso software de código abierto) que permiten resguardar en un único archivo, encriptado con una contraseña maestra, todas las cuentas de usuario que se necesiten junto con las correspondientes credenciales de acceso. Dado que es pésima idea usar la misma clave en más de un website o servicio, la cantidad de usuarios y contraseñas que tiene una persona promedio es tan elevada que, sencillamente, es imposible memorizarlas todas. Nunca deben alojarse, entonces, sin ningún tipo de protección. La misma norma rige para los documentos con información sensible. Si no se dispone de otra solución mejor, lo mínimo que se puede hacer es preservar la información sensible en un archivo ZIP o RAR codificado con contraseña o frase clave.

5.Usarás sólo modos seguros de acceder al e-mail.

Si se dispone de una conexión permanente de banda ancha a Internet, y nuestro proveedor de correo ofrece el servicio de Webmail, lo mejor es utilizar directamente dicho servicio y no instalar ningún cliente de correo. Proveedores de Webmail como Google o Yahoo brindan capacidad casi infinita de almacenamiento y un servicio muy fiable, optimizan la seguridad en forma constante y proveen sus propios chequeos antivirus para los archivos adjuntos. Si no se cuenta con Webmail o, de todas maneras, se desea emplear un cliente de mail para acceder a los correos fuera de línea, se deben evitar los clientes de correo inseguros (usuarios de Windows: nunca valerse del Outlook ni Outlook Express) y nunca abrir archivos adjuntos a correos de desconocidos. Hay que prestar atención aun a los correos de nuestros propios conocidos, ya que ellos pueden estar infectados y enviando virus sin saberlo. Si un familiar nos manda un correo escrito en un idioma o estilo distintos de los habituales, conviene no abrir el archivo adjunto sin analizarlo e x h a u s t i v a m e n t e.

6.Utilizarás únicamente navegadores seguros para acceder a la web.

Los usuarios de Windows deben eludir el Internet Explorer como si fuera el peor de los males. No importa la versión, inclusive las recientes son muy inseguras debido a que su problema está en la misma arquitectura con la que fue concebido y lo arrastrará generación tras generación, salvo que se reescriba nuevamente el código desde cero. Ni siquiera nos detendremos en lo incorrectamente que renderiza las páginas y la escasa compatibilidad que tiene con los estándares que rigen la web actualmente, como XHTML/CSS. Cualquiera de los otros navegadores modernos es mejor: Firefox, Opera, Safari o Chrome son todos más seguros, veloces y estables que los navegadores de Microsoft. De todas formas, esto no quita que, asimismo, tengan sus problemas de seguridad, por lo cual debemos asegurarnos de actualizarlos siempre a la última versión apenas el navegador nos notifique que se han liberado actualizaciones. Firefox, por ser el más popular en este momento, es también el más atacado por los exploiters y se le han encontrado diversas vulnerabilidades. Pero dos hechos compensan este inconveniente: los veloces tiempos de respuesta para solucionar el agujero de seguridad por parte del equipo de desarrollo de Mozilla y la posibilidad de agregarle extensiones que lo tornan mucho más fiable, como Adblock Plus o No Script. (ver: Las mejores extensiones de FireFox para mejorar tu seguridad)

7.No abrirás enlaces ni archivos sospechosos.

Tanto el SPAM que llega por mail como el que recibimos por mensajería instantánea (MSN, Yahoo Messenger, etc.) suelen contener enlaces web o archivos adjuntos. La probabilidad de que estos archivos sean maliciosos es muy elevada. Lo mismo ocurre al visitar sitios web de software pirata o portales eróticos. En algunos, se abren innumerables popups que ofrecen de manera gratuita todo tipo de programas, hasta, con un dejo de ironía, supuestos antivirus y antimalwares que, en realidad, son todo lo contrario. No hace falta aclarar que nunca se deben descargar este tipo de archivos y, de hacerlo por error, eliminarlos sin ejecutarlos. Incluso a la hora de descargar software legítimo, lo preferible es realizarlo siempre desde la página oficial de su desarrollador o desde sitios de descarga reconocidos como Download.com, y evitar otros sitios más sospechosos, algunos de los cuales solicitan un pago monetario o el envío de SMS para habilitar la descarga de programas que sus creadores distribuyen en forma gratuita.

8.Ingresarás datos críticos, sólo en sitios seguros.

Una de las maravillas de internet, es la compra electrónica. Navegar por góndolas en la web, agregando productos al carrito, y, en un par de clicks, pagar con tarjeta de crédito para recibir los productos en la puerta de la casa, es una bendición para numerosas personas. Lo mismo para los hobbistas y aficionados a la lectura, o la música, o tantas otras actividades, que pueden encargar a otros países a través de la web productos inconseguibles en sus lugares natales y recibirlos a los escasos días. Lo mismo ocurre con el Home Banking. Evitar tener que ir al banco y sufrir horas de cola para hacer un trámite, pudiendo llevarlo a cabo en minutos en nuestra computadora en la comodidad del hogar, es invaluable. Pero tantas ventajas entrañan sus riesgos. A través de la técnica conocida como phishing y otro tipo de ataques maliciosos, delincuentes podrían hacerse con nuestros números de tarjeta de crédito, o de cuentas bancarias, y provocar desastres. Pero podemos estar tranquilos siguiendo estas pocas precauciones. Nunca ir al sitio del banco o de compras electrónicas a través de un enlace recibido por mail o mensaje instantáneo. Siempre escribir la dirección en la barra del navegador o recurrir a un favorito hecho por nosotros mismos. Verificar que los sitios en los que operaremos usan HTTP Seguro (en la barra de direcciones, el protocolo que debe figurar es “http://anonym-url.com/go.php?to=https://” en lugar de “http://”/, y en la barra de estado del navegador, en la parte inferior, debe mostrarse la imagen de un candado cerrado). Si no son sitios HTTPS (”sitios seguros”), no debemos introducir allí nuestros datos. Si dichos sitios proveen un “teclado virtual” para tipear las credenciales de usuario siempre hay que emplearlo: ello nos librará del peligro de que nuestros datos sean capturados por un “keylogger”, que puede hallarse instalado en nuestro sistema si el mismo fue infectado a través de un troyano.

9.Si debes correr riesgos, usarás sandboxing.

De ser ineludible abrir un archivo sospechoso, nunca debemos hacerlo en nuestro equipo principal, aunque el análisis con uno o más antivirus indique que el mismo no está infectado. Existen varios modos de “aislar” el archivo comprometedor para poder ejecutarlo sin peligro de afectar el sistema si ocurre lo más temido. Lo más recomendable es el del uso de software de virtualización, como VMWare (propietario, aunque hay versiones gratuitas) o VirtualBox (Open Source), que emulan a una PC completa, con su disco rígido, placa de red y demás periféricos, en una ventana de nuestro Sistema Operativo anfitrión. Si estamos en la duda de si un documento de Word que recibimos contiene una información importante que estábamos esperando o un virus, lo conveniente es tener una máquina virtual de prueba, en la que seamos capaces de abrir el archivo en forma segura. En el peor de los casos, si constatamos que se trata de un archivo infectado, podemos borrar la máquina virtual o revertirla a un estado anterior a la infección por medio del sistema de “snapshots” que proveen tanto VMWare como V i r t u a l B o x.

10.Te mantendrás informado sobre nuevas maneras de vulnerar tu seguridad.

Una de las mejores formas de rehuir a dolores de cabeza es prevenir. Específicamente para quienes administran sistemas con datos críticos, tener conocimiento sobre las recientes vulnerabilidades y exploits que van surgiendo para las tecnologías que se aplican en su área es el modo de evitar que el problema nos sorprenda cuando ya es demasiado tarde. Para ello, contamos con la invaluable ayuda de diversos sitios especializados, entre los cuales podemos mencionar, puntualmente, a Secunia.com, portal danés que ya lleva siete años manteniendo al tanto a la comunidad informática sobre las diferentes vulnerabilidades que se hallan a diario en los miles de paquetes de soft que componen un sistema informático moderno. Es de gran ayuda visitar estos sitios periódicamente o suscribirse a sus feeds RSS para permanecer actualizado.
Fuente: dattamagazine

viernes, 3 de diciembre de 2010

BackTrack – Distribución para Penetration Testing

Bienvenidos a backtrack-linux.org, la distribución de seguridad en Linux de más alto rating y aclamado hasta la fecha. BackTrack es un arsenal de pruebas de penetración basada en Linux que ayuda a los profesionales de la seguridad en la realización de evaluaciones en un entorno puramente natural dedicada al hacking. Sin importar si usted está haciendo BackTrack su sistema operativo principal, el arranque desde un LiveDVD, o usando su dispositivo usb favorito, BackTrack se ha personalizado hasta el último paquete, la configuración del núcleo, la escritura y el parche, con el único fin de realizar pruebas de penetración.



BackTrack es para todo público profesional en seguridad de la información, tanto para los que tienen mucha experiencia, como para los recién llegados a el campo de seguridad. BackTrack promueve una forma rápida y fácil de encontrar y actualizar la mayor base de datos de herramientas en seguridad.
Nuestra comunidad de usuarios varia, desde los expertos en penetración en el campo de seguridad de la información, las entidades gubernamentales, tecnología de la información, hasta los entusiastas de la seguridad, y nuevos individuos que llegan a la comunidad. La retroalimentacion de todos los sectores y niveles nos permite desarrollar una verdadera solución que se adapta a todo el mundo y supera con creces cualquier cosa que se haya desarrollado tanto comercial como de dominio público.
Ya sea que esté evaluando una red inalámbrica, testeando servidores, realizando una evaluación de una aplicación web, el aprendizaje o la ingeniería social de un cliente, Backtrack es la primera parada única para todas las necesidades en seguridad.

Seguridad Informática, un reto para la Ingeniería del Software o una necesidad

Para este primer artículo quise tocar un tema que me llama mucho la atención y que es un gran reto para los Ingenieros de software y profesionales relacionados en este campo en cuál es la seguridad. Para esto quiero enfatizarme en el ciclo de vida del software el cual es utilizado por los ingenieros de software, arquitectos entre otros profesionales involucrados en la rama, pero que tan efectivo es la metodología usada por estos profesionales en los desarrollos de software que realizan, esto lo menciono porque la mayoría de profesionales en el campo del software nunca piensan en el tema de la seguridad sino en cumplir con su meta u objetivo a alcanzar, pero ¿que tan valido es este punto de vista? en esta época donde la seguridad a tomado mucha importancia para las empresas y personas consientes que saben que la información que manejan es de mayor importancia y no puede ser mostrada divulgada a todo el mundo. Con esto quiero recalcar que la seguridad es importante aplicarla al ciclo de vida del software para con el fin de tener calidad en los productos desarrollados y cumplir con los tres objetivos de la seguridad que son la integridad, confidencialidad y disponibilidad ya que en esta época la tecnología va creciendo donde y encontramos que la información que necesitan las personas ya es accesible desde internet, con esto quiero enfatizar que la seguridad debe ser aplicada en cada fase del ciclo de vida del software para no tener dificultades más adelante en el diseño, arquitectura, pruebas entre otros.
IngenieriaSegura Seguridad Informática, un reto para la Ingeniería del Software o una necesidad

Después de tocar este tema de mayor importancia por los profesionales de seguridad hay dos preguntas que siempre les realizo a los arquitectos y gerentes de proyectos.
  1. (Arquitecto) ¿En qué fase del ciclo de vida del software contemplan la seguridad?
  2. (Gerentes de Proyectos) ¿En los cronogramas donde se estima el tiempo para pruebas de seguridad?
Para la primera pregunta la mayoría de arquitectos responde las pruebas son realizadas al final del desarrollo ya que en ese momento podemos detectar los bug y corregirlos, pues lastimosamente para estos arquitectos la respuesta es incorrecta ya que las pruebas de seguridad deben estar en cada fase del ciclo de vida del software ya que entre más temprano encontremos problemas de seguridad más rápido podemos abordarlas y tendremos menos costo.
La segunda pregunta es una de mis favoritas porque la mayoría de gerentes de proyectos se queda callados como si les estuviera haciendo una pregunta para medirlos que tanto saben, pero no es así, esta pregunta la realizo porque en ningún cronograma que allá visto en mi vida como ingeniero de software exponen un tema de pruebas de seguridad, ¿pero a qué se debe esto? Una de las razones es la falta de conciencia y la metodología de enseñanza que aplican las universidades donde nunca abordan este tema y que es de mayor importancia para todo el mundo no solo para los profesionales involucrados con las NTIC .
Después de haber Mencionado estos aspectos y en mi poca experiencia profesional como ingeniero de software recalco una de las mejores guías o estándares que me he encontrado en temas de seguridad y que debería utilizar todos los ingenieros de software y personas involucrados en estas ramas el cual es OWASP donde el punto vital de ellos es demostrar que la seguridad de la información y el software puede operar junto para poder tener un producto de software que tengan los más grandes estándares de calidad esto se obtiene realizando las pruebas de seguridad que se le debería realizar a todos nuestros productos donde esté involucrado el software.
Buenos para los que no conocen que es owasp le dare una breve introduccion sacada de internet la cual dice que OWASP es un proyecto de código abierto dedicado a determinar y combatir las causas que hacen que el software sea inseguro. .
La Fundación OWASP es un organismo sin ánimo de lucro que apoya y gestiona los proyectos e infraestructura de OWASP. La comunidad OWASP está formada por empresas, organizaciones educativas y particulares de todo mundo. Juntos constituyen una comunidad de seguridad informática que trabaja para crear artículos, metodologías, documentación, herramientas y tecnologías que se liberan y pueden ser usadas gratuitamente por cualquiera.
Por último y unos de mis favoritos es el Top 10 del 2010 que saca OWASP encontramos:
  1. Inyecciones: Vulnerabilidades de inyección de código, desde SQL hasta comandos del sistema.
  2. Cross-site Scripting: Una de las vulnerabilidades más extendidas y a la par subestimada.
  3. Gestión defectuosa de sesiones y autenticación: Comprende los errores y fallos en las funciones de gestión de sesiones y autenticación.
  4. Referencias directas a objetos inseguras: Errores al exponer partes privadas o internas de una aplicación sin control y accesibles públicamente.
  5. Cross-site Request Forgery.: Vulnerabilidad consistente en el desencadenamiento de acciones legitimas por parte un usuario autenticado, de manera inadvertida por este último y bajo el control de un atacante.
  6. Ausencia de, o mala, configuración de seguridad.: Más que un error en el código se trata de la falta o mala configuración de seguridad de todo el conjunto de elementos que comprende el despliegue de una aplicación web, desde la misma aplicación hasta la configuración del sistema operativo o el servidor web.
  7. Almacenamiento con cifrado inseguro: Referida a la ausencia o mal uso de los sistemas de cifrado en relación a los datos almacenados o manejados por la aplicación.
  8. Falta de restricciones en accesos por URL: Falta de validación en el procesamiento de URLs que podrían ser usadas para invocar recursos sin los derechos apropiados o páginas ocultas.
  9. Protección insuficiente de la capa de transporte: Relacionada con A7 pero orientada a la protección del tráfico de red. Elección de un cifrado débil o mala gestión de certificados.
  10. Datos de redirecciones y destinos no validados: Errores en el tratamiento de redirecciones y uso de datos no confiables como destino.
Bueno para finalizar quiero retar a los lectores que utilicen las métricas provistas por OWASP y categoricen en cuál de las 10 posiciones de vulnerabilidades se encuentran, y si su respuesta es ninguna le aconsejo que realice las pruebas con más detalle ya que los que estamos en el mundo de la seguridad y el software sabemos que un producto no es 100% seguro, como lo hacemos ver.