jueves, 1 de diciembre de 2011

Estoy muy cerca..!!

Hoy me informaron desde la UNLP que el tribunal ha revisado el informe de Maestría y han sugerido una ampliación del Capítulo de Conclusiones, como única observación, lo cual no imposibilita que pueda realizar mi defensa en Diciembre (entre el 19 y el 23) o Febrero a mas tardar.
Obvio que opté por la semana del 19 al 23 de Diciembre. Tenemos asegurada la playa, vamos por la Maestría en Ingeniería de Software..!!

Caminante son tus huellas,
el camino y nada mas.
Caminante no hay camino,
se hace camino al andar...

sábado, 26 de noviembre de 2011

Libre de W7 (no se x cuanto)

Siempre fui un partidario de W, por muchas razones, pero una que siempre rescaté, es quizás la dura experiencia de las primeras versiones de DOS y antes CPM, que me llevaron a mirar con cierta molestia la onda monitor con fondo negro y comandos tipo unix de linux.

A raíz de estar haciendo un curso de Servidores Linux, tuve que recrear en mi W7, el escenario de los prácticos del curso. Para eso tuve que instalar Linux, VirtualBox, crear una VM e instalarle Linux Server. Ya con ese escenario se podían hacer los prácticos. Pero me obliga a pasar muchas horas con Linux. La verdad, está buenísimo..!!

Me recuerda los primeros tiempos con las computadoras, por el "estudio/investi-gación" que hay que hacer de pequeñas cosas, para poder completar ciertas tareas que suelen ser rutinarias en W. Lo cual me ha atrapado..!! Jajaja, quien lo iba a pensar, al final la foto con RS tiene un uso, he instalado su emac.!!

domingo, 6 de noviembre de 2011

Informe presentado

Después de varias revisiones, la primer semana de Septiembre presenté formalmente mi informe de Tesis de Maestría en la UNLP. Las últimas noticias, es que tendría mesa para Diciembre de este año. Será para Navidad..?

lunes, 23 de mayo de 2011

Madura informe de Tesis

Así como maduran las naranjas en otoño, madura mi informe de Tesis de Maestría, después de las primeras sugerencias hechas por mis directores.

Un poco de orden por aquí, un título nuevo por allá, le dan color, refuerzan el aporte hecho y dejan mas claro el método para elicitar requerimientos de seguridad utilizando LEL, Escenarios y Patrones de Seguridad.

Primero me comeré las naranjas, luego obtendré la Maestría..!!

martes, 3 de mayo de 2011

Informe de Maestría

Ayer entregué mi informe de Maestría para que lo revise mi Director de la La Plata. Hay un momento en la producción escrita en que necesitamos una visión de afuera para mejorar..!!

Hoy cayó la primera helada en casa..!! Frío, muy frío..!!

jueves, 28 de abril de 2011

Promotor de CyT en Anisacate

Mañana visitaré el IPEM 118 de Anisacate para compartir con docentes y alumnos algunas ideas sobre el método científico. En realidad he preparado una guía para elaborar un proyecto de investigación y ayudarlos a participar en la Feria de Ciencias de la Provincia de Córdoba.
Con los años de profesor, se ha hecho una práctica que muchas veces surge entre clase y clase sin ninguna intencionalidad y de a poco se consolida como una guía para llevar adelante un proyecto de ingeniería. Si se enterara don Mario.!! Jajaja...
Pongo mi palabra en palabras del Dr.Mario Bunge, me subo al Falcon y al infinito y mas allá..!!

Maestría en Ing. de Software - 3

Estoy finalizando de escribir y revisar mi informe de tesis de Maestría en Ing.de Software. 140 páginas que fueron surgiendo tímidamente, pero que con los días tomaron consistencia y orden. Hay que tener coraje frente a una hoja en blanco..!! Si bien aún quedan tres instancias 1) Revisión por parte de directores; 2) Revisión por parte de tribunal y 3) Defensa en La Plata, lo hecho me deja muy conforme. Me gusta mi informe de tesis. Me gusta la aplicación construida para modelar requerimientos con patrones de seguridad. La semana que viene lo pondré a consideración de mis directores..!!

jueves, 7 de abril de 2011

Promotor de Ciencia y Tecnología

Los caminos de la vida me han llevado a ser Promotor de Ciencia y Tecnología del Ministerio de Ciencia y Tecnología de la Provincia de Córdoba. El objetivo..? Promover la participación de los Colegios de la Provincia en la Feria de Ciencia y Tecnología. Y en este punto, nada mejor que la Real Academia Española para poner algo de luz:

Promover ( del lat. promovēre )

1. tr. Iniciar o impulsar una cosa o un proceso, procurando su logro.
2. tr. Levantar o elevar a alguien a una dignidad o empleo superior al que tenía.
3. tr. Tomar la iniciativa para la realización o el logro de algo.

Ya visité el IPEM 118 de Anisacate la semana pasada y mañana visito el IPEM 53 de Dean Funes. Pensaba viajar en colectivo, pero NO. Le compré un gato al Falcon que no tenía, un litro de Rotella 40 y allá vamos, al infinitoooo y mas allá...!!!

sábado, 12 de marzo de 2011

Métricas de la seguridad y superficie de ataque

Escribiendo sobre el tema "métricas de la seguridad del software", encuentro un concepto que si bien había escuchado, no lo había asociado a un producto de software: Superficie de ataque..!! Encontré un artículo me pareció interesante como para transcribirlo con mínimos cambios.

Es común oir hablar de sitios vulnerados a través de servicios como FTP o SMTP e inclusive POP3, NNTP y muchos otros, pero cuál es la razón por la cual este tipo de ataques no solo es frecuente sino que es posible..? Ocurre que muchas aplicaciones web son vulnerables por la extensa "superficie de ataque" que dejan expuesta.

Para entender el concepto de "superficie de ataque", podemos utilizar una analogía con esta situación: un bombardeo de la segunda guerra mundial intentando descarga sus bombas sobre un objetivo en tierra. Desde el atacante B-25 se trata de visualizar la posición del objetivo. Una época donde (aunque uds. no lo crean) no existían radares sofisticados, ni GPS, por lo cual la visibilidad del objetivo era uno de los principales factores que influían en su vulnerabilidad. Si era mas visible, era alcanzado con mayor facilidad. Un objetivo muy visible, necesitaba una protección antiaérea muy buena y en ocasiones camuflaje. Por otro lado, desde el lado del atacante existían y existen espías, que podían desde el campo de batalla, enviar información precisa sobre la superficie: forma, importancia del objetivo. En esas condiciones, hasta un objetivo bien camuflado podía ser identificado por instalaciones adyacentes, que rompían el paisaje camuflado. Por ejemplo, un aeropuerto y sus aviones, podían ser camuflados, pero si existían grandes depósitos de combustible, muchos "graneros" con forma de hangar, o demasiada actividad de personal, se podía comprometer el camuflaje y dejar al descubierto la operación.

Regresando al campo de batalla de la web y analizando la analogía, es indudable que mientras mas rutinas, páginas dinámicas y especialmente formularios tenga una aplicación, mayor será su superficie de ataque. Podríamos decir que mayor cantidad de estos elementos, tendremos mayor "superficie de ataque neta". Luego, a mayor "superficie de ataque neta", mayor vulnerabilidad.

Servicios adicionales que utiliza el programador o que han quedado instalados por defecto, también comprometen la seguridad de la aplicación, tal como ocurría con la actividad de personal y los depósitos de combustible en el caso del ejemplo del ataque aéreo. Estos generan una "superficie de ataque adicional", superflua, innecesaria, que aumenta la vulnerabilidad.

El caso mas típico es la variedad de servicios instalados en un servidor, que quedan a disposición de un B-25, cuando se procede a instalaciones por defecto de paquetes pre-configurados, por ejemplo XAMPP, algunas versiones de WAMP o LAMP entre otros. Pueden ver una tabla de comparación de los mas conocidos. El mismo resultado se logra con instalaciones de paquetes de código abierto mal configurados como gestores de contenidos. El administrador de servidores instala dichos paquetes sin entender ni percatarse de la configuración por defecto, que es básica desde el punto de vista de la seguridad, hasta puede ser inocente. No hace falta decir, por ejemplo que no tiene mucho sentido proteger el servicio MySQL si se deja el acceso a PHPMyAdmin completamente libre. Y esta es solo una de las configuraciones por defecto en las que no se repara a la hora de instalar software pre-configurado.

Un simple escaneo de puertos, muchas veces permite observar qué tipo de software pre-configurado se ha instalado en un servidor web. Puertos como el 21, 25, 110, 443 y 119 son habituales, y pueden dejar abiertas puertas de acceso a potenciales ataques. Si un atacante logra vulnerar uno solo de estos servicios, inocentemente configurados desde el punto de vista de la seguridad, tendrá el camino abierto a nuestras aplicaciones o podrá utilizar los servicios para sus fines, como enviar SPAM por el SMTP server, ubicar un sitio de phishing en nuestro servidor o colocar grandes cantidades de software ilegal para distribuirlo desde nuestro servidor FTP.

Cuando hablaba arriba de "espías", se puede hacer una analogía con lo que se conoce como "Google Hacking DataBase". No hay mejor conocedor de nuestras aplicaciones web que google. Los atacantes lo saben. Y logran que trabaje para sus objetivos mediante una serie de técnicas y consultas que han desarrollado y permiten buscar sitios con determinadas vulnerabilidades (superficies de ataque) conocidas, en base a su tipo de servidor y servicios. Es alarmante la cantidad de sitios vulnerables que puede encontrarse mediante el uso de GHDB. El equipo de Google trabaja permanentemente en la caza de este tipo de consultas para reducir los posibles perjuicios, pero ellos mismos son víctimas del enorme potencial de la herramienta y no pueden controlar su potencia por lo que permanentemente descubren nuevos trucos.

Luego de leer este artículo, le debe quedar una idea más clara del concepto "superficie de ataque" y sería bueno que pueda generar ideas para reducirla a fin de minimizar su vulnerabilidad a atacantes.

En realidad esto tiene que ver con técnicas de reducción de ataque y camuflaje. Recuerdan "Depredador" ..??

Original: Mauro Maulini R., publicado en www.e-securing.com.-

miércoles, 2 de marzo de 2011

Por qué funciona el modelo de negocio de software libre..?


El año pasado estuve en Cisco Networkers y percibí un gran alboroto entre sus ejecutivos para promocionar, y ya desde hace algunos años, una tendencia a la generación de aplicaciones sobre una infraestructura de comunicaciones que cada día mas se parece a un commoditie alimenticio. Obviamente, tienen ventaja, la conocen mejor que nadie. Me pregunto, cómo hará Cisco para enfrentar la marea de software libre, compitiendo con sus aplicaciones..? Es una cuestión de tiempo nada mas, que haya interesados en generar aplicaciones para esa infraestructura, y que compita con lo que produce Cisco. Aquí una reflexión sobre el "Modelo de Negocio de Software Libre" que rescato de la revisa Willay de la UNLP, para pensar en este tema. Que lo disfruten ..!!

Calidad, Confiabilidad, Seguridad

Una buena ingeniería de software es esencial para producir software seguro, pero no es suficiente. Esto se debe a que la mayoría de los esfuerzos persiguen metas orientadas a lograr funcionalidad, calidad o confiabilidad. Se puede argumentar que para el software, la seguridad es un aspecto esencial de la calidad y la confiabilidad, pero no siempre es considerado de este modo, incluso la mayoría de los procesos de software orientados a lograr calidad y confiabilidad omiten muchas de las actividades necesarias para lograr seguridad.

martes, 22 de febrero de 2011

BMWv2 Está andando.!!


Después de una noche de desvelo depurando unos métodos, el BMW v2.0 está andando. La nueva versión incluye la gestión separada de Security Patterns, los que son tenidos en cuenta por separado o sumados a los Escenarios de la Aplicación para deducir el conjunto de CRCs que modelarán la Aplicación. Para festejar me comí unos ñoquis caseros ..!!

jueves, 17 de febrero de 2011

Un dia buscando un error

Voy a registrar este tipo de cosas xque se suman a las obligaciones propias del trabajo y restan al momento de tener en cuenta las horas dedicadas a la Tesis. Gracias a un dedo mal puesto ( lo cual es muy fácil generar ) modifiqué el DataTable de CRCs, agregando una columna "column1" que me desplazaba el resto y hacía que los form no me mostraran lo que correspondía . Todo andaba bien, pero cuando lo mostraba, andaba mal . Cuánto tiempo me habría llevado trabajando con otro ..? Creo que cuando mucho media hora ..!!

viernes, 11 de febrero de 2011

Cómo sabemos que un software es seguro ..?

Cuando existen evidencias de que el software ha sido diseñado, implementado y configurado de manera tal que:

Las fallas y debilidades explotables han sido evitadas primero por los diseñadores y luego por los desarrolladores.

Se han reducido o eliminado la probabilidad de implantar intencionalmente fallas o debilidades explotables en la lógica del software por parte de desarrolladores mal intencionados.

Se han utilizado en el diseño, las mejores prácticas ( patrones de seguridad ) para garantizar que sea resistente, tolerante y fuerte frete a ataques.

Las interacciones entre los componentes dentro del sistema y entre entidades del sistema y entidades externas no contienen debilidades explotables evidentes.

Cuándo es seguro un software..?

Cuando cumple mínimamente con estos tres aspectos:

No puede ser forzado intencionalmente a fracasar, en el cumplimiento de sus requerimientos funcionales, y aún después de intensos esfuerzos por comprometer su funcionamiento, continúa siendo fiable y adecuado para la tarea para la que se lo construyo.

Fue diseñado, implementado y configurado para seguir funcionando correctamente ante la presencia de la mayoría de los ataques, fallas o debilidades conocidas en el software, tolerando los errores y fracasos que resulten de tales ataques, fallas o debilidades.

Fue diseñado, implementado y configurado para aislar, contener y limitar los daños ocasionados por fallas o defectos causados por los ataques que el software fue incapaz de resistir o tolerar y recuperarse lo más rápidamente posible a partir de los fracasos.

miércoles, 2 de febrero de 2011

MoNETA: A Mind Made from Memristors

Sombras de la Singularidad: En un futuro no muy lejano, seremos capaces de construir máquinas ( máquinas ..?? ) que puedan aprender, razonar, e incluso emocionarse en su camino hacia la solución de problemas, del mismo modo en que lo hacen los humanos: MoNETA: A Mind Made from Memristors.

Modificación de longitud de campo de una tabla

Me pasó por segunda vez, por eso decido anotarlo: si necesita modificar la longitud del campo de una tabla de una base de datos, hay al menos tres lugares en dónde impactar el cambio; 1) En la definición de la tabla en el servidor; 2) En el form utilizado para su gestión ( si existe ); 3) En la definición del DataTable, modificando el campo utilizando la opción de Edit DataSet with Designer..!!

martes, 1 de febrero de 2011

Actores y Terminos de LEL - 01

Estoy pensando en una solucion para que los términos de LEL puedan tener sinónimos. Una idea que se me ocurre es que los sinónimos puedan aceptarse separados por "/". Luego cuando tenga que matchear un actor, primero armo una colección con los términos separados por "/" y busco en esa colección. Si encuentro el actor, es una CRC Primaria. Para las colaboraciones puede ser algo similar, con la diferencia que al agregar el nombre del término del LEL que colabora, se agregan los sinónimos también. Es una idea que veo que intenté implementar en diciembre y por eso la comento para no perderla..!!
Bien, primero de Febrero y el BMW v2.0 luce así... Comienzo a completar el algoritmo de conformación de las colaboraciones de las CRC secundarias que se ven en la columna de la derecha..!!

miércoles, 26 de enero de 2011

Actores y términos de LEL

Si bien el BMW original permite que un término de LEL tenga un sinónimo, separado por coma o barra, a los fines de simplificar la nueva versión y mantener la consistencia del modelo, voy a implementar una versión que trabaja sin tener en cuenta los sinónimos de una entrada de LEL. De todos modos, veo que una vez construido el modelo, y agregado un sinónimo para una entrada de LEL, hay que realizar una revisión de la ocurrencia del término en el resto del modelo para mantener la consistencia. Puede ser el camino recomendado para igualar funcionalidades..!!

Un plan para terminar el informe

Bueno, hay que terminar la Maestría. Junto a mis consejeros hemos armado un cronograma para cumplir el objetivo al finalizar Abril de este año. Ya hay un índice a modo de guía y algunas páginas escritas. Tengo pendiente del año pasado finalizar la nueva versión del BMW. Tarea cero : T0 = retomar el BMW con C#. Esto me va a tomar algunos días, pero espero estar nuevamente familiarizado con el trabajo para la semana que viene. A trabajar..!!

viernes, 14 de enero de 2011

Biotecnología

De compras por librería El Ateneo, buscando un par de ejemplares para leer en vacaciones, apareció entre mis manos Jeremy Rifkin, el autor de "El fin del trabajo"/1995. Ahora con un tema que me deslumbró: "El siglo de la Biotecnología". Luego de "Revoluciones Tecnológicas y Capital Financiero" de Carlota Perez, especulaba sobre cuál era la próxima onda después de las TICs. No me quedan dudas: la próxima ola es la de la "biotecnología". Gente, a leer sobre el tema, o nos quedamos afuera de las próximas innovaciones..!!