lunes, julio 27, 2009

Yo, el UAC y el malo.

Vista Sux

Después de tiempo y tiempo sin tener control absoluto sobre mi PC (con Windows Vista),por fin he conseguido restaurar los permisos de las claves del registro y del sistema de archivos.

La cuestión es que en el trabajo se me proporcionó una máquina con Windows Vista pre-instalado, obviamente, lo primero que hice fue deshabilitar el UAC y otras cosillas insoportables.

Estuve funcionando perfectamente durante un tiempo, hasta que llegó la situación en la que tienes que instalar actualizaciones o actualizar software... what the hell? surgieron un montón de problemas de permisos sobre algunas claves del registro, eso a la hora de desinstalar cualquier software sin importancia.

Investigando investigando llegué a la conclusión de que los errores se debían a que Windows perdía los datos de las credenciales de algunas claves del registro, y cuando digo "perdía" lo digo en sentido literal. Si abrías el editor del registro y te intentabas posicionar en la clave en cuestión obtenías un bonito mensaje de error que te decía que no podías acceder a esa clave, What the hell? yo soy propietario y pertenezco al grupo de administradores... no entiendo nada.

En esos casos utilizaba psexec para poder acceder a esas claves, en la forma "psexec -s -i regedt32" y o mi sorpresa cuando en las propiedades no figuraba ni propietario ni permiso alguno, con lo que para solucionar el problema accedía a "Propiedades->Opciones avanzadas" y marcaba el check "Incluir los permisos heredables del objeto primario de este objeto".

Eso fue una solución temporal, el verdadero problema llegó al surgir la necesidad de instalar actualizaciones de seguridad críticas, ni parches para IE, ni Service Packs ni nada de nada, todos losintentos de actualización eran imposibles, el problema, los permisos.

Entonces descucrí SubInACL

SubInACL is a command-line tool that enables administrators to obtain security information about files, registry keys, and services, and transfer this information from user to user, from local or global group to group, and from domain to domain. For example, if a user has moved from one domain (DomainA) to another (DomainB), the administrator can replace DomainA\User with DomainB\User in the security information for the user's files. This gives the user access to the same files from the new domain.


Vale, situación, el problema está en el registro, así que re-asigno permisos a todas las claves raíz y subclaves para tener control total sobre todo el registro

cd /d "%programfiles%\Windows Resource Kits\Tools"

subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=Administradores=f /grant=system=f /grant=tuusuario=f /setowner=Administradores
subinacl /keyreg HKEY_CLASSES_ROOT /grant=Administradores=f /grant=system=f /grant=tuusuario=f /setowner=Administradores
subinacl /subkeyreg HKEY_CURRENT_USER /grant=Administradores=f /grant=system=f /grant=restricted=r /grant=tuusuario=f /grant=restricted=r /setowner=Administradores
subinacl /keyreg HKEY_CURRENT_USER /grant=Administradores=f /grant=system=f /grant=restricted=r /grant=tuusuario=f /grant=restricted=r /setowner=Administradores
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=Administradores=f /grant=system=f /grant=tuusuario=f /grant=everyone=r /setowner=Administradores
subinacl /keyreg HKEY_LOCAL_MACHINE /grant=Administradores=f /grant=system=f /grant=tuusuario=f /grant=everyone=r /setowner=Administradores
subinacl /subkeyreg HKEY_USERS /grant=Administradores=f /grant=system=f /grant=restricted=r /grant=tuusuario=f /grant=restricted=r /setowner=Administradores
subinacl /keyreg HKEY_USERS /grant=Administradores=f /grant=system=f /grant=restricted=r /grant=tuusuario=f /grant=restricted=r /setowner=Administradores


(OJITO: Reemplaza "tuusuario" con el nombre de usuario con el que iniciaste sesión, o con el que trabajas habitualmente)

reinicio pruebo a instalar Windows Vista SP2 y a ver que pasa, resultado: NEGATIVO, detalle del error "ACCESS DENIED" con un puto código de error genérico y sin mas detalle, adivina adivinanza. Pensé que los permisos del registro ya no debían ser el problema, así que probablemente sucediese lo mismo para el sistema de ficheros, algún fichero o directorio había perdido la información de las credenciales de usuarios y permisos, así que probé de nuevo con SubInACL

subinacl /subdirectories %windir%\*.* /grant=Administradores=f /grant=system=f

(si se quiere también se puede hacer sobre todo el disco con subinacl /subdirectories %SystemDrive% /grant=Administradores=f /grant=system=f)



Reinicio y a probar de nuevo... ¡olé! la instalación del SP2 terminó con éxito, y desde ese instante pude instalar el resto de actualizaciones y hasta el momento no he tenido ningún problema parecido a los anteriores.

La cuestión es que un usuario medio hubiese recurrido al formateo y nueva instalación para resolver al problema, pero ¿qué pasa con los descriptores de seguridad del registro y de los ficheros? ¿se pierden sin ninguna explicación si no tienes activado UAC? es patético.

A ver que pasa con W7.

Etiquetas:

sábado, julio 04, 2009

Porque el público lo pedía

Pues yo debería estar viendo la nueva de Transformers, pero en lugar de eso he dedicado mi valioso tiempo a zanjar una larga espera. Vuelve Pablo Alfredo, con una de sus conversaciones rayando en el absurdo y digna del buen soldado Švejk. Si es que ya sabía yo que tanto metrosexualismo no podía ser bueno...



(Para verla en StripGenerator, el genial servicio que nos ofrece la posibilidad a incapacitados para el arte del dibujo como yo, pincha aquí)

Etiquetas:

viernes, julio 03, 2009

Deja de llorar

Deja de llorar
tus lágrimas te van a ahogar
sálvate
y no te fallaré

Echa a andar
y si la vida te pisa
desenvaina una sonrisa
y vuélvete a levantar
(Deja de llorar, Mago de Oz)


La letra y el vídeo.

Porque hacía mucho que no poníamos música. O porque sí. Porque qué más da. Porque en estos momentos debería ser el himno de mucha gente...

Etiquetas: