sábado, 28 de febrero de 2004

Cambios en la arquitectura de los PC

En los últimos meses, han aparecido diversos anuncios sobre los cambios
previstos en la arquitectura de los PC para aumentar la protección ante
las incidencias de seguridad.

Hace ya más de veinte años, IBM presentó su primer ordenador PC con un
procesador Intel 8088 a 4,77 MHz. Los ordenadores que hoy podemos
encontrar en cualquier tienda de informática son una evolución de aquél
diseño original, aunque básicamente los fundamentos continúan siendo
los mismos.

En la actualidad existe un consorcio de empresas, la Trusted Computing
Platform Alliance formado por Microsoft, IBM, HP, Intel, AMD y otros.
Su objetivo es cambiar la filosofía básica de los ordenadores PC. Así,
el PC dejaría de ser un equipo de propósito general donde es el usuario
quien decide el software a ejecutar (o dispone como mínimo de la
posibilidad teórica de decidirlo) para convertirse en una caja cerrada
donde sólo puede ejecutarse aquél software que el fabricante ha
autorizado expresamente.

Es decir, a grandes rasgos lo que pretenden estos fabricantes es
convertir un PC en el equivalente a una videoconsola de juegos como las
Playstation, Gameboy, Xbox y similares.

No obstante, en este boletín nos centraremos en dos cambios más
próximos y que seguramente veremos en los próximos meses: la
desaparición del BIOS y la incorporación de medidas de protección en
los procesadores.


Desaparición del BIOS

El BIOS (Basic Input/Output System, sistema básico de entrada/salida)
es el primer software que ejecuta el procesador en el momento de
arrancar (o reiniciar) el ordenador, antes de la carga del sistema
operativo. Su función básica es realizar un chequeo del ordenador y
ofrecer acceso a los periféricos conectados al sistema. El BIOS es uno
de los pocos componentes de la arquitectura de los PC que prácticamente
no ha variado desde el primer PC.

Como sustituto del BIOS, Intel y Microsoft proponen una especificación
denominada EFI (Extensible Firmware Interface). El objetivo es permitir
un arranque más rápido del ordenador. Adicionalmente permite realizar
actividades como la identificación de la presencia de virus
informáticos, especialmente aquellos que se instalan en el sector de
arranque o modifican los archivos de inicialización del sistema
operativo.


Mecanismos de protección en los procesadores

El siguiente cambio anunciado recientemente es la inclusión de
mecanismos en los procesadores para evitar que los desbordamientos de
buffer puedan ser utilizados para la ejecución de código. Básicamente
consiste en que los datos que se encuentran en el buffer son
considerados como de solo lectura y no puede ser ejecutado.

Los dos principales fabricantes de procesadores, Intel y AMD han
anunciado de forma independiente la inclusión de estos mecanismos. No
se trata, por descontado, de ninguna novedad. Ya hace años que los
procesadores SPARC de Sun disponen de mecanismos similares.

Esta protección ya forma parte de los procesadores Athlon 64 de AMD
actualmente disponibles. Por su parte, los futuros procesadores
Prescott de Intel (nombre en clave de la versión mejorada del Pentium 4
con extensiones de 64-bit) incluirán algunas prestaciones similares.

Sin una protección de este tipo, un programa que no realice una
comprobación adecuada de los datos introducidos por el usuario es
susceptible de sufrir un ataque de desbordamiento de buffer. En este
tipo de ataques, se envía una gran cantidad de datos, mayor de lo que
inicialmente está previsto.

Como el área de memoria inicialmente reservada no puede almacenar esta
gran cantidad de datos, éstos sobreescriben otras áreas de memoria. En
determinadas circunstancias, este código puede ser controlado por el
atacante para enviar código ejecutable que podrá ser utilizado de forma
remota.

Es importante indicar, no obstante, que para sacar provecho de esta
capacidad, el sistema operativo ha de incluir código para utilizar
estas nuevas funcionalidades. No es algo que automáticamente pueda ser
utilizado, sino que el sistema operativo que se ejecute debe
activarlas.


Xavier Caballé
xavi@hispasec.com