- ¿Hola Jorge? ¿Podrías presentarte y decirnos un poco de donde sos, que haces, a que te dedicas, etc?
Soy de Paraguay, desarrollador y en mi tiempo "libre" entrenador amateur de mujeres (léase casado y con 2 hijas). Profesionalmente fui desarrollador full time por casi 10 años, y ahora estoy incursionando en forma “pro” al sector de seguridad.
Me gusta bastante la onda FOSS, pero me considero un eterno detractor de los fanáticos, especialmente si son del combo linuxeros + fanáticos, porque creo que si bien ellos piensan que están siendo "facha" y es cool, en realidad están perjudicando a sus clientes y dañando la imagen de la gente que hace su trabajo utilizando únicamente criterios técnicos. Y si, soy un "fanboy" de FreeBSD, pero no me considero fanático, ni tampoco anti-Linux, más bien me gusta "the UNIX way".
- Estas trabajando en una empresa informática de seguridad. Específicamente a que te dedicas. Si estoy trabajando ahora en una empresa local que se dedica exclusivamente a ofrecer servicios relacionados a la seguridad informática. Yo estoy a full básicamente con toda la parte de Hackeo Ético o Penetration Tests, cariñosamente les decimos "pentest", y tareas relacionadas. También hacemos consultorías en áreas relacionadas a la seguridad de los clientes (políticas, certificaciones PCI, BCP, etc...).
- Al instalar por defecto un Sistema Operativo (Windows, Linux, MAC OS X, BSDs, Solaris, etc), ¿Cuál de ellos es más seguro, inseguro, etc?
Asumiendo que por instalación por defecto decimos una a la que le damos next next next sin tomar ninguna decisión consciente, obviamente los mas seguros "usualmente" serán todos los no Windows, pero eso es muy muy relativo. Hay distros y distros, que por defecto te dejan corriendo hasta el zeroconf. Lo que tienen en contra los Windows sería que así instalando del DVD previo al update, que es una obligación ya en cualquier SO hoy en día, están MEGA expuestos, pero eso es para mi un tecnicismo nomas, porque cualquiera que sepa lo que hace con el SO que esta instalando ya de entrada lo va dejando bien ordenado, así que en la práctica yo creo que más que el SO en cuestión, la diferencia esta en el nivel de skills del que esta dándole al mouse y al teclado.
Si sos un mediocre instalando Windows que dejas todo "así nomas", solo porque aprendas a instalar linux no vas a estar más seguro, pues seguirás dejando todo "así nomas".
Aclaro que nunca instale Mac OS y Solaris (el último que instale fue en el 2003).. :S - ¿Que prácticas se deben realizar, para tener una buena seguridad en una empresa?
Y primero que todo yo creo que debe dejar de pensar en las seguridad como algo así medio fijo o con recetas pre establecidas. O sea desechar esa cultura de que hablamos de seguridad y se piensa que con instalar un antivirus y poner un firewall y 4 o 5 reglas y tararan, "ya esta!". Eso tiene dos defectos, uno que es una visión demasiado simplista del problema y segundo que probablemente no este "ajustada a la realidad". Lo primero que hay que hacer para definir "la seguridad" debería ser definir bien que es lo que realmente estamos protegiendo y de que exactamente quiero proteger. Protejo datos? servicios? datos y servicios? los datos en transito? o solo los almacenados? si protejo datos, que datos? y porque? si protejo servicios, cuales? porque este si y el otro no? Los debo proteger de accesos no autorizados? o también es importante la disponibilidad 24x7? cuanto es el máximo tolerable que puede estar “abajo” este servicio? minutos? horas? días? Usualmente estas preguntas no las responde alguien de IT sino alguien que defina a que se dedica nuestro boliche particular, por ejemplo si sos un banco vas a necesitar proteger posiblemente TODOS los datos, pero si sos una consultora de software seguramente los datos en las pcs no son muy importantes, lo que si te importa es poder garantizar acceso y la integridad de tu repositorio de "fuentes", pero el server de desarrollo te importe muy poco y seguramente hacer backups y la disponibildiad de tus server CVS/SVN es mil veces mas importante que tu server de mail. Pero todo esto es relativo a cada empresa y cada entorno.
Después que ya tenes bien definido que es lo que tenes que proteger, de que es lo que tenes que proteger (de mis empleados descontentos/descuidados? de ataques externos?), ahí recién ver con que herramienta te conviene proteger cada "item". Obviamente un firewall es prácticamente un elemento omnipresente, pero no es TAN vital como se piensa, es decir con tus reglas de firewall bien puestas no tenes el 80% listo, en realidad yo diría que apenas tenes el 10/20% hecho, la parte jugosa usualmente esta por otro lado. Por ejemplo un problema súper interesante con respecto a acceso a datos en los últimos años es que cualquiera tiene 16GB de almacenamiento en un celular, ipod, tablet, pen/disco usb y puede llevar TODOS tus datos en su bolsillo, y no hay regla de firewall ni herramienta de análisis de correo saliente que te ayude ahí. Otro gran problema son las redes wireless, por un lado cualquier cosa ya se conecta a internet vía 3G estos días, así que conectarte a una pc y hacer uploads de gigas y gigas de info es extremadamente simple y barato. Para dar un ejemplo simple, por 150 mil al mes cualquier empleado puede llevar su propio internet y conectar su pc vía 3G, y no solo no tenes control sobre el trafico en esa red, sino que a menos que revises bolsillos y carteras al entrar/salir no hay forma decente de detectar "ah,mira la PC15 conecto su módem Claro y esta haciendo ftp a su casa". Mas de uno va decir, bloquea nomas todos los puertos USB y listo. Aha, si claro, pero y que hago con los de ventas/administración/etc que traen sus propias notebooks?
Un consejo así bien general, pero que considero muy importante es dejar de "reinventar la rueda" especialmente en seguridad. Es muy común ver que la gente "inventa" sus propios mecanismos de seguridad. Por ejemplo inventa su propio esquema de autenticación, o si sos programador haces tu propio "encriptador" o cosas así. Eso para empezar es una perdida de tiempo, porque aunque sepas lo que haces, estarás perdiendo días y días pensando/haciendo/probando tu "solución" casera en vez de usar algún estándar que ya se haya creado. Usar un estándar (de configuración, codificación, cifrado) tiene la ventaja de que: - Es revisado y actualizado, es decir esta cuasi garantizado que "funciona" como se espera, lo que te evita el potencial problema de estar introduciendo algún problema o vulnerabilidad de la que no tengas ni idea, y de contener algo así seguramente podrás arreglarlo en forma simple con ayuda de parches que también serán públicos.
- Cuando alguien te cuestione el porque, ya no sera "porque YO creo que así esta bien, sino “es así como se hace según este estándar". Usualmente tiene más peso en la empresa un estándar externo que uno sacado del "bolsillo" del programmer o del sysadmin.
- Y por último. Nadie es eterno en ningún puesto, mucho menos en una empresa, así que usar un estándar te garantiza que el que viene a continuar tu trabajo, pueda encontrar documentación "decente" sobre lo que esta hecho y porque funciona así, de esa forma no malgastar su tiempo intentando entender "que caralhos e essa porra ahi meu irmao".
- ¿Las empresas de Paraguay tienen una buena seguridad? No sabría decirte con certeza así a nivel país, porque no conozco una cantidad representativa de ellas. Tampoco puedo hablar del sector con el que trabajamos porque tenemos firmados NDA’s : Lo que si noto es que al menos hay mas “conciencia” de la que había hace 10 años. Por ejemplo en el 2002/2003 era imposible conseguir que alguien te pague por hacer algún tipo de penetration test o cualquier cosa similar a lo que hoy llamamos "ethical hacking". Pero hoy en día sin embargo esta reglamentado inclusive como requisito anual por el BCP. Obviamente la conciencia solo te asegura que la gente “se preocupa” más no que efectivamente hace algo más o que lo hace mejor, pero estamos avanzando y creo que comparando a nivel sudamerica estamos dentro de las mismas condiciones. O sea no somos lo máximo en seguridad pero tampoco somos los peores del continente, estamos en un nivel parejo de "hechoputismo".
- ¿Que opinas sobre los sitios paraguayos que almacenan datos? Por lo que yo veo cada día de los sitios de compra online y demás, la condición del desarrollo web a nivel seguridad es realmente lamentable. Para resumir te diría que hoy por hoy no coloco ni colocaría mis datos de tarjeta de crédito para comprar en ningún sitio com.py porque las condiciones en que nos manejamos a nivel desarrollo, infraestructura y demás es totalmente precario.
- Para ser un experto en seguridad informática, que necesitas saber o cuales serian los requisitos. Cuando conozca alguno le pregunto... :D
- ¿Para armar una buena seguridad en un sitio web, que se tendría que tener en cuenta?
Primero y antes que nada, si tu sitio contiene alguna aplicación o sección dinámica, lo más importante es asegurarte de que la app no tenga vulnerabilidades. El 90% de las intrusiones se hacen vía algún procesarform.php que se dejo descuidado y que te deje divertirte con el (ejemplo nomas es PHP no hay nada especial en contra, son la especie que más abunda nomas :p).
Después esta lo de siempre, no dejar expuestos servicios que no necesites, eliminar los módulos de tu webserver que no necesites, y obviamente, actualizar periódicamente, pero no cada 5 meses, al menos revisar si no hay parches cada 15 días o semanalmente inclusive. Y no olvidarte de tus logs, no necesariamente leerlos cada día, si no al menos tener algo que los procese y nos avise si hay algo “extraño”.
- ¿Para un sitio web, como por ejemplo un banco, o cualquiera donde se maneja dinero, que se tendría que tener en cuenta de lado del sitio, y del lado del cliente (usuario)?
Si manejas datos sensibles a ese nivel tu mejor opción, si lo que te preocupa es garantizar la seguridad (no reducir costos nomas), es aplicar un estándar de seguridad como el del PCI (Payment Card Industy), que es un estándar bastante amplio y detallado de los procedimientos a tener en cuenta para garantizar la seguridad de los datos, en el caso de ellos de los datos de tarjetas. Este estándar cubre detalles de como proteger los datos en transito, los almacenados, la retención e inclusive como manejar la eliminación de datos sensibles. - Sobre el grupo anonymous. ¿Que opinas sobre ellos? Son personas que saben lo que hacen o son personas que usan solo herramientas que tras personas hicieron.
Anonymous es una bolsa de gatos, no es un grupo homogéneo, así que no se puede decir ah, si son buenos o malos. No es como otros grupos de hacktivismo que son mas "cerrados". Lo que si tienen los de Anonymous es el famoso "no somos machos pero somos muchos" así que igual va estar interesante ver un poco que tal le va a al FaceBook el 5/11 :)
Y si, el grueso de la gente que les ayuda a hacer DDoS son cualquieras que se bajaron la app y le dieron click a "attack", pero obviamente no todos son así, esos son solos lo que serian los "soldados rasos" en "We are a Legion".
- ¿Cuales son las formas de bloquear fácilmente un sitio web?
Y si es un solo server cualquier variante de un ataque SlowLoris ya te sirve, pero usualmente no te sirven para infraestructuras de sitios más "decentes" como Amazon, FaceBook,etc.
Aparte hay errores y bugs que se descubren cada tanto que son usables por un tiempo como el Byte Range Atttack que afecta a Apache, se "popularizo" hace 1 mes, pero ya hay parches, aunque obviamente el grueso de los sitios no parchearon aun.
También hay varios ataques simples para "resource exhaustion" si tu webserver suporta SSL, que básicamente se aprovecha de que renegociar el key del túnel es "caro" en términos de CPU y que un cliente puede pedir "renegociar" una y otra vez así que podes causar un uso de CPU al 100% en segundos.
Lo que si tienen todos estos ataques que mencione es que no son "persistentes" o sea apenas se hace drop de la conexión y todo vuelve a la normalidad...
- Hace unos días aparecieron un grupo denominándose anonymouspy. Realmente son de anonymous o son un grupos que usan su nombre.
Y mi opinión personal teniendo en cuenta el modus operandi de Anonymous, que es totalmente pro libertad y anti políticas de gobierno opresivas, que si el primer "ataque" de AnonPY fue a un medio de prensa, pues o son un spin-off medio desatento que no leen bien ingles o simplemente "prestaron" el nombre para ganar tapa de diario y ser más famosos, por un día, pero famosos al fin.
Obviamente también esta la posibilidad de que sea todo una broma (AnonPY is a joke).
- ¿Que seguridad mínima tendría que tener cada usuario en su máquina, uso de internet?
Y lo mínimo mínimo, algún antivirus y que se actualice periódicamente. Algunos recomiendan personal firewalls, pero es medio discutible la utilidad real para un usuario "común". Sin importar que SO utiliza, si o si debe tener configurado el "auto update", sea que uses Windows, Ubuntu o cualquier otro engendro.
Otro item importante es utilizar algún navegador seguro, y de preferencia que se actualice automáticamente. Y si usas mensajería instantánea, utilizar en lo posible un cliente seguro, específicamente si es posible evitar el cliente oficial del Messenger, si bien es difícil conseguir eso con usuarios "finales" creo que es más fácil cambiarlos de cliente, que adiestrarlos a no darle click a todo lo que reciban... :S
- Cada vez existen más usuarios para tablets y dispositivos móviles, existen herramientas de seguridad, etc. ¿O no existen problemas de seguridad?
Los problemas de seguridad para tablets y dispositivos móviles son idénticos a los de PC, a todos los efectos prácticos un android es un linux peluqueado, así que no es ni más ni menos seguro de por si. - Para finalizar. ¿Que le recomendarías a los que manejan la seguridad de una empresa, usuarios nomales, etc?
Leer, después leer más, y por último seguir leyendo. :p
Si sos un usuario normal no tenes mucho más que "confiar" en los mecanismos como auto updates y en que la gente que entiende se encargue de hacer su trabajo como corresponde.
Si sos un informático, sea que trabajes en seguridad o no, ejemplo, desarrollas software "nomas", igual hay que mantenerse informado de lo que pasa en el ambiente, hay vulnerabilidades, exploits y ataques nuevos todo el tiempo, así que si tu app que hiciste hoy era segura, quizás el miércoles ya no, porque alguien publico un ataque para el framework que utilizas o algún otro componente del que dependas, así que estar al tanto de lo que pasa es la mejor defensa.
Hay un discurso de ventas súper rayado, pero que no deja de ser cierto: La seguridad no es un evento en un Punto en el Tiempo, es un proceso continuo. Es decir no existe el "ya estoy seguro con esto, y me olvido". Ese es solo un mito que te venden las empresas de antivirus y firewall personal :p
O sea si yo veo que tu sitio web ni siquiera se intenta proteger contra un XSS no me quiero ni imaginar cuantas ganas le habrás puesto en proteger la privacidad de mis datos personales en transito o una vez almacenados. Y ganas de que mis datos terminen en una bd mysql, para que estén ahí esperando a que alguien venga y lleve en un pen mi número de tarjeta/nombre y dirección. No gracias. De solo pensar como se manejan acá los backups, que terminan zipeados en carpetas compartidas generalmente. Así que prefiero nomas ir al local y comprar ahí mismo.
No creo que haya un set "predefinido" para ser un expert en seguridad, o al menos a mi me gusta pensar así. Es como si me preguntaran, que hace falta saber para ser buen programador... que clase de programador queres ser? web? app de negocios? system programmer? lo mismo para un security expert, hay una amplia gama de áreas en las que experiencia previa te hará más hábil, pero en realidad todo depende de a que "sector" de la seguridad te pretendes dedicar. Seguridad en networking? seguridad en desarrollo? seguridad a nivel continuidad del negocio? seguridad física? Es muy amplio y viendo los caminos que han seguido varias personas que conozco y que hoy están en el negocio, creo que no hay un solo "combo". Mi receta seria la misma que para ser un buen developer: "Ve que lo que te gusta hacer, que es lo que disfrutas haciendo/aprendiendo y metele a eso, aunque hoy mismo no parezca ser buen negocio".
No hay ningún secreto, pero aparentemente no todo el mundo es consciente del aspecto de seguridad cuando desarrolla y por eso usualmente vemos aplicaciones que no hacen ningún esfuerzo para intentar protegerse al menos contra las vulnerabilidades más conocidas. Personalmente creo que es una cuestión de preparación nomas, así que no estaría mal que se den una pasada por www.owasp.org y miren el Top10 de vulnerabilidades web, y asegurarse de que entienden de que se trata cada uno de esos 10 items, como funciona, y como se protege uno contra ellos. Si bien el top10 obviamente deja fuera otros miles de posibles ataques, con ese top10 por lo menos son bien generales y afectan a cualquier sitio web, el resto ya depende mucho de que estés haciendo.
Muchísimas gracias a Jorge Alvarenga por haber aceptado la entrevista y espero que la disfruten. XD
0 comentarios:
Publicar un comentario
Expresate y se crítico en tu vida. XD