¿Qué es una clave de registro CLSID?
El CLSID o identificador de clase es una cadena de símbolos alfanuméricos (tanto números como caracteres alfabéticos) que se utilizan para representar una instancia específica de un modelo de objetos componentes o un programa basado en COM. Permite que los sistemas operativos y el software, particularmente para Windows, detecten y accedan a componentes de software sin identificarlos por sus nombres. Aunque Microsoft ha eliminado el uso de COM a favor de la infraestructura .NET, COM sigue en uso como un componente importante para muchos programas de uso común y no tiene planes de ser descontinuado.
Los ejemplos de objetos que usan COM y un CLSID correspondiente incluyen ActiveX, el directorio Mi PC y el menú Inicio de Windows. Un CLSID típico en su Registro de Windows puede verse así:
{48E7CAAB-B918-4E58-A94D-505519C795DC}
Su encuentro más probable con el CLSID es cuando un sitio web le pide que actualice ActiveX u otro programa. Su navegador detecta la versión de su software al verificar su CLSID y transmite esta información al sitio web sin comprometer su computadora.
Sin embargo, las actualizaciones de medios falsos a menudo se usan para distribuir software malicioso y otras amenazas para PC, y debe evitar descargar actualizaciones de sitios web en los que no confía implícitamente.
Cuando una buena entrada de CLSID sale mal
Si el CLSID está dañado, su PC puede experimentar problemas relacionados con el programa al que está vinculado el CLSID; un problema común es un CLSID dañado que hace que el software no pueda verificar su propia versión y actualizarse. Como una solución fácil de implementar, desinstalar y reinstalar su software generalmente soluciona este problema.
El problema más común relacionado con una entrada CLSID del Registro es que un programa no elimina su CLSID del Registro cuando se desinstala el resto del programa. Aunque esta es una mala práctica de programación que satura el Registro de la PC con entradas de texto sin sentido, es poco probable que una entrada CLSID no utilizada dañe su computadora. Sin embargo, algunos limpiadores del registro y otros programas de mantenimiento del sistema se especializan en eliminar esta "basura" basada en CLSID. En circunstancias muy extremas, como con una computadora con pocos recursos del sistema, un Registro con demasiadas entradas CLSID sin usar puede causar problemas de rendimiento.
Si está interesado en corregir manualmente las entradas del Registro CLSID, debe tener mucho cuidado. Los cambios en su Registro pueden dañar su sistema operativo de muchas maneras, sobre todo al hacer que no reconozca los componentes y programas críticos. Independientemente de si está interesado o no en realizar cambios en las entradas CLSID de su computadora, se recomienda en todos los casos tener una copia de seguridad del Registro de Windows a través de un punto de restauración del sistema u otro método.
El CLSID que desaparece
Aunque el CLSID normalmente es una entrada de texto permanente en su Registro, al menos hasta que desinstale el programa al que está vinculado, las carpetas y los archivos temporales también pueden mostrar entradas de CLSID en sus nombres. Esto a menudo es causado por instaladores de programas que descomprimen archivos para usarlos para la instalación antes de eliminarlos. La mayoría de estos archivos y carpetas deberían eliminarse automáticamente una vez que se haya completado la instalación. En casos de codificación deficiente o instalación interrumpida, es posible que deba eliminar estos objetos usted mismo, aunque no deberían dañar su computadora.
No todos los programas que usan CLSID están obligados a escribir sus entradas CLSID en su Registro de Windows. Los componentes COM RegFree o Registration-Free son capaces de almacenar sus entradas CLSID en sus propios archivos EXE o en archivos XML separados. Esto tiene ciertas ventajas, como permitir que un programa se instale varias veces como varias versiones diferentes. Sin embargo, la compatibilidad con RegFree COM es más limitada y, a veces (en los casos de programas de todo el sistema como DirectX), no está disponible en absoluto.
La diferencia entre el COM de CLSID y el resto del universo COM
La interfaz COM con el CLSID es un modelo de objetos componentes, un método de interfaz que utiliza la filosofía de programación orientada a objetos (u OOP). No tiene una relación directa con el sufijo de dominio web .COM, que significa un dominio 'comercial' de nivel superior.
Del mismo modo, los componentes COM de CLSID no están relacionados con los archivos .COM, que es un subtipo de archivo ejecutable o EXE. Aunque algunos componentes de Windows y otros programas usan .COM, este formato de archivo obsoleto requiere una emulación de MS-DOS que no está incluida (de forma predeterminada) en los sistemas operativos Windows de 64 bits.
El lugar de CLSID en la industria del malware
Las entradas CLSID se pueden usar para ejecutar programas dañinos, así como también programas seguros. Los rootkits, los troyanos, los objetos de ayuda del navegador maliciosos y otros tipos de malware pueden hacer uso del sistema CLSID para iniciarse automáticamente o cuando se activan ciertas condiciones. La mayoría de los programas antimalware competentes detectarán y eliminarán las entradas CLSID maliciosas junto con el malware asociado con ellas. Sin embargo, al igual que las entradas CLSID normales, las entradas de malware CLSID no eliminadas para programas que se han eliminado no pueden causar daños a su computadora.
También se sabe que los programas de malware utilizan entradas CLSID para realizar llamadas a otros programas (como Internet Explorer). Estos programas pueden o no mostrar indicaciones visibles de estar abiertos, aunque, en la mayoría de los casos, debería poder detectar el proceso de memoria del programa abierto a través del Administrador de tareas y utilidades similares. Dichos ataques se pueden usar para realizar varios ataques en línea sin el conocimiento del usuario de la PC. Si bien el conocimiento de CLSID no es necesario para el uso casual de la PC, un conocimiento práctico de sus capacidades y limitaciones puede ayudar a resolver errores relacionados con el software y el Registro con un mínimo de frustración.