jueves, 31 de octubre de 2013

Mapa de la Actividad Global sobre Ataques DoS

Hace unos dias atras, Google anuncio la publicacion del Mapa de Ataque Digital, una herramienta que muestra la actividad global de ataques tipo rechazo de servicio (DoS), a nivel de paises. La información presentada, proviene del sistema de monitoreo e inteligencia ATLAS, de la empresa Arbor Networks. Este sistema recoge datos de más de 270 proveedores de servicio Internet (ISP), ubicados alrededor del mundo.

He aquí un vistazo al Mapa de Ataque Digital (si deseas ver el mapa completo, puede visitar el sitio http://www.digitalattackmap.com):




Es interesante ver por medio de este mapa, la cantidad de ataques DoS (así como la duración e intensidad de los mismos) que ocurre diariamente. Usualmente este tipo de ataques no se reportan en las noticias, por lo que se puede tener la impresión de que no ocurren muy a menudo.

Según el mapa, los ataques DoS entre EEUU y China ocurren practicamente de forma diaria. Algo similar se reporta en Brazil, en donde los ataques provenientes de direcciones IP desconocidas ocurren también a diario. Otros países en donde se reportan ataques DoS incluye (aunque en menor escala y frecuencia al caso de Brazil) a Chile, México, Panamá y Colombia. NOTA: Importante recordar que el mapa sólo es una muestra y no representa necesariamente la actividad en todos los países, ya que pueden haber países sin ISPs que reporten a ATLAS.

El mapa también muestra algunas preferencias de quienes lanzan estos ataques. Países que poseen un nivel alto de penetración del Internet, así como acceso a alto ancho de banda, son preferidos como fuentes del tráfico a generar en el ataque DoS. Es esta una de las razones por las que un alto número de las computadoras que forman parte de botnets, están localizadas en estos países.

Revisando el caso de Panamá, el mapa muestra (a la fecha de publicar este artículo) 21 ataques tipo DoS desde el 23 de julio del 2013:

FECHA
DURACION
PAIS FUENTE
Mbps MAX.
TIPO DE ATAQUE
7/23
11 hrs.
EEUU
6,889
Detector/Bandwidth
7/28
1 hr.
desconocido
3,954
Detector/Bandwidth
7/28
1 hr.
desconocido
7,460
Detector/Protocol
8/9
28 min.
EEUU
6,203
Misuse/IP Fragment
8/9
26 min.
EEUU
11,611
Detector/Protocol
8/9
27 min.
EEUU
11,662
Misuse/UDP Misuse
9/1
1 hr.
desconocido
12,491
Misuse/IP Fragment
9/1
1 hr.
desconocido
19,987
Detector/Protocol
9/25
9 min.
desconocido
7,681
Misuse/IP Fragment
10/12
30 min.
EEUU
4,429
Detector/Bandwidth
10/12
15 min.
EEUU
3,055
Detector/Bandwidth
10/12
30 min.
desconocido
2,361
Detector/Bandwidth
10/27
7 min.
desconocido
389
Detector/Protocol
10/27
7 min.
desconocido
354
Detector/Protocol
10/29
8 min.
desconocido
403
Detector/Protocol
11/19
19 min.
EEUU
2,703
Detector/Bandwidth
12/19
9 min.
desconocido
4,558
Detector/Bandwidth
1/26
14 min.
desconocido
316
Detector/Protocol
4/8
1 hr.
desconocido
3,747
Detector/Protocol
4/10
36 min.
desconocido
16,940
Detector/Protocol
4/10
1 hr.
desconocido
15,442
Detector/Bandwidth


De esta tabla, es fácil ver como ataques DoS representan una clara amenaza a las redes y especialmente en países pequeños como Panamá. Por ejemplo, los dos ataques ocurridos el 1 de septiembre de 2013, alcanzaron más de 12 y 19 Gbps. Esto equivale a 20,000 clientes con enlace de 1Mbps. Según estadisticas de la Autoridad de Servicios Públicos de Panamá, existen más de 263 mil usuarios de tipo residencial (año 2012), lo que sugiere un total de 61.2 mil conexiones residenciales. En otras palabras, se requiere un tercio de todos los clientes residenciales en Panamá para llevar a cabo los ataques observados a principios de septiembre, considerando que cada cliente tiene una conexión de al menos 1Mbps.

NOTA: Se actualizó la tabla al 6 de mayo de 2014.

sábado, 19 de octubre de 2013

Java... o cuando la seguridad no determina lo que debemos proteger

Hablando de seguridad, el lenguaje de programación Java (y su correspondiente máquina virtual) ha estado por años en el ojo de la tormenta, con un incremento sustancial en el número de vulnerabilidades reportadas, así como aquellas consideradas de alto riesgo (que reportan un puntaje de 7.0 o mayor, según el sistema CVSS). Bajo este escenario, dos preguntas saltan a la mente de un investigador/especialista de seguridad: (1) es seguro utilizar este lenguaje de programación al desarrollar aplicaciones, especialmente para aquellas que son utilizadas a través de una red o el Internet? (2) es el incremento en vulnerabilidades el resultado del creciente interes de atacantes, debido a la popularidad de Java?

Veamos las estadísticas. Desde 2008, se han encontrado 384 vulnerabilidades al lenguaje Java. En comparación, sólo se reportaron 51 de 2001 a 2007. Aún más preocupante, el número de vulnerabilidades de alto riesgo pasó de 22 (2001 a 2007) a 213 (desde 2008). La situación se ha tornado tan preocupante que US CERT, la entidad de los EEUU encargada de diseminar información sobre problemas de seguridad entre organizaciones no militares, ha recomendado deshabilitar Java en los navegadores web, incluso después de haber instalado la versión más reciente del lenguaje. Y empresas como Apple incluso decidieron deshabilitar Java de forma remota entre todos sus usuarios.

Fuente: cvedetails.com (Octubre 2013)

Las respuestas a las dos preguntas del primer párrafo ciertamente están relacionadas. El incremento en vulnerabilidades reportadas puede atribuirse parcialmente a la creciente popularidad de Java. Y esta situación podría claramente alejar a muchas organizaciones a utilizar el lenguaje, al considerarlo peligroso ...pero la situación es otra.

La popularidad de Java parece estar tan fuerte como nunca. El sitio web langpop.com que estudia diversos sitios relacionados con lenguajes de programación (como portales de anuncios de trabajo para programadores y repositorios de programas/código fuente), coloca a Java como el segundo lenguaje de programación más popular, detras tan sólo del lenguaje C. Curiosamente este último lenguaje también es conocido por sus problemas de seguridad, particularmente por el tema de desbordamiento de pilas o búfers.

El índice TIOBE sobre popularidad de lenguajes de programación, que existe hace más de 30 años y se actualiza mensualmente, también colocó a Java en el segundo lugar en su evaluación de Octubre 2013. De acuerdo a TIOBE, Java sólo ha ocupado las primeras dos posiciones por los últimos 11 años, como se muestra en la figura de abajo.

Fuente: tiobe.com (Octubre, 2013)

En la era del web, redes sociales, miles de millones de usuarios y 'Big Data', Java se ha convertido en un fuerte candidato a la hora de seleccionar un lenguaje de programacion. Su capacidad para producir aplicaciones que cumplan con los requisitos de escalabilidad y rendimiento necesarios en esta era, es difícil de alcanzar con otros lenguajes. La flexibilidad que ofrece por medio de su máquina virtual (JVM) para ejecutar los programas Java en múltiples plataformas y el hecho de que existen versiones código libre de la plataforma Java, hace la decisión aún más sencilla para los programadores a la hora de seleccionar.

Grandes compañías como Google, Facebook, LinkedIn, Twitter y Square, utilizan Java como parte de su estrategia para producir aplicaciones y servicios que les permita crecer y ajustarse a las demandas del creciente mercado que encuentran en Internet. Un reciente artículo de la revista de tecnología Wired, incluso habla de la segunda llegada o advenimiento de Java en la era del web. Aunque esto nos parece un poco exagerado, Java nunca desapareció, si es cierto que el lenguaje está ayudando a que empresas puedan cumplir con los exigentes requisitos de esta era.

Entonces, volviendo al tema de seguridad, que hacer con un lenguaje extremadamente popular y ventajoso pero que se encuentra en el ojo de la tormenta, por sus inherentes problemas de seguridad? La situación con Java es un ejemplo más de las limitaciones con las que contamos los especialistas de seguridad. Es iluso pensar que sólo nosotros debemos definir los requisitos y restricciones sobre las cuales diseñar y construir aplicaciones y sistemas. Somos parte de un conjunto de actores que definen estos requisitos, lo que produce un escenario usualmente complicado y no siempre claro para nuestros objetivos de seguridad. Sin embargo, y es de esperarse, que debemos actuar y ser efectivos bajo este escenario. Porque si algo es claro, es que parte de nuestro trabajo es manejar y asegurar aplicaciones escritas en Java.

sábado, 10 de marzo de 2012

Educación en la Web: Como hacer un buscador como Google... sin saber de programación!

Recientemente comenzó un curso de programación, totalmente gratis y desarrollado por profesores de las Universidades de Virginia y Stanford. El nombre del curso? Construyendo un Buscador Web (Building a Search Engine). Los instructores del curso indican que no se necesitan conocimientos previos en programación para participar en el curso.

El curso forma parte de un proyecto mucho más grande, llamado Udacity. El objetivo es ambicioso e interesante: proveeer educación universitaria de alta calidad y a bajo costo. Utilizando la economía del Internet, Udacity busca conectar a profesores de universidades y programas reconocidos con cientos de miles de estudiantes alrededor del mundo. A la fecha ofrecen dos cursos y en abril próximo comenzarán varios más: 'Web Application Enginnering', 'Programming Languages' y 'Applied Cryptography'. Demasiado bueno para sonar cierto? He estado siguiendo el curso por las primeras tres semanas y hasta el momento he estado impresionado con la calidad y contenido del mismo.

Puede sonar demasiado ambicioso armar un buscador web sin tener ningún conocimiento previo de programación. Pero los autores del curso están realizando un excelente trabajo, introduciendo conocimientos básicos necesarios de programación y computación alrededor de la idea de armar un buscador web. Presentan pequeñas pruebas luego de tan sólo mostrar un concepto nuevo. Evitan esperar a presentar toda la teoría de computación y se concentrar en mostrar que se puede hacer con lo poco que se haya presentado en un corto tiempo (minutos). Pero a la vez, el curso no olvida el objetivo de construir el buscador por lo que cada concepto aprendido es un paso en la dirección para lograr armar el buscador.

Para todos aquellos que trabajamos en computación, el curso puede parecer demasiado básico. Sin embargo, los autores no evitan hablar de las dificultades que un programador enfrenta al intentar construir un buscador y catalogar los sitios web en el Internet. El curso ofrece información sobre estos problemas y como expertos en el tema han trabajado para resolverlos. Gabriel Weinberg, creador del buscador DuckDuckGo participa en un video de Udacity, hablando de su proyecto. Anna Patterson, creadora del buscador Cuil y actual directora de investigación de Google, también participa compartiendo sus experiencias sobre las dificultades que existen para escribir un buscador web. He aquí el video, Anna aparece a los 49 segundos:



Para aquellos que desean más información sobre lo que habla Anna, ella escribió hace varios años un artículo para la revista Queue de ACM, titulado 'Porque escribir tu propio buscador web es difícil'. El artículo describe consideraciones para optimizar el buscador y evitar problemas como agotar recursos en las computadoras o en las redes.

El proyecto de Udacity es parte de una revolución que está ocurriendo poco a poco y que creo afectará la forma como enseñamos y aprendemos computación. Múltiples universidades lideres en computación como MIT, Stanford y Carnegie Mellon tienen proyectos similares, en donde se ofrecen cursos de calidad y al menos hasta ahora, de forma gratuita. Para todo aquel que se dedica a la enseñanza, estas plataformas están empujando a cambiar los paradigmas bajo los cuales se enseña. Y para todo aquel que es estudiante en computación, las oportunidades para aprender y la calidad de los cursos a su disposicion, han aumentado significativamente.

viernes, 23 de diciembre de 2011

La educación es una responsabilidad de todos, no sólo de un grupo

El siguiente artículo fue publicado en el periodico La Prensa, en su edición del 30 de diciembre de 2011. Está también disponible aquí.

El Ministerio de Educación (MEDUCA) anunció hace unos días atrás que Panamá no participará en la próxima ronda de las pruebas internacionales de evaluación a estudiantes de educación media, conocidas como PISA. Esta decisión me parece incorrecta ya que no permitirá evaluar el rendimiento de nuestro sistema educativo y comparar nuestros resultados con los de otros países, en medio del proceso mundial de la globalización. Esto nos obliga a participar, colaborar y competir fuera de nuestras fronteras, muchas veces con países considerados como desarrollados. Si la globalización es parte de nuestra realidad, estemos listos o no para competir, por qué mejor no realizar un diagnóstico periódico como las pruebas PISA que nos permita determinar dónde estamos frente a otros países y si nuestro esfuerzo está produciendo buenos resultados? Como dijo Lord Kelvin, famoso físico e ingeniero del siglo XIX: “si no lo puedes medir, no puedes mejorarlo”. 

Dentro de la explicación de MEDUCA sobre porque no participar en la próxima ronda de PISA, se mencionó: “…el sistema nuestro no estaba guiando al estudiante hacia esos tipos de exámenes…”. Esto puede sugerir que el Ministerio asume la completa responsabilidad de los resultados obtenidos. No es de sorprenderse entonces que hayan decidido suspender nuestra participación en la próxima ronda de los exámenes PISA. Se sienten únicos responsables de los malos resultados. Aunque es una actitud loable (y titánica) no deja de ser incorrecta. El rendimiento de nuestros estudiantes en las pruebas PISA es el producto del esfuerzo y dedicación que el gobierno, empresa privada, escuelas, maestros, padres de familia y estudiantes ponemos en la educación de estos últimos. 

Octavio Méndez Pereira dijo que “al país lo hacen los ciudadanos y no los profesionales”. Uno de los máximos propulsores de la educación que ha tenido nuestro país comprendía que la responsabilidad era demasiado grande para recaer en un sólo grupo. Aunque nadie niega el importante rol que juegan gobierno y maestros en la educación de nuestros estudiantes, se requiere del esfuerzo de otros grupos para lograr los resultados que todos queremos. Y aunque pueda sonar como sorpresa para algunos, el grupo más importante es el de los padres de familia. Es en el hogar donde se define la verdadera importancia de la educación y en donde los estudiantes adquieren la conciencia de su valor. Si esta definición comienza en las escuelas, es usualmente síntoma del mal trabajo realizado por los padres del estudiante. 

Un ejemplo del mal trabajo que realizamos los padres con nuestros estudiantes se demuestra por medio del bajo hábito por la lectura en nuestro país. ¿Cuántos libros regala o recibe usted en estas fiestas? ¿Cuántos recibe(n) su(s) hijo(s)? En un artículo reciente encontraba que en España existe 1 librería por cada 10,000 habitantes. Haciendo un conteo no científico, encontré alrededor de 65 librerías en nuestro país. Esto representa 1 librería por cada 52,000 habitantes. La Vice-Ministra de MEDUCA indicó que nuestro mal rendimiento se debió parcialmente a “…que (PISA) son pruebas no memorísticas en donde se utilizan párrafos para análisis”. La lectura aumenta la capacidad de entendimiento y rendimiento escolar de nuestros estudiantes. Si nuestros hijos no tienen el hábito de la lectura, es principalmente nuestra culpa, no del gobierno o los maestros. Y tampoco debemos sorprendernos cuando salen mal en este tipo de pruebas. Por cierto, España terminó 29 posiciones por arriba de nuestro país en los resultados PISA 2009. 

En 1913, Méndez Pereira participó en la Primera Asamblea Pedagógica de Panamá, cuyo objetivo era mejorar la enseñanza en nuestro país. Allí dijo: “Nos queda mucho por hacer en este ramo importantísimo del progreso del pueblo. Gabinetes, laboratorios, museos, asociaciones, bibliotecas modernas, nuevos métodos racionales de pedagogía…”. Imposible pensar que sólo un grupo de la sociedad pueda llevar a cabo todo esto. Se requiere que como padres de familia actuemos con responsabilidad, practicando la importancia de la educación con nuestros hijos y velando por la participación responsable y activa de los otros grupos. Pidamos al gobierno que participemos nuevamente en las pruebas de evaluación internacional como PISA. El resultado en estos exámenes depende de todos, no sólo del gobierno o nuestros maestros.

martes, 6 de septiembre de 2011

Lo que 4 Años en la Web enseñan sobre Malware

Frecuentemente escuchamos que la complejidad de los ataques contra un sistema informático van en aumento. Sin embargo, al pedir más detalles, no siempre escuchamos ejemplos concretos que demuestren el incremento en complejidad de los ataques. Recientemente, Google publicó un reporte técnico que muestra claramente como los ataques han aumentado en complejidad.

El reporte utiliza datos recolectados durante los últimos 4 años por medio de la Infraestructura 'SafeBrowsing', que genera diariamente 3 millones de alertas a más de 400 millones de usuarios que navegan por la web. Los navegadores Mozilla Firefox y Google Chrome utilizan esta infraestructura. 

En el reporte se detalla como los navegadores son utilizados extensamente por los atacantes para instalar malware en computadoras de terceros. Además, cambian constantemente los métodos que utilizan para comprometer las victimas y realizan serios esfuerzos para evadir programas antivirus y otros métodos de detección, que incluso muchos en seguridad informática utilizamos y en los cuales hasta confiamos.

He aquí varios puntos a resaltar y que se mencionan en el reporte:
  • Se analizan cuatro métodos para detectar sitios web que están publicando malware: honeypots tipo cliente y emuladores de navegadores, programas antivirus y sistemas de reputación de dominios.  En el reporte se concluye que es necesario utilizar y depender de multiples métodos ya que los atacantes intentan confundir estos métodos de detección.

    En la gráfica de abajo se muestra como se puede incrementar la detección de malware utilizando dos metodos: emuladores de navegadores (se muestra bajo el nombre 'Exploit Only' y en color blanco) y honeypots tipo clientes (bajo el nombre 'NewProcess Only' y en color negro). El uso de ambos métodos se muestra en color gris. Como puede apreciarse, se detecta un mayor numero de sitios maliciosos al utilizar ambos métodos. Aunque detectan juntos una larga proporcion de los sitios web analizados, tambien cubren casos diferentes durante otros periodos de tiempo. En otras palabras, al utilizar varios metodos de forma simultanea se disminuye la incertidumbre (sobre si un sitio es malicioso o no) y el numero de falsos negativos (casos que fueron equivocadamente clasificados como benignos).

La siguiente gráfica muestra el trabajo de emuladores de navegadores y programas antivirus. Esta gráfica puede confundir, pues muestra un gran porcentaje de los sitios detectados por medio de los programas antivirus (en color negro). Sin embargo, el reporte indica la tendencia de estos programas a generar falsos positivos (casos que fueron equivocadamente clasificados como maliciosos). Esto es conocido en la comunidad debido en parte al uso de programas para empaquetar el malware. Otra razón es que el programa antivirus debe actuar de forma más precavida ya que puede no contar con el tiempo necesario para confirmar si un archivo es malware o no. Recuérdese que en el escenario de detección experimentado por Google, es necesario determinar si el archivo es malware ANTES de que infecte una computadora por medio de un navegador. Esto hace que los programas antivirus sean sobre precavidos y declaren como malware algun archivo del que no están completamente seguros, para disminuir su tiempo de respuesta y aún cuando esto aumente el número de falsos positivos.



  • Los atacantes cambian rápidamente los vulnerabilidades utilizadas para instalar malware en las computadoras de sus victimas. Esto tiene el objetivo de evadir ser detectados. La gráfica de abajo muestra 24 vulnerabilidades, identificadas cada una por su código CVE, en el eje Y. El eje X muestra el tiempo que son utilizadas, por medio de bloques. En la mayoría de los casos, las vulnerabilidades son utilizadas por espacio que va de semanas a meses. La intensidad del color de cada bloque indica la 'popularidad' de la vulnerabilidad, en un momento determinado y comparado con otras vulnerabilidades utilizadas durante el mismo instante.

    Notese por ejemplo la vulnerabilidad CVE-2010-0249 que fue utilizada por un espacio no mayor a seis meses.


  • El tiempo entre que una nueva vulnerabilidad es ejecutada y cuando es publicada ha ido disminuyendo, dando cada vez menos tiempo a que un administrador utilice métodos manuales para proteger sus sistemas informáticos. La siguiente tabla muestra el número de días entre que se detectó una vulnerabilidad (fue ejecutada) y cuando fue publicada. En los casos en donde se muestra número de días negativos, como la vulnerabilidad CVE-2008-6442 con -242 días, significa que la vulnerabilidad primero fue detectada y luego publicada. En el caso de CVE-2008-6442, esto representa más de ocho meses.


  • Google ha puesto su infraestructura 'SafeBrowsing' a disposición de cualquiera que desee utilizarla, por medio de un API. Para mayor información, favor consultar el sitio web Google Safe Browsing API.

    Para aquellos interesados, el reporte está disponible aquí. Ademas, los autores también han publicado comentarios en su blog. El reporte es una interesante lectura, describiendo el mundo del malware y el reto al que se enfrentan quienes debemos proteger los sistemas informáticos de estos ataques.

    domingo, 30 de enero de 2011

    Como mentir con las estadisticas... nuevamente

    En 1954 vió la luz el libro How to Lie with Statistics de Darrell Huff. El libro indica varios de los más comunes errores que cometemos diariamente, algunos voluntariamente, para usar las estadísticas y así apoyar nuestras teorias u opiniones. Aunque han pasado más de seis décadas desde que fue publicado, el libro es tan vigente hoy como en aquel entonces. Recientemente me encontré con dos artículos que me hicieron pensar que el libro seguirá siendo vigente por los próximos años.

    Ejemplo 1: En el articulo Efectividad del ‘Pele Police’ es de 0.5% del diario La Prensa se confunden términos no estadísticos con fórmulas estadísticas. Este es un ejemplo de lo importante de ser constante y estricto al utilizar la estadística, para evitar confusiones.

    El Pele Police es el nombre popular que se le ha dado en Panamá al dispositivo electrónico utilizado por la policia para acceder una base de datos de personas involucradas en casos con la justicia de ese país. Cuando leí el título, inmediatamente salté luego de leer el 0.5% que aparecia allí.



    El problema del artículo parte de que utiliza un término no estadístico como efectividad con una formula utilizada para definir la eficiencia (estadística), lo que crea confusión a los lectores. El 0.5% aparece luego de dividir el número de personas detectadas por el Pele Police con casos pendientes con la justicia (8,894) entre el número de personas que fueron verificadas con el dispositivo (1,641,711). Esa cifra del 0.5% se refiere más bien a la eficiencia del proceso, en el cual se utiliza el aparato.

    El artículo pudo utilizar otros métricos para describir de una forma más clara la eficiencia del sistema.  Se pudieron considerar métricos de error como el porcentaje de falsos positivos (el aparato dijo que una persona tenía caso pendiente y esto era falso) y falsos negativos (el aparato no alertó a pesar de ser una persona con caso pendiente) que se han obtenido tras utilizar el Pele Police. Los más de 40 comentarios encontrados en la página web de la noticia son prueba de que hubo confusión estadística.

    Ejemplo 2: El artículo científico 'Feeling the Future: Experimental Evidence for Anomalous Retroactive Influences on Cognition and Affect' aparecerá próximamente en una reconocida revista de psicología. Aunque todavía no ha sido publicado, el artículo ya ha generado controversia. Varios científicos consideran que se utilizaron métodos poco estadísticos para generar y validar los resultados obtenidos en las pruebas.

    El artículo de por si trata sobre un tema controversial (y algunos dirán hasta de ficción): percepción extra sensorial. Uno de los experimentos presentados indica que cuando a los participantes se le pedía adivinar la ubicación de fotos con contenido erótico, fueron capaces de acertar en un 53% de los casos. Esto es casi similar a un comportamiento aleatorio del 50%. Sin embargo el autor del artículo, Daryl Bem de la Universidad de Cornell, utiliza este resultado como evidencia de que la percepción extra sensorial existe.

    Algunas personas indican que el Dr. Bem tiene un peculiar sentido del humor. Independientemente de que esto haya contribuido a que se haya publicado el artículo o no, le valió una invitación al programa de comedia "Colbert Report". He aquí el video:



    Mon - Thurs 11:30pm / 10:30c
    Time-Traveling Porn - Daryl Bem
    www.colbertnation.com
    Colbert Report Full EpisodesPolitical Humor & Satire BlogVideo Archive

    El artículo del Prof. Bem puede indicar problemas más importantes que las posibles fallas al utilizar o ignorar métodos estadísticos. Un ejemplo es el proceso de evaluación utilizado para aceptar el artículo (conocido como 'peer review') proveniente de una persona como Bem, quien es una figura reconocida de la psicología y profesor emerito de Cornell. Pero mantengamos el tema en la estadística para no complicar el asunto más.

    El artículo de Bem ha creado tanta controversia que el periódico NY Times ha publicado dos artículos sobre el mismo: Journal’s Paper on ESP Expected to Prompt Outrage y You Might Already Know This .... Son una buena manera de adquirir mayor información sobre el artículo sin necesidad de leer el mismo. A menos que ya puedas percibir de que se trata sin leerlo.

    domingo, 26 de septiembre de 2010

    Cómo ser un científico de datos (en seguridad informática)?

    Si usted ha vivido lo suficiente en este planeta, difícilmente no se ha enfrentado a la siguiente pregunta: qué quieres ser cuando seas grande? Esta pregunta siempre abre una caja de Pandora que en muchos casos nunca se cierra. Yo soy un ejemplo. Aunque hace varios años tome la decisión de ser un profesional en seguridad informática, sigo definiendo que significa esto ya que al menos para mí, es una tarea continua (como el cliché que muchos pregonan en seguridad: "seguridad no es una meta, es un proceso"). Así que he decidido hablar sobre un tema que impacta en gran forma la respuesta a la definición del profesional en seguridad informática, de cara al crecimiento exponencial de los datos a los que tenemos acceso hoy en día y por los próximos años.

    La propuesta es sencilla: si usted trabaja en seguridad informática, usted debe ser capaz de manejar/analizar grandes cantidades de datos para hacer apropiadamente su trabajo. Esto significa que debe contar con las herramientas (conocimientos, habilidades) necesarias para lograrlo; de eso se trata este artículo. Cuales son esas herramientas? O usando un término más elegante: cómo me convierto en un científico de datos (en seguridad informática)? Pude haber utilizado el término analista pero científico suena más importante. :)

    Científico de datos es un título que he encontrado insistentemente y cada vez con mayor frecuencia. Este profesional utiliza principalmente métodos estadísticos para analizar grandes cantidades de datos y así encontrar patrones de comportamiento, tendencias y/o respuestas, incluso en tiempo real en algunos casos. No es sorpresa entonces que los estadísticos protesten que el término científico de datos está de más, ya que ellos han estado haciendo ese mismo trabajo por siglos. Y aunque tienen razón en gran parte y el término puede ser considerado un oxímoron, es válido en el mundo actual.

    En los últimos años, el análisis de datos se ha vuelto mucho más relevante debido a la revolución computacional (poder computacional disponible en cualquier lugar, cantidad de datos recolectados y ancho de banda para transmitirlos) que hemos vivido en las últimas décadas y lo impactante que está ha sido en todas las facetas de nuestras vidas. Ya nadie se sorprende de ver televisión o hacer pagos usando el Internet, encontrar un resumen de nuestra vida en un sitio web o de enterarse que hizo el hijo de mis amigos por medio de mi teléfono celular y Facebook. Realizar muchas de nuestras actividades diarias en el ciberespacio, por medio de computadoras, también ha tenido el impacto directo e indirecto de crear grandes cantidades de metadatos, que ahora necesitan ser estudiados.

    Las empresas se han dado cuenta de la posibilidad de trabajar con grandes cantidades de datos y algunas incluso tienen años hablando del tema. IBM es un buen ejemplo de esto, observen el siguiente video:



    Microsoft Research publicó en octubre pasado el libro titulado "The Fourth Paradigm: Data-Intensive Scientific Discovery". El libro es un tributo al científico Jim Gray, quien en 2007 compartió su visión del cuarto paradigma en investigación científica, en referencia al mundo descrito arriba. El libro está disponible de forma gratuita por lo que es una excelente oportunidad para conocer las distintas oportunidades que actualmente aparecen en las áreas de ciencias naturales, medicina, infraestructura científica y comunicaciones.

    Regresando a la seguridad informática, tampoco escapamos de la necesidad de analizar grandes cantidades de datos. Solamente ver el aumento de velocidad en el enlace de conexión al Internet que poseen nuestras organizaciones para estar de acuerdo. Hace 10 años atrás nadie hablaba de conexiones de 10Mbps, algo mucho más común hoy en día. Cómo se adaptan, por ejemplo, los sistemas de detección de intrusos para analizar el tráfico a esa velocidad? En el área de investigación en seguridad informática también puedo mencionar dos proyectos que me parecen muy apropiados, ambos provenientes del Grupo de Investigaciones en Seguridad Informática de la Universidad de California, San Diego. El primero, Como Detectar URLs Maliciosos, muestra como utilizar algoritmos de lenguaje de máquinas y millones de datos analizados en tiempo real, para determinar si un enlace web (como los que encontramos en las páginas web o en los mensajes de correo electrónico) es malicioso y antes que el usuario haga utilice el enlace. El segundo proyecto lo cubrimos brevemente en otra entrada de este blog, por lo que recomendamos su lectura.

    Entonces, cuáles son las áreas que debe conocer un científico de datos, incluyendo para seguridad informática? Sin incluir las obvias (redes, sistemas distribuidos y seguridad) que dan experticia sobre las peculiaridades del problema, hay tres temas importantes:
    1. Estadística: es la base, definiendo la recolección, organización e interpretación de los datos. En otras palabras, es el oxígeno. Sin esta ciencia, no hay vida (para analizar datos).
    2. Lenguaje de Máquinas: diseño y desarrollo de algoritmos para modificar el comportamiento de las computadoras, en base al análisis de datos. Por esta última parte de la definición es que un gran número de algoritmos de este campo utilizan técnicas estadísticas. Lenguaje de máquinas es un área muy interesante y con mucho futuro.
    3. Álgebra Lineal: Trata sobre el estudio de vectores, matrices y campos vectoriales. Uno de sus beneficios es que permite el analisis en paralelo de los datos, lo que ayuda al manejar grandes cantidades de datos. Ademas la arquitectura de computadoras también ya permite este tipo de análisis/cálculos.
    Esta lista proviene de la perspectiva de un ingeniero en computación (o ciencias computacionales), aplica a cualquier tema de estudio (no sólo seguridad) y no significa que corresponde directamente a los cursos que hay que tomar. La respuesta podría ser distinta si se le pregunta a un matemático o estadístico. Además, es importante no confundir los requisitos de un analista de datos con los de un administrador de base de datos. Aunque ambas áreas tienen tareas o temas en común, la administración de base de datos posee una definición mucho más limitada y puede ser considerado como un requisito (no indispensable) del analista de datos.

    Hace unos años atrás presenté un póster sobre mi tema de investigación, en una conferencia de seguridad informática y como estudiante de ingeniería en computación. A lado mío había un estudiante del departamento de estadística, también presentando un póster. Luego de conversar, concluí que su tema tenía un matiz demasiado teórico y un poco lejos de la realidad vivida en seguridad informática. Pero su propuesta también permitía analizar más datos y más rápido. Y desde entonces me he preguntado (nuevamente) que tengo que hacer para mejorar como profesional en seguridad informática.