Archivo

Archivo para la categoría ‘web’

PyCon Argentina 2009, Cappuccino y LLVM

Lunes, 14 de septiembre de 2009 Sin comentarios

Me gustaría hacer un post bien largo acerca de todo lo que me dejó personalmente la última PyCon Argentina, pero lamentablemente estoy complicado con el tiempo, ya que no sólo quiero leer y escribir acerca de todo el “bombardeo” de información que te deja cada charla, sino que también quisiera investigar un poco cada cosa y dejar acá algo más que solamente los links. Pero bueno, vamos a hacer el intento de resaltar lo primero que me viene a la mente.

Cappuccino y la Web que se vienecappuccino-icon

Uno de los muy interesantes punteros que me dejó la conferencia tiene que ver con las keynotes[1][2], y la existencia por un lado de la aplicación web 280Slides y por el otro del framework en el cual se basa, Cappuccino. Sugiero pegarle una mirada, más que nada a las demos (para los faltos de tiempo como yo); me parece que es sencillamente genial, hay mucha influencia del OS X acá, y se nota. Es una aplicación donde la línea entre lo desktop y web se esfuma, literal y definitivamente. Lástima que hay que aprender oootro lenguaje nuevo, Objective-J.

Y esto parece que no se va a detener, tal como dijo Jacob. Más si nos enteramos que hay desarrollos bastante avanzados para integrar contextos canvas 3D en los navegadores, y leemos algunas características futuras de HTML5. En resumen, él plantea que toda la toolchain web actualmente apesta, incluso Python, y propone algunas líneas de solución para que Python sea el lenguaje web del 2020, cuando HTML 5 sea el estándar y el navegador web sea el nuevo Sistema Operativo. Ya había escrito algo de esto.

Código más rápido, código más optimizado: LLVMDragonSmall

De la segunda plenaria, me quedó claro que al fin surgió un contendiente de relativa importancia al venerable GCC, y se llama LLVM. Acá tengo más todavía para investigar, pero básicamente el branch performante de Python llamado Unladen Swallow implementará (entre varias cosas más) un JIT para CPython implementado por medio de LLVM; algo así como V8 o TraceMonkey son para Javascript. Una de las cosas en las que Collin afirmó varias veces fue que “no pretendemos ser originales, queremos robar ideas de cualquier paper, de donde sea, con tal de hacer Python más rápido” :-) . Lo malo es que al parecer, y si bien era una de las ideas iniciales del proyecto, eliminar el GIL no será tan fácil :-( (de paso y relacionado, ¡excelente charla la de Multiprocesamiento en Python!).

LLVM está haciendo muchos méritos para ser considerado, como por ejemplo que Apple está apostando muy fuertemente por él, incluso tiene la idea de reemplazarlo definitivamente dejando atrás a GCC. En Snow Leopard (OS X 10.6), ya mismo se ofrece una interfaz compatible con GCC para LLVM además de toda la toolchain para compilar software desde los fuentes con él. FreeBSD también está trabajando para migrar a él. Y si bien todavía le falta bastante camino por recorrer (tiene escaso soporte para C++, o que no compila el kernel de Linux, por ejemplo), ya se pueden ver algunas muestras de su potencial, y personalmente encontré varios comentarios de que es mucho más sencillo contribuir y entender el código del proyecto comparado con GCC.

En fin, repetí en ambos párrafos, en asuntos totalmente diferentes, la palabra toolchain, que significa literalmente “cadena de herramientas”, y está relacionado generalmente al uso de varias herramientas como un conjunto en las diferentes etapas de la creación de aplicaciones. Evidentemente, tanto en el mundo de las aplicaciones web, como en el de los lenguajes de programación, se está yendo hacia la optimización de los recursos que tenemos. ¡Buenísimo! :-D

[1] Snakes on the Web – Jacob Kaplan-Moss
[2] Unladen Swallow – Collin Winter

¡Gracias a PyAr por una excelente PyCon!
Saludos

Categories: codear, python, ubuntu-ar, web Tags:

Ojo con Facebook…

Lunes, 8 de junio de 2009 1 comentario

Luego de ver este post hace unos días, lo agendé para probarlo cuando tuviera tiempo. Anoche lo hice, y funciona a la perfección: en resumen, ¡puedo ver las fotos de cualquiera en Facebook haciendo un test de una aplicación! (y obviamente, eso incluye a los que no tengo como amigos).

No puedo agregar mucho más a lo que Manuel Benet escribe, analiza y explica en su post, salvo que tengan mucho cuidado con las fotos e información que suben.

En fin, en caso de usarlo, subir sólo lo básico, muy impersonal y nada más; nunca se sabe qué vulnerabilidades se descubren y permiten manipular la información de todos.

Saludos,
Marcelo

Categories: codear, ubuntu-ar, web Tags:

Novedades en Firefox 3.1 beta (será 3.5)

Jueves, 12 de marzo de 2009 Sin comentarios

Si bien la mayoría de los sitios de noticias tiene un enlace a esta página, detallando las novedades más importantes y generales en la aplicación, me gustaría destacar algunas de las novedades “bajo el capó” del próximo Firefox 3.5, que se describen en esta otra página (“Firefox para desarrolladores web”).

Veamos, las que me parecen más interesantes son:

Bueno, son bastantes cambios, esto sumado a TraceMonkey seguramente va a hacer que Firefox esté preparado para las aplicaciones web de acá a unos años; aunque pensándolo bien, yo iría tachando la palabra “web” de la frase anterior, dejando “aplicaciones” a secas…

¡Saludos!
Marcelo

Categories: codear, python, ubuntu-ar, web Tags:

Xplico, un decodificador de tráfico de Red

Miércoles, 31 de diciembre de 2008 2 comentarios

Gracias al rincón de Laramies me sigo enterando de cosas novedosas acerca de herramientas y noticias sobre seguridad informática; esta vez de la existencia de Xplico, un software para analizar y disecar [1] capturas de red en formato PCap (el más común, utilizado por herramientas como Wireshark o Tcpdump, por ejemplo).

Su objetivo es detectar el protocolo de aplicación (no basado en el número puerto, sino que lo hace interpretándolo realmente), y extraer la información relevante (el stream de datos), mostrarla y darle a uno la posibilidad de guardarla aparte para abrirla con un software que pueda reproducir dicho formato. Por ejemplo, puede detectar el formato SIP (utilizado comúnmente en llamadas telefónicas de VoIP) en una serie de paquetes capturados y guardarlo aparte para poder escuchar la llamada telefónica. :-)

De todas maneras, su página de estado del proyecto nos dice que le falta soporte de varios protocolos más (por ahora soporta decentemente HTTP, SMTP, IMAP, POP, FTP, IPP, PJL y SIP, entre otros) pero insisto que es un proyecto muy interesante, con muchos usos y muy útiles. Además, sería un lindo como add-on para Wireshark, IMHO.

Vean las capturas de pantalla.

Saludos
Marcelo
[1]: Es “disecar”, no “disectar”; es la primera acepción de esta palabra. La segunda acepción es la conocida. :-)

Categories: codear, linux, sysadmin, ubuntu-ar, web Tags:

Dan Kaminsky en BlackHat 2008 – Japón

Sábado, 27 de diciembre de 2008 Sin comentarios

Esta presentación es la única que me llamó la atención repasando el archivo del Black Hat de Octubre de este año en Japón. El ya conocido Dan Kaminsky fue el keynote del evento, explicando no sólo (nuevamente) la vulnerabilidad de DNS descubierta por él este año, sino también qué se viene en general en materia de (in)seguridad informática.


Son un montón de diapositivas (101!), unas cuantas las pasé por alto, pero son útiles; a modo de resumen, enumero los “highlights“:

  • Vulnerabilidad DNS: Análisis exhaustivo del problema, demostración del ataque. Es útil porque empieza desde el principio, comenta la impresionante (awesome) reacción de las “software factories” de DNS con un lindo grafiquito, y tiene interesantes conclusiones para los desarrolladores de software en general (ver los Takeaway a lo largo de toda la presentación). También explica porqué atacar DNS: ¡es el MiTM perfecto!.
  • Lo que viene: Bienvenidos a la tercera era del hacking. Ya se explotaron vulnerabilidades en los servidores y en los navegadores. Lo que sigue es aprovecharse del resto del software, que está íntimamente ligado a la red también; a modo de ejemplo cita esta vulnerabilidad del Sidebar de Windows Vista. Incluye a los juegos en red, y a las formas “seguras” de actualizar desde el software que se usa a diario.
  • Cuidado con SSL: Destaca muchos problemas a futuro, tanto técnicos como del usuario: falta de escalabilidad y de difusión, problemas con los virtual hosts, los usuarios no prestan atención a los mensajes de advertencia, el uso de MD5 para su firma, etc. “No es la panacea que pareciera ser”.
  • Autenticación – el Bug principal de 2008: elabora una lista las últimas vulnerabilidades importantes conocidas, todas tienen que ver con este punto crucial en la interacción de sistemas.
  • En resumen, la infraestructura y servicios (¡todos ellos!) de Internet y las Intranets dependen del servicio de DNS. Hay que mejorar la infraestructura; esta vez tuvimos suerte, la próxima vez puede que no sea tan “suave” el problema. DNS no debería haber sido capaz de provocar este daño: entonces, ¿Por qué lo fue?

Además, mientras tuve algo de tiempo, también estuve mirando:

The Internet is Broken: Beyond Document.Cookie – Extreme Client Side Exploitation. Presenta una serie de vulnerabilidades en varios componentes de software comunes estos días, provocado por el abuso de confianza en el nombre de dominio (está claramente relacionado con lo que decía Kaminsky, pero bien práctico); en Java, los servidores Web locales de ciertas aplicaciones, etc.

Disclosing Secret Algorithms from Hardware: Confieso que no sé mucho de electrónica, pero así y todo entiendo que esta charla estuvo interesantísima: ¡los tipos hacen ingeniería reversa de algoritmos en hardware! Muestran cómo se hace, en forma muy gráfica, y explican qué herramientas utilizan. Me asombra que digan “acá hay un NAND, así y así…” Y ya que están, agarran un chip RFID de MiFare a modo de (mal) ejemplo para determinar el algoritmo de encriptación (cerrado), como ya lo hicieron anteriormente (aunque la ley impidió la presentación en sí). Nobleza obliga, debo agregar que la compañía relativiza esta cuestión y hace pública su posición al respecto.

Bueno, espero que tengan un feliz año!

Saludos
Marcelo

Categories: codear, linux, python, sysadmin, ubuntu-ar, web Tags: