18Aug
La mayoría de las PC nuevas se han enviado con la versión de 64 bits de Windows, Windows 7 y 8, desde hace años. Las versiones de 64 bit de Windows no solo se trata de aprovechar la memoria adicional. También son más seguros que las versiones de 32 bits. Los sistemas operativos
de 64 bits no son inmunes al malware, pero sí tienen más funciones de seguridad. Algo de esto también se aplica a las versiones de 64 bits de otros sistemas operativos, como Linux. Los usuarios de Linux obtendrán ventajas de seguridad al cambiar a una versión de 64 bits de su distribución de Linux.
Asignación de espacio de direcciones Aleatorización
ASLR es una característica de seguridad que hace que las ubicaciones de datos de un programa se organicen aleatoriamente en la memoria. Antes de ASLR, las ubicaciones de datos de un programa en la memoria podían ser predecibles, lo que hacía que los ataques a un programa fueran mucho más fáciles. Con ASLR, un atacante tiene que adivinar la ubicación correcta en la memoria cuando intenta explotar una vulnerabilidad en un programa. Una suposición incorrecta puede provocar el bloqueo del programa, por lo que el atacante no podrá volver a intentarlo.
Esta característica de seguridad también se usa en versiones de 32 bits de Windows y otros sistemas operativos, pero es mucho más poderosa en versiones de Windows de 64 bits. Un sistema de 64 bits tiene un espacio de direcciones mucho más grande que un sistema de 32 bits, lo que hace que ASLR sea mucho más efectivo.
Conductor obligatorio que firma
La versión de 64 bits de Windows exige la firma obligatoria del controlador. Todo el código de controlador en el sistema debe tener una firma digital. Esto incluye controladores de dispositivos en modo núcleo y controladores en modo usuario, como controladores de impresora.
La firma obligatoria de controladores impide que los controladores sin firma proporcionados por malware se ejecuten en el sistema. Los autores de malware deberán, de alguna manera, eludir el proceso de firma a través de un rootkit de arranque o administrar para firmar los controladores infectados con un certificado válido robado de un desarrollador de controlador legítimo. Esto hace que sea más difícil para los controladores infectados ejecutar en el sistema. La firma del controlador
también podría aplicarse en las versiones de 32 bits de Windows, pero no es probable que continúe siendo compatible con los controladores antiguos de 32 bits que pueden no haberse firmado.
Para deshabilitar la firma del controlador durante el desarrollo en las ediciones de 64 bits de Windows, debería adjuntar un depurador del kernel o usar una opción de inicio especial que no persista en los reinicios del sistema.
Kernel Patch Protection
KPP, también conocido como PatchGuard, es una característica de seguridad que solo se encuentra en las versiones de 64 bits de Windows. PatchGuard evita que el software, incluso los controladores que se ejecutan en modo kernel, parcheen el kernel de Windows. Esto siempre ha sido incompatible, pero técnicamente es posible en versiones de 32 bits de Windows. Algunos programas antivirus de 32 bits han implementado sus medidas de protección antivirus mediante el parcheo del kernel.
PatchGuard evita que los controladores de dispositivos parcheen el kernel. Por ejemplo, PatchGuard evita que los rootkits modifiquen el kernel de Windows para incrustarse en el sistema operativo. Si se detecta un intento de parcheo del núcleo, Windows se cerrará inmediatamente con una pantalla azul o se reiniciará.
Esta protección podría implementarse en la versión de 32 bits de Windows, pero no ha sido así: es probable que continúe siendo compatible con el software heredado de 32 bits que depende de este acceso.
Protección de ejecución de datos
DEP permite que un sistema operativo marque ciertas áreas de la memoria como "no ejecutables" configurando un "bit NX". Las áreas de memoria que se supone que contienen solo datos no serán ejecutables.
Por ejemplo, en un sistema sin DEP, un atacante podría usar algún tipo de desbordamiento de búfer para escribir código en una región de la memoria de una aplicación. Este código podría ser ejecutado. Con DEP, el atacante podría escribir código en una región de la memoria de la aplicación, pero esta región se marcaría como no ejecutable y no se podría ejecutar, lo que detendría el ataque. Los sistemas operativos
de 64 bits tienen DEP basado en hardware. Si bien esto también es compatible con versiones de 32 bits de Windows si tiene una CPU moderna, la configuración predeterminada es más estricta y DEP siempre está habilitada para programas de 64 bits, mientras que está deshabilitada por defecto para programas de 32 bits por razones de compatibilidad.
El diálogo de configuración de DEP en Windows es un poco engañoso. Como dice la documentación de Microsoft, DEP siempre se usa para todos los procesos de 64 bits:
"La configuración de configuración del DEP del sistema se aplica solo a aplicaciones y procesos de 32 bits cuando se ejecuta en versiones de Windows de 32 bits o 64 bits. En las versiones de 64 bits de Windows, si el DEP forzado por hardware está disponible, siempre se aplica a los procesos de 64 bits y los espacios de memoria del kernel y no hay configuraciones de sistema para deshabilitarlo. "
WOW64
Versiones de 64 bits de Windows ejecutadasSoftware de Windows de 32 bits, pero lo hacen a través de una capa de compatibilidad conocida como WOW64( Windows de 32 bits en Windows de 64 bits).Esta capa de compatibilidad impone algunas restricciones sobre estos programas de 32 bits, lo que puede evitar que el malware de 32 bits funcione correctamente. El malware de 32 bits tampoco se podrá ejecutar en modo kernel, solo los programas de 64 bits pueden hacerlo en un sistema operativo de 64 bits, por lo que esto puede evitar que algún malware antiguo de 32 bits funcione correctamente. Por ejemplo, si tiene un CD de audio antiguo con el rootkit de Sony, no podrá instalarse en una versión de Windows de 64 bits.
Las versiones de 64 bits de Windows también dejan de ser compatibles con los viejos programas de 16 bits. Además de evitar la ejecución de antiguos virus de 16 bits, esto también obligará a las empresas a actualizar sus antiguos programas de 16 bits que podrían ser vulnerables y no estar parcheados.
Teniendo en cuenta la extensión actual de las versiones de 64 bits de Windows, es probable que el nuevo malware pueda ejecutarse en Windows de 64 bits. Sin embargo, la falta de compatibilidad puede ayudar a proteger contra el viejo malware en la naturaleza.
A menos que utilice viejos programas crujientes de 16 bits, hardware antiguo que solo ofrece controladores de 32 bits, o una computadora con una CPU bastante antigua de 32 bits, debería usar la versión de 64 bits de Windows. Si no está seguro de qué versión está utilizando pero tiene una computadora moderna con Windows 7 u 8, es probable que esté utilizando la edición de 64 bits.
Por supuesto, ninguna de estas características de seguridad es infalible, y una versión de 64 bits de Windows sigue siendo vulnerable al malware. Sin embargo, las versiones de 64 bits de Windows son definitivamente más seguras. Crédito de imagen
: William Hook en Flickr