sábado, agosto 25, 2007

Según Microsoft, todos los Windows son piratas

Vía slashdot me entero de los problemas que Microsoft ha tenido con los servidores de validación de Windows (WGA servers). Tal parece que si se realizaba una actualización automática o una validación de licencia estos últimos días, las instalaciones legales eran marcadas como no genuinas, perdiendo de esta forma muchas funcionalidades del sistema. En el foro de soporte WGA hay varias quejas al respecto.

Según arstechnica, hay que evitar las actualizaciones automáticas y las activaciones por el momento. Y si la activación se realiza y falla, no reiniciar ni apagar de equipo.

Igual parece que ya está medio arreglado el problema.

No quiero ser insistidor pero... con linux eso no pasa... HA HA!

Update 03/09/2007: Parece que esto sucedió porque inadvertidamente metieron código todavía verde (léase, de desarrollo, no de producción) en los servidores de activación. Ay, muchachos, muchachos...

martes, agosto 21, 2007

Operating System Vulnerability Scorecard y las conclusiones apresuradas

Desde hace unos meses Jeff Jones, el Director de Estrategia en la Microsoft Security Technology Unit, viene publicando un reporte de vulnerabilidades en su blog en Microsoft TechNet. He leído sus reportes y en general presentan a Windows como la plataforma más segura, etc... lo cual no me parece mal, al fin y al cabo todo es marketing y es válido.

No voy a desacreditar los informes que este señor publica, por lo menos no yo pues no soy ningún especialista en el tema. El problema que yo encuentro aquí radica que cualquier desprevenido puede leerlos, sacar conclusiones erradas, y salir muy contento a pregonear que el Windows que tienen en casa es más seguro que todos esos linux que escuchan en la calle. Ya he visto algunos posts en blogs en castellano del estilo "al final teníamos razón", "lo de la seguridad de linux era mentira", bla, bla...

En realidad, voy a hacerles notar algunos recaudos que deben tener en cuenta antes de leer informes de este estilo, para no sacar conclusiones apresuradas y volver a caer siempre en el mismo engaño. Para ello me hago eco de un artículo de opinión de Davey Winder publicado en DaniWeb con el que coincido bastante. Transcribo aquí parte del artículo original (énfasis agregado por mi):
"... La suposición [que los lectores pueden desprender de los informes] está basada en datos de investigación concernientes a vulnerabilidades que requieren un parche, o para ser absolutamente claro luego de revisar la declaración de metodología cómodamente publicada por Jeff en un sitio diferente, que han sido arregladas por el proveedor.

"Y cito: «Las vulnerabilidades incluidas en el análisis solo incluyen aquellas para las cuales el proveedor ha confirmado aplicabilidad, típicamente vía una advertencia de seguridad o un parche. El análisis no incluye las vulnerabilidades reveladas públicamente durante el período que aún no han sido arregladas por el proveedor». Entonces, para ser breve, [el informe incluye] las vulnerabilidades que han sido arregladas por el proveedor, pero no los 0-day exploits ni las vulnerabilidades conocidas pero no oficialmente confirmadas vía advertencia, no importa hace cuanto se conozcan: sólo figuran las que el proveedor ha arreglado."
En el artículo de DaniWeb hacen referencia a Secunia, un sitio que muchos conocemos desde hace bastante, pero que siempre es bueno volver a visitar. Cito: "Secunia publica informes independientes de vulnerabilidades listadas tanto por proveedor como por producto, y mantiene archivos históricos de ello, lo que lo hace una lectura interesante y brinda una perspectiva diferente al cuadro de seguridad [que vimos]."

De allí están tomadas los datos del artículo de opinión, y de ahí surgen los datos que publico a continuación (cabe aclarar que la información es del día 22/08/2007 y puede haber variado a la fecha).

Al día de hoy, Secunia informa que Windows XP Pro, presenta 188 advertencias, de las cuales 29 aún no han sido arregladas -un 15% del total- . En el caso de Windows Server 2003 Standard Edition, 8 vulnerabilidades de 135 aún no tienen parche -un 8% del total-.

Para comparar Red Hat Enterprise Linux 4 presenta en Secunia 314 vulnerabilidades todas ellas arregladas. Debian 4.0 Etch por su parte, presenta 68 advertencias, también todas arregladas.

Vuelvo al artículo de opinión:
"... Esto me sugeriría [dice Davey] que Red Hat es realmente más seguro que Windows, si queremos seguir el consejo de no simplificar la seguridad al punto de la inutilidad, pues la capacidad y voluntad de un proveedor para arreglar rápidamente las fallas encontradas debe tomarse en cuenta en cualquier observación seria al argumento de seguridad. Efectivamente, los tiempos de respuesta del proveedor son la clave cuando todos acuerdan que es prácticamente imposible escribir código 100% seguro. La métrica real de seguridad es cuán rápido llegan los parches al usuario: ignorar las vulnerabilidades que aún no han sido arregladas reduce el informe original a no ser más que FUD.

"... si uno se toma el tiempo de leer entre líneas y hurgar un poco más profundamente en lo que se está informando, puede descubrir que lo que realmente dice [el informe] es que los proveedores de Linux son más eficientes que Microsoft en lo que respecta a anunciar fallas y arreglarlas. "
En concordancia al artículo, es innegable que todos los sistemas operativos tienen fallos (hasta OpenBSD tuvo los suyos), pero creo que no sólo importa cuántos tengan, sino también qué gravedad tienen y cuanto tarda el proveedor en arreglarlos.

En fin, lean dos veces lo que encuentran en Internet, que hasta este post tiene sus errores.

jueves, agosto 16, 2007

La molesta marca de agua del Starter Edition

En la informática siempre un poco de azar oculto en todas partes. A mí, en la lotería de equipos que se venden actualmente en el mercado me tocó uno con Windows Vista Starter Edition. No tardé mucho en instalarle Debian Etch, con lo cual trabajo y anda más que bien, pero dejé el sistema con arranque dual, al fin y al cabo la licencia ya está paga.

Para el que no lo conoce, el Starter Edition esta es una más de las distintas versiones de Windows Vista, precísamente la más recortada en funcionalidades, y sólo disponible en países en vías de desarrollo (como el nuestro). En El Francotirador le dicen "El Windows de los pobres" (y con justa razón).

Como sólo lo uso para probar los sitios con el IE7 (hasta hoy, que instalé ies4linux en el Debian) y jugar algún que otro juego sencillo, las limitaciones de funcionalidad no me han molestado mucho. Anda bastante rápido, salvo en la copia y eliminación de archivos (donde realmente no se sabe bien qué diablos está haciendo el sistema operativo, si eliminando los archivos con martillo o calculando los días que faltan para el próximo eclipse de sol). Hay una cosa que sí me molesta bastante, y es la marca de agua con la bandera o "watermark" que aparece abajo a la derecha de la pantalla. Sale siempre sobre todas las ventanas y no encontré forma de eliminarla.

Recurrí a Google para ver si alguien tenía una solución, pero nada apareció; en realidad, salieron un montón de resultados inservibles. Así que no me quedó otra que hacerlo a mano.

Finalmente terminé con este pequeño y sencillo código que he dado en llamar hideflag y con el cual es posible ocultar la marca de agua así nos queda la pantalla limpia (por ejemplo, para jugar al TypusPocus sin molestias) y sin modificar archivos raros ni nada de eso. Símplemente ejecuten hideflag.exe y desaparecerá la marca de agua. Ejecutándolo nuevamente volverá a aparecer. Lo ideal es ponerlo en el inicio de Windows asi ya la pantalla queda limpia desde el arranque.

Descargar: hideflag.zip (resubido dic-12)

Dado que han surgido diversas versiones de este programa en Internet, les dejo aquí las firmas del archivo original para que puedan validarlo si lo han bajado de otro lado:
MD5: a4111e0e6cc3db8a24e93d92c21b04cd
SHA1: a1e2278fcba475f94474795fafe6a2d67a38ce32

En el paquete les dejo el ejecutable y el código fuente, que está en FreePascal porque no tenía ganas de hacerlo en C. Si alguno tiene tiempo el port es bienvenido, lo mismo que las sugerencias.

Compiz Fusion en Debian Lenny con Nvidia o Intel

Actualización 06/10/2007: Chantanito nos ha acercado un excelente dato al apuntarnos con su comentario que los repositorios shame han sido separados por release. Yo no me había percatado de ello pues ya tengo compiz instalado ;-) En el repository of shame tienen toda la data de cual es la línea que deben agregar al sources.list. Para los impacientes que tenemos Debian Lenny 32 bits, es la siguiente:

deb http://download.tuxfamily.org/shames/debian-lenny/desktopfx/unstable/ ./
Mil gracias!!

Como ustedes saben, por junio de este año los proyectos de escritorios 3d Beryl y Compiz se unieron para dar nacimiento a Compiz Fusion, del cual pueden ver algunos videos, como es usual, en youtube.

Esta semana han dado a conocer la primer release de desarrollo, Compiz Fusion 0.5.2, que he probado en dos equipos y la verdad anda sin problemas incluso con una performance un poco mejor (al menos a mi juicio) que los proyectos originales. Algunas de las novedades que se incorporaron, además de los plugins de Compiz y Beryl originales, son:
  • Efectos de reflexión en el cubo
  • Un plugin de exposición de escritorios
  • Un nuevo selector de aplicaciones
  • Un completo gestor de configuración
Para los impacientes, aquí está la receta para tenerlo andando en Debian Lenny. La publico ahora (un poco tarde, por cierto) pues el repositorio de paquetes está más estable que hace unos días.

1. Instalación de los drivers de video

Para aquellos que poseen tarjetas de video nVidia, deben tener instalado y configurado el driver propietario, de lo cual ya hemos hablado en un post anterior. Con algunas modificaciones, las instrucciones son las mismas.

Por las dudas, si tenemos una placa de video nVidia, en el archivo /etc/X11/xorg.conf deberíamos tener:
...
Section "Device"
Identifier "Tarjeta de vídeo genérica"
Driver "nvidia"
Option "AllowGLXWithComposite" "true"
Option "RenderAccel" "true"
EndSection
...
Section "Screen"
...
Option "AddARGBGLXVisuals" "True"
...
EndSection
...
Section "Extensions"
Option "Composite" "Enable"
EndSection
...
Para el caso de una placa de video Intel 915/945/9xx:
...
Section "Device"
...
Option "XAANoOffscreenPixmaps" "True"
...
EndSection
...
Section "Extensions"
Option "Composite" "Enable"
EndSection
...
2. Eliminar los paquetes antiguos de Beryl y Compiz

He tenido algunas dificultades al intentar actualizar los paquetes desde versiones antiguas, por lo que recomiendo remover y purgar todos los paquetes relacionados con Compiz y Beryl que estén instalados en el equipo.

# aptitude purge beryl... compiz... heliodor... emerald... etc, etc...

3. Agregar el repositorio shame

Esta buen alma caritativa se ha encargado de empaquetar Compiz Fusion para Debian, así que aprovecho para agradecer su laburo.

Agregar, entonces, las líneas siguientes a /etc/apt/sources.list

# Compiz Fusion development (shame)
deb http://download.tuxfamily.org/shames/debian-sid/desktopfx/unstable/ ./

Update 06/09/2007

Agrego dos repos más por si tienen problemas con el anterior. El siguiente es también de shame, pero contiene una versión más antigua y un poco más estable de compiz:

deb http://download.tuxfamily.org/shames/debian-sid/desktopfx/snapshot/ ./

Este último lo encontré de casualidad y proviene del O.S. Revolution Unnoficial Debian Repository:

deb http://download.tuxfamily.org/osrdebian unstable compiz-fusion-git

4. Agregar las llaves del repositorio

# wget http://download.tuxfamily.org/shames/A42A6CF5.gpg -O- | apt-key add -

5. Instalar los paquetes de Compiz Fusion

Dependiendo del entorno escritorio en el cual deseamos ver los efectos gráficos, es conveniente instalar...

# aptitude install compiz-fusion-kde (para KDE)
# aptitude install compiz-fusion-gnome (para Gnome)
# aptitude install compiz-gnome emerald emerald-themes (para XFCE)
# aptitude install compiz-fusion-all (todos los paquetes para cualquier entorno)

6. Iniciar Compiz Fusion

Como usuario normal, una vez iniciada la sesión en el escritorio de preferencia, ejecutar

$ fusion-icon

o bien

$ fusion-manager

Como he tenido algunos inconvenientes con gtk-window-decorator, les recomiendo iniciar con el decorador de ventanas emerald. Para ello en vez de ejecutar fusion-icon, ejecuten compiz y luego inicien emerald, de la siguiente forma:

$ compiz &
$ emerald &

Eso debería andar; o por lo menos en mi modesta pc con 256 de RAM y 256 de video anda muy lindo.
Bien, por ahora es todo, los dejo para que disfruten de los atractivos efectos y saquen sus propias conclusiones.

sábado, agosto 11, 2007

De cómo Linus escribió el fsck y comenzó a usar su propio sistema operativo

Un fragmento del artículo en KernelTrap sobre la release 0.10 [2] de Linux:
"... él [Linus] encontró la inspiración para escribir una utilidad fsck para Linux (originalmente sólo capaz de detectar problemas en el sistema de archivos, pero no arreglarlos) cuando accidentalmente escribió sobre su partición minix, «Escribí sobre mi partición minix ayer (no se les ocurra preguntar porqué - algunas cosas mejor olvidarlas :-), y si bien tuve minix-386 levantado y corriendo de nuevo, está algo flojo (sin bash, sin make). Parece que tendré que escribir fdisk/mkfs/fsck para linux así ya no necesitaría tener minix. Salió algo bueno de eso.» En una entrevista del año 2005 [que pueden ver en el cache de Google] Linus ofreció una explicación completa de lo que le pasó a su partición Minix:
"En los inicios cuando estaba haciendo Linux, una de las cosas que hacía era leer las news en Internet desde la computadora de la universidad. Yo discaba a la universidad y generalmente daba ocupado, así que programé un discador automático. [Ese programa] discaría y, si obtenía señal de ocupado, esperaría un minuto y luego discaría nuevamente. Aún no estaba utilizando Linux constantemente, pero estaba usándolo de todas formas. Por error, hice un discado automático a mi disco rígido y básicamente sobrescribí el sistema operativo con las cadenas de discado. Así que tuve que decidir si reinstalaba el sistema operativo que estaba utilizando, o comenzaba a utilizar Linux constantemente. Dije OK, es una señal, empezaré a usar Linux todo el tiempo."
¿habrá errado entre /dev/tty1 y /dev/hd1? geeeezzz.. nos pasa todo el tiempo...
ATZ
ATQ0 V1 E1 S0=0 &C1 &D2
ATDT06109...

jueves, agosto 09, 2007

PHPTAL: un lenguaje de plantillas para PHP basado en ZPT

Estos días estuve trabajando bastante en Python, Zope y Plone, un conjunto de tecnologías que me parecen atractivas y muy versátiles, y en el transcurso del aprendizaje natural encontré las Zope Page Templates (ZPT), que es un lenguaje para creación de plantillas diferente a los normales, pues en vez de crear tags HTML nuevas, añade atributos a las etiquetas existentes.

Según el Zope Book, "el objetivo de las Page Templates es permitir a los diseñadores y programadores trabajar en conjunto fácilmente. Un diseñador puede utilizar un editor HTML visual (el clásico WYSIWYG como Dreamweaver, NVU o Front*cofff*Page) para crear una plantilla, que luego el programador puede editar para hacerla parte de una aplicación. Si es necesario, el diseñador puede volver a cargar la plantilla en su editor visual y hacer cambios en la estructura y apariencia. Tomando ciertos recaudos, el trabajo de edición se puede realizar sin dificultades y no interfiere con la aplicación.

"Las Page Templates apuntan a lograr este objetivo adoptando tres principios:

  1. Permitir la creación y modificación de las páginas con herramientas visuales.
  2. Lo que ve es muy similar a lo que obtiene (WYSIVSTWYG).
  3. Mantiene el código fuera de las plantillas, salvo la lógica estructural.

Una Page Template es como un modelo de la página que generará. En particular *es HTML válido* (e incluso *XHTML válido*!)

Redondeando, quiere decir que nuestro editor visual no hará desastres con la plantilla, como suele ocurrir con otros lenguajes de plantillas, ya que no hay etiquetas extrañas sino atributos en nuevos las etiquetas actuales (y sólo dos namespaces opcionales).

Como me pareció muy cómodo me puse a buscar si en PHP había algo similar, y efectivamente unos buenos muchachos han portado esta idea creando el PHP Template Attribute Language (PHPTAL) que es una implementación de ZPT para PHP . En resúmen, es una librería de generación de plantillas XML/XHTML para PHP.

PHPTAL actualmente va por la versión 1.1.8 y se distribuye como standalone o empaquetado para PEAR. En la introducción hay un ejemplo muy ilustrativo de como funciona la herramienta.

Algunas ventajas:
  • impone mayor separación entre lógica y presentación,
  • advierte si se olvidó de cerrar alguna etiqueta HTML o si la página está malformada,
  • ya no es necesario utilizar htmlentities,
  • las plantillas quedan limpias y legibles,
  • permite insertar texto de ejemplo para previsualizar la plantilla sin necesidad de ejecutarla con PHP,
  • se integra bastante bien con editores visuales,
  • permite la abstracción de datos con un sistema similar a xpath.

Algunas desventajas:

  • es una dependencia de la aplicación,
  • hay que aprenderse los atributos,
  • hay que producir XHTML límpio (aunque esto no sería una desventaja).
Para mayor información les dejo el enlace a la guía de referencia de PHPTAL.

Minivacaciones en Dudignac

Bien, este último tiempo no he publicado nada ya que estuve de minivacaciones en Dudignac, mi querido pueblo natal. En general viajo seguido para visitar a la familia y amigos, y para respirar un poco de aire fresco de campo y despejarme del ambiente y el trajín de la ciudad (aunque Luján siempre es más tranquilo que Capital Federal).

Para quienes no lo conocen (lo que es, casi todo el mundo), Dudignac es una pequeña localidad de unos 2.500 hab. situada a 11 km. de la Ruta Provincial Nº 65, en el partido de Nueve de Julio, provincia de Buenos Aires, Argentina cuya economía se basa casi totalmente en la agricultura y ganadería.

La localidad data del año 1911 y su nombre es en honor a Don Exequiel Dudignac, dueño original de las tierras de la Estancia "La Avanzada", quien donó parte de las mismas para la construcción de las plazas y edificios públicos.

En este instante no tengo fotos pero postear algunas pronto así se dan idea de lo lindo que es el pueblo. Igual desde allí mucho no puedo postear, no hay banda ancha cableada (ni ADSL ni cablemodem), así que solo me queda revisar correo una vez cada tanto por dial-up. ¿Actualizar el Debian de casa? por red ni de casualidad, por eso siempre llevo los paquetes en DVD.

Por ahora les dejo la vista en Google Maps (lamentablemente en baja resolución) y algunos datos geográficos más, para que lo vayan conociendo y no me miren raro cuando les pronuncio el nombre Dudignac. Ah! y lo van a escuchar como "dudignac" con ge y ene, o con eñe como "dudiñac" o también "dudiñá"; aunque los coterráneos le decimos, más familiarmente, El Dudi.

ACTUALIZACIÓN 2008: Si hacen clic en la vista en Google Maps, muy probablemente vean la etiqueta "Villa Eugenio Necochea" sobre la imagen de Dudignac. Esto se debe a un enorme error en la capa de etiquetas de google maps, donde se han intercambiado los nombres de Dudignac, 9 de Julio, y varias localidades más, por otros pueblos y ciudades de Argentina. Esta curiosa (y grave) falla está detallada en el post Un guía para Google Maps que escribí en septiembre de 2008. Por suerte, esto ya está arreglado.

ACTUALIZACIÓN 2009: En este post de hace dos años prometí poner fotos de la localidad. Promesa incumplida, lamentablemente, pues hasta recientemente no pude disponer de una cámara que saque fotografías de calidad (buena iluminación y mínimo 7 mp). A modo de disculpa, si pueden aceptarlo, dejo las excelentes fotos de Dudignac que unos dedicados coterráneos han publicado en el grupo de Facebook al efecto. Créditos a Sonia, Mariano y demás gente.