SlideShare una empresa de Scribd logo
Registro de Windows
Adrián Lois
ASIR - IMSO
¿Qué es el Registro de Windows?
• Base de datos jerárquica
• Almacena ajustes de configuración, opciones,
información sobre ajustes en aplicaciones de terceros,
configuraciones de controladores, interfaz de usuario. De
S.O. MS Windows.
Estructura jerárquica
Llamadas “Ramas”:
• HKEY_CLASSES_ROOT {HKCR}
• HKEY_CURRENT_USER {HKCU}
• HKEY_LOCAL_MACHINE {HKLM}
• HKEY_USERS {HKU}
• HKEY_CURRENT_CONFIG {HKCC}
HKEY_CLASSES_ROOT
• Contiene información sobre
aplicaciones registradas
• HKCR es una compilación de
HKCUSoftwareClasses basada
en el usuario y de
HKLMSoftwareClasses basada
en el equipo
HKEY_LOCAL_MACHINE
• Almacena configuraciones específicas del equipo
local.
• Las claves no se almacenan en disco. El núcleo del
sistema las mantiene en la memoria para asignar
allí las de más subclaves.
• Es una compilación de HKCUSoftwareClasses
basada en el usuario y de HKLMSoftwareClasses
basada en el equipo
• Contiene principalmente las subclaves: SAM,
SECURITY, SYSTEM y SOFTWARE. Estas se cargan
en el tiempo de arranque en sus respectivos
archivos (%SystemRoot%System32config).
• La subclave HARDWARE, es volátil y no se
almacena en un archivo. Muestra la vista de los
dispositivos PnP.
• La subclave BCD (Boot Configuration Data) se
almacena en memoria, almacenando los datos de
la configuración de arranque.
HKEY_USERS
• Contiene subclaves correspondientes
a las claves HKEY_CURRENT_USER de
cada perfil de usuario cargado
activamente en el equipo.
• Cargan los subárboles de usuario
correspondientes a los usuarios con
sesión iniciada en el algún momento.
HKEY_CURRENT_USER
• Almacena configuraciones específicas del
usuario con sesión iniciada en ese momento.
• La clave HKCU es un enlace a la subclave de
HKEY_USERS correspondiente al usuario.
• La configuración de cada usuario se almacena
en el archivo de perfil del usuario
%userprofile%NTUSER.DAT y
%UserProfile%AppDataLocalMicrosoftWi
ndowsUsrclass.dat
• Las configuraciones almacenadas en en esta
clave y por lo tanto alamacenadas en dicho
fichero, siguen de equipo en equipo a los
usuarios con perfil móvil.
HKEY_CURRENT_CONFIG
• Contiene información sobre la
subclave
HKLMSYSTEMCurrentControlSet
Hardware ProfileCurrent.
• Almacena la información sobre el
perfil de hardware que se está
utilizando en ese momento.
Tipos de valor de datos
• REG_SZ (valor cadena): Cadena de texto de longitud fija.
• REG_BINARY (valor binario): Datos binarios sin formato.
Información sobre componentes de hardware
• REG_DWORD (32bits) o REG_QWORD (64 bits): Datos
representados por un número de 4 bytes (32bits).
Parámetros de controladores de dispositivo y servicios
son de este tipo
• REG_EXPAND_SZ (cadena extensible): Cadena de
longitud variable. Variables que se resuelven cuando un
programa o servicio utiliza determinados datos.
• REG_MULTI_SZ (cadena múltiple): Cadena múltiple.
Tipos de valor de datos
REG_SZ REG_BINARY REG_DWORD (32bits)
REG_QWORD (64 bits)
Tipos de valor de datos
REG_EXPAND_SZ REG_MULTI_SZ
REGEDIT.exe
Formas de editar el registro de Windows
• Editor de políticas de grupo local (gpedit.msc)
• Ficheros .INF (INFormation) almacenan información de
software los cuales pueden estar en sintaxis compatible con
regedit y cargar valores iniciales de configuración de un
determinado programa. Normalmente usados por las APIs.
• Archivos VBScript.
• Archivos de registro .REG.
• Ficheros por lotes .BAT (batch files)
regedit.exe vrs. gpedit.msc
Ejemplo fichero .INF
[Version]
Signature=$CHICAGO$
[DefaultInstall]
AddReg=Add.Settings
DelReg=Del.Settings
[Add.Settings]
HKCR, regfileshell,,0,"edit"
[Del.Settings]
HKCU,SoftwareMicrosoftWindowsCurrentVersionAppletsRegedit
Ejemplo fichero .vbs - VBScript
WSH (Windows Scripting Host)
• .RegWrite: Crear o modificar claves y valores.
• .RegRead: Leer e interpretar valores.
• .RegDelete: Eliminar claves y valores.
• .Run: Para iniciar programas o aplicaciones.
Crear una nueva clave:
wshShell.RegWrite "HKCUTestKey", ""
Crear un nuevo valor DWORD:
wshShell.RegWrite "HKCUTestKeyDWordTestValue", 1, "REG_DWORD"
Crea una nueva subclave y un valor de cadena en esa nueva subclave:
wshShell.RegWrite "HKCUTestKeySubKeyStringTestValue", "Test", "REG_SZ"
Leer los valores anteriores:
WScript.Echo "HKCUTestKeyDWordTestValue = " _
& wshShell.RegRead( "HKCUTestKeyDWordTestValue" )
WScript.Echo "HKCUTestKeySubKeyStringTestValue = """ _
& wshShell.RegRead( "HKCUTestKeySubKeyStringTestValue" ) & """"
Eliminar la subclave, la clave y los valores que contienen:
wshShell.RegDelete "HKCUTestKeySubKey"
wshShell.RegDelete "HKCUTestKey"
Modificar el registro con ficheros .REG
Windows Registry Editor Version 5.00
Para crear una clave:
[HKEY_CURRENT_USERSoftwareMiPrograma]
Un valor contenido en la clave anterior:
[HKEY_CURRENT_USERSoftwareMiPrograma]
"mi_valor"="como"
Para eliminar una clave antepone un signo menos (-):
[-HKEY_CURRENT_USERSoftwareMiPrograma]
Windows Registry Editor Version 5.00
Para eliminar un valor:
[HKEY_CURRENT_USERSoftwareMiPrograma]
"valor a quitar"=-
Al crear cualquier valor, se supone que es una cadena, por ejemplo para crear un valor
DWORD es necesario especificarlo:
[HKEY_CURRENT_USERSoftwareMiPrograma]
"mi_valor"= dword:000001
Si el carácter punto y coma (;) está delante de cualquier línea se ignora y es
considerada como un comentario:
[HKEY_CURRENT_USERSoftwareMiPrograma]
; esta línea es un comentario
Se guardan en ficheros con extensión .reg y se ejecutan, dependiendo lo que
se necesite modificar se necesitarán o no altos privilegios de usuario.
Ejemplos ficheros .REG
• Añadir opciones de apagar y reiniciar
el equipo en el menú contextual de
clic derecho
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTDesktopBackgroundShellApagar]
[HKEY_CLASSES_ROOTDesktopBackgroundShellApagarcommand]
@="shutdown /s /t 0“
[HKEY_CLASSES_ROOTDesktopBackgroundShellReiniciar]
[HKEY_CLASSES_ROOTDesktopBackgroundShellReiniciarcommand]
@="shutdown /r /t 0"
• Ejecutar aplicaciones en el arranque del
sistema
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun]
"MySQLWorkbench"="REG_EXPAND_SZ:C:Program FilesMySQLMySQL
Workbench 6.3 CEMySQLWorkbench.exe"
• Desactivar opciones de carpeta e opciones
de IE
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPolicies
Explorer]
"NoFolderOptions"=dword:0000001
[HKEY_CURRENT_USERSoftwarePoliciesMicrosoftInternet
ExplorerRestrictions]
"NoBrowserOptions"=dword:00000001
• Deshabilitar el clic derecho del
mouse
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVers
ionPoliciesExplorer]
"NoViewContextMenu"=dword:00000001
Modificar el registro desde una consola de
comandos CMD
• Sintaxis
REG ADD Clave /v NombreValor /t TipoDato /d Dato [/f]
REG DELETE Clave /v NombreValor [/f]
Se ejecutan directamente desde la consola de comandos CMD de Windows. Aunque
la misma sintaxis sería válida para procesos por lotes .bat
Modificadores de REG
• /v Nombre del valor de clave seleccionada
• /s Se especifican todas las subclaves y valores de forma recursiva
• /f Fuerza la sobre escritura o eliminación sin avisar (opcional)
• /ve Establece valor vacío predeterminado (REG ADD)
• /d Datos que se asignan al nombre de valor (REG ADD)
• /va Elimina todos los valores en la clave actual (REG DELETE)
• /t Tipos de datos. Los tipos válidos son:
REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ, REG_DWORD,
REG_QWORD, REG_BINARY, REG_NONE
Comparativa con ficheros .REG y el
comando REG
Fichero .reg:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USERPrueba]
"test"=dword:1
Consola de comandos CMD:
@echo off
REG ADD "HKCUPrueba" /v test /t REG_DWORD /d 1 /f
Ejemplos comando REG
• Ocultar unidad D:
REG ADD KEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer /v NoDrives /t
reg_dword /d 00000008
• Deshabilitar el Administrador de tareas
REG ADD HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesSystem /v DisableTaskMgr /t
REG_DWORD /d 1 /f
• Mostrar la clave, valor y datos que coincidan con 0F bajo la clave HKCU de los datos de tipo REG_BINARY.
REG QUERY HKCU /f 0F /d /t REG_BINARY
• Eliminar el valor del registro datoprueba HKLMSoftwareprueba
REG DELETE HKLMSoftwareprueba /v datoprueba
• Modificar el puerto por defecto de RDP (Remote Desktop Protocol).
REG ADD HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp /v PortNumber /t
REG_DWORD /d ea60 /f
• Hacer lo mismo pero para un equipo remoto, donde el nombre del equipo remoto sea SATURNO
REG DELETE SATURNOHKLMSoftwareMiCo /v MTU
Uso del comando REGEDIT
• REGEDIT Abre el editor del registro
• REGEDIT /E ruta Exporta el registro
• REGEDIT /E ruta "Rama" Exporta parte del registro, sustituye Rama por el
árbol correspondiente
• REGEDIT ruta Importa un archivo REG
• REGEDIT /S ruta Importa un archivo REG de forma silenciosa
No modifica el registro, simplemente nos permite gestionar
exportaciones e importaciones
Búsqueda, permisos,
exportación e importación
del registro
Administración de registro de red remoto
Habilitar registro remoto
en una consola CMD:
SC START RemoteRegistry
API del registro propia de MS Windows
• Librería para la API de Windows “advapi32.dll”.
• Muchos lenguajes de programación ofrecen clases o funciones
integradas para esta API. Permitiendo que los programas
almacenen configuraciones en el registro.
• Funcionalidades para poder interactuar con el registro a través
de aplicaciones de terceros, son gracias al conjunto de funciones
que ofrece la API
Claves más usadas del registro
¿Conocer la clave y valor que afecta al cambio
que queremos realizar de la forma más rápida?
Analizar si funciona y es coherente con lo que queremos realizar
Desgranando de forma
lógica debes, para el valor
correcto encontrar…
¿Preguntas?
$>WHOAMI
adrianlois@zonasystem.com
https://zonasystem.com
@adrianlois_

Más contenido relacionado

Similar a Estructura del Registro de Windows

(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008
(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008
(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008
Microsoft Argentina y Uruguay [Official Space]
 
Sysinternals Suite
Sysinternals SuiteSysinternals Suite
Sysinternals SuiteRosariio92
 
Trabajo de registro
Trabajo de registroTrabajo de registro
Trabajo de registronidiau
 
Servicio de Directorio
Servicio de DirectorioServicio de Directorio
Servicio de Directorio
Daniel Valdez
 
Información del registro de windows para usuarios avanzado1
Información del registro de windows para usuarios avanzado1Información del registro de windows para usuarios avanzado1
Información del registro de windows para usuarios avanzado1wilman123456
 
♥♥
sanr
 
:D
:D:D
:Dsanr
 
ATIX04
ATIX04ATIX04
ATIX04
ATIX04ATIX04
28 el directorio sysconfig
28  el directorio sysconfig28  el directorio sysconfig
28 el directorio sysconfigAprende Viendo
 
3. Conceptos de sistemas operativos
3. Conceptos de sistemas operativos3. Conceptos de sistemas operativos
3. Conceptos de sistemas operativosrcarrerah
 
Apuntes SO examen.pdf
Apuntes SO examen.pdfApuntes SO examen.pdf
Apuntes SO examen.pdf
FranciscoJavierMonte57
 
Obtener contraseñas del directorio activo por hkm
Obtener contraseñas del directorio activo por hkmObtener contraseñas del directorio activo por hkm
Obtener contraseñas del directorio activo por hkm
Websec México, S.C.
 
Modificacion de registros de windows
Modificacion de registros de windows Modificacion de registros de windows
Modificacion de registros de windows
Marp Aerov
 
Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Alexander Calderón
 
Fundamentos de Administración PostgreSQL
Fundamentos de Administración PostgreSQLFundamentos de Administración PostgreSQL
Fundamentos de Administración PostgreSQL
camposer
 
Administrando la Instancia en Oracle database 11g-Z052 05
Administrando la Instancia en Oracle database 11g-Z052 05Administrando la Instancia en Oracle database 11g-Z052 05
Administrando la Instancia en Oracle database 11g-Z052 05Alexander Calderón
 

Similar a Estructura del Registro de Windows (20)

(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008
(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008
(25/02) Desarrollador@S Invita - Introducción y novedades de SQL Server 2008
 
Sysinternals Suite
Sysinternals SuiteSysinternals Suite
Sysinternals Suite
 
Trabajo de registro
Trabajo de registroTrabajo de registro
Trabajo de registro
 
Servicio de Directorio
Servicio de DirectorioServicio de Directorio
Servicio de Directorio
 
Información del registro de windows para usuarios avanzado1
Información del registro de windows para usuarios avanzado1Información del registro de windows para usuarios avanzado1
Información del registro de windows para usuarios avanzado1
 
♥♥
 
:D
:D:D
:D
 
ATIX04
ATIX04ATIX04
ATIX04
 
ATIX04
ATIX04ATIX04
ATIX04
 
Investigcion
InvestigcionInvestigcion
Investigcion
 
28 el directorio sysconfig
28  el directorio sysconfig28  el directorio sysconfig
28 el directorio sysconfig
 
3. Conceptos de sistemas operativos
3. Conceptos de sistemas operativos3. Conceptos de sistemas operativos
3. Conceptos de sistemas operativos
 
comandos dos1.pdf
comandos dos1.pdfcomandos dos1.pdf
comandos dos1.pdf
 
Richard
RichardRichard
Richard
 
Apuntes SO examen.pdf
Apuntes SO examen.pdfApuntes SO examen.pdf
Apuntes SO examen.pdf
 
Obtener contraseñas del directorio activo por hkm
Obtener contraseñas del directorio activo por hkmObtener contraseñas del directorio activo por hkm
Obtener contraseñas del directorio activo por hkm
 
Modificacion de registros de windows
Modificacion de registros de windows Modificacion de registros de windows
Modificacion de registros de windows
 
Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06
 
Fundamentos de Administración PostgreSQL
Fundamentos de Administración PostgreSQLFundamentos de Administración PostgreSQL
Fundamentos de Administración PostgreSQL
 
Administrando la Instancia en Oracle database 11g-Z052 05
Administrando la Instancia en Oracle database 11g-Z052 05Administrando la Instancia en Oracle database 11g-Z052 05
Administrando la Instancia en Oracle database 11g-Z052 05
 

Último

Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
maralache30
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
samuelvideos
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
thomasdcroz38
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
sarasofiamontezuma
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
JimmyTejadaSalizar
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
AMADO SALVADOR
 

Último (20)

Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
 

Estructura del Registro de Windows

  • 1. Registro de Windows Adrián Lois ASIR - IMSO
  • 2. ¿Qué es el Registro de Windows? • Base de datos jerárquica • Almacena ajustes de configuración, opciones, información sobre ajustes en aplicaciones de terceros, configuraciones de controladores, interfaz de usuario. De S.O. MS Windows.
  • 3. Estructura jerárquica Llamadas “Ramas”: • HKEY_CLASSES_ROOT {HKCR} • HKEY_CURRENT_USER {HKCU} • HKEY_LOCAL_MACHINE {HKLM} • HKEY_USERS {HKU} • HKEY_CURRENT_CONFIG {HKCC}
  • 4. HKEY_CLASSES_ROOT • Contiene información sobre aplicaciones registradas • HKCR es una compilación de HKCUSoftwareClasses basada en el usuario y de HKLMSoftwareClasses basada en el equipo
  • 5. HKEY_LOCAL_MACHINE • Almacena configuraciones específicas del equipo local. • Las claves no se almacenan en disco. El núcleo del sistema las mantiene en la memoria para asignar allí las de más subclaves. • Es una compilación de HKCUSoftwareClasses basada en el usuario y de HKLMSoftwareClasses basada en el equipo • Contiene principalmente las subclaves: SAM, SECURITY, SYSTEM y SOFTWARE. Estas se cargan en el tiempo de arranque en sus respectivos archivos (%SystemRoot%System32config). • La subclave HARDWARE, es volátil y no se almacena en un archivo. Muestra la vista de los dispositivos PnP. • La subclave BCD (Boot Configuration Data) se almacena en memoria, almacenando los datos de la configuración de arranque.
  • 6. HKEY_USERS • Contiene subclaves correspondientes a las claves HKEY_CURRENT_USER de cada perfil de usuario cargado activamente en el equipo. • Cargan los subárboles de usuario correspondientes a los usuarios con sesión iniciada en el algún momento.
  • 7. HKEY_CURRENT_USER • Almacena configuraciones específicas del usuario con sesión iniciada en ese momento. • La clave HKCU es un enlace a la subclave de HKEY_USERS correspondiente al usuario. • La configuración de cada usuario se almacena en el archivo de perfil del usuario %userprofile%NTUSER.DAT y %UserProfile%AppDataLocalMicrosoftWi ndowsUsrclass.dat • Las configuraciones almacenadas en en esta clave y por lo tanto alamacenadas en dicho fichero, siguen de equipo en equipo a los usuarios con perfil móvil.
  • 8. HKEY_CURRENT_CONFIG • Contiene información sobre la subclave HKLMSYSTEMCurrentControlSet Hardware ProfileCurrent. • Almacena la información sobre el perfil de hardware que se está utilizando en ese momento.
  • 9. Tipos de valor de datos • REG_SZ (valor cadena): Cadena de texto de longitud fija. • REG_BINARY (valor binario): Datos binarios sin formato. Información sobre componentes de hardware • REG_DWORD (32bits) o REG_QWORD (64 bits): Datos representados por un número de 4 bytes (32bits). Parámetros de controladores de dispositivo y servicios son de este tipo • REG_EXPAND_SZ (cadena extensible): Cadena de longitud variable. Variables que se resuelven cuando un programa o servicio utiliza determinados datos. • REG_MULTI_SZ (cadena múltiple): Cadena múltiple.
  • 10. Tipos de valor de datos REG_SZ REG_BINARY REG_DWORD (32bits) REG_QWORD (64 bits)
  • 11. Tipos de valor de datos REG_EXPAND_SZ REG_MULTI_SZ
  • 13. Formas de editar el registro de Windows • Editor de políticas de grupo local (gpedit.msc) • Ficheros .INF (INFormation) almacenan información de software los cuales pueden estar en sintaxis compatible con regedit y cargar valores iniciales de configuración de un determinado programa. Normalmente usados por las APIs. • Archivos VBScript. • Archivos de registro .REG. • Ficheros por lotes .BAT (batch files)
  • 15. Ejemplo fichero .INF [Version] Signature=$CHICAGO$ [DefaultInstall] AddReg=Add.Settings DelReg=Del.Settings [Add.Settings] HKCR, regfileshell,,0,"edit" [Del.Settings] HKCU,SoftwareMicrosoftWindowsCurrentVersionAppletsRegedit
  • 16. Ejemplo fichero .vbs - VBScript WSH (Windows Scripting Host) • .RegWrite: Crear o modificar claves y valores. • .RegRead: Leer e interpretar valores. • .RegDelete: Eliminar claves y valores. • .Run: Para iniciar programas o aplicaciones. Crear una nueva clave: wshShell.RegWrite "HKCUTestKey", "" Crear un nuevo valor DWORD: wshShell.RegWrite "HKCUTestKeyDWordTestValue", 1, "REG_DWORD" Crea una nueva subclave y un valor de cadena en esa nueva subclave: wshShell.RegWrite "HKCUTestKeySubKeyStringTestValue", "Test", "REG_SZ" Leer los valores anteriores: WScript.Echo "HKCUTestKeyDWordTestValue = " _ & wshShell.RegRead( "HKCUTestKeyDWordTestValue" ) WScript.Echo "HKCUTestKeySubKeyStringTestValue = """ _ & wshShell.RegRead( "HKCUTestKeySubKeyStringTestValue" ) & """" Eliminar la subclave, la clave y los valores que contienen: wshShell.RegDelete "HKCUTestKeySubKey" wshShell.RegDelete "HKCUTestKey"
  • 17. Modificar el registro con ficheros .REG Windows Registry Editor Version 5.00 Para crear una clave: [HKEY_CURRENT_USERSoftwareMiPrograma] Un valor contenido en la clave anterior: [HKEY_CURRENT_USERSoftwareMiPrograma] "mi_valor"="como" Para eliminar una clave antepone un signo menos (-): [-HKEY_CURRENT_USERSoftwareMiPrograma] Windows Registry Editor Version 5.00 Para eliminar un valor: [HKEY_CURRENT_USERSoftwareMiPrograma] "valor a quitar"=- Al crear cualquier valor, se supone que es una cadena, por ejemplo para crear un valor DWORD es necesario especificarlo: [HKEY_CURRENT_USERSoftwareMiPrograma] "mi_valor"= dword:000001 Si el carácter punto y coma (;) está delante de cualquier línea se ignora y es considerada como un comentario: [HKEY_CURRENT_USERSoftwareMiPrograma] ; esta línea es un comentario Se guardan en ficheros con extensión .reg y se ejecutan, dependiendo lo que se necesite modificar se necesitarán o no altos privilegios de usuario.
  • 18. Ejemplos ficheros .REG • Añadir opciones de apagar y reiniciar el equipo en el menú contextual de clic derecho Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOTDesktopBackgroundShellApagar] [HKEY_CLASSES_ROOTDesktopBackgroundShellApagarcommand] @="shutdown /s /t 0“ [HKEY_CLASSES_ROOTDesktopBackgroundShellReiniciar] [HKEY_CLASSES_ROOTDesktopBackgroundShellReiniciarcommand] @="shutdown /r /t 0" • Ejecutar aplicaciones en el arranque del sistema Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun] "MySQLWorkbench"="REG_EXPAND_SZ:C:Program FilesMySQLMySQL Workbench 6.3 CEMySQLWorkbench.exe" • Desactivar opciones de carpeta e opciones de IE Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPolicies Explorer] "NoFolderOptions"=dword:0000001 [HKEY_CURRENT_USERSoftwarePoliciesMicrosoftInternet ExplorerRestrictions] "NoBrowserOptions"=dword:00000001 • Deshabilitar el clic derecho del mouse Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVers ionPoliciesExplorer] "NoViewContextMenu"=dword:00000001
  • 19. Modificar el registro desde una consola de comandos CMD • Sintaxis REG ADD Clave /v NombreValor /t TipoDato /d Dato [/f] REG DELETE Clave /v NombreValor [/f] Se ejecutan directamente desde la consola de comandos CMD de Windows. Aunque la misma sintaxis sería válida para procesos por lotes .bat
  • 20. Modificadores de REG • /v Nombre del valor de clave seleccionada • /s Se especifican todas las subclaves y valores de forma recursiva • /f Fuerza la sobre escritura o eliminación sin avisar (opcional) • /ve Establece valor vacío predeterminado (REG ADD) • /d Datos que se asignan al nombre de valor (REG ADD) • /va Elimina todos los valores en la clave actual (REG DELETE) • /t Tipos de datos. Los tipos válidos son: REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ, REG_DWORD, REG_QWORD, REG_BINARY, REG_NONE
  • 21. Comparativa con ficheros .REG y el comando REG Fichero .reg: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERPrueba] "test"=dword:1 Consola de comandos CMD: @echo off REG ADD "HKCUPrueba" /v test /t REG_DWORD /d 1 /f
  • 22. Ejemplos comando REG • Ocultar unidad D: REG ADD KEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer /v NoDrives /t reg_dword /d 00000008 • Deshabilitar el Administrador de tareas REG ADD HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesSystem /v DisableTaskMgr /t REG_DWORD /d 1 /f • Mostrar la clave, valor y datos que coincidan con 0F bajo la clave HKCU de los datos de tipo REG_BINARY. REG QUERY HKCU /f 0F /d /t REG_BINARY • Eliminar el valor del registro datoprueba HKLMSoftwareprueba REG DELETE HKLMSoftwareprueba /v datoprueba • Modificar el puerto por defecto de RDP (Remote Desktop Protocol). REG ADD HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp /v PortNumber /t REG_DWORD /d ea60 /f • Hacer lo mismo pero para un equipo remoto, donde el nombre del equipo remoto sea SATURNO REG DELETE SATURNOHKLMSoftwareMiCo /v MTU
  • 23. Uso del comando REGEDIT • REGEDIT Abre el editor del registro • REGEDIT /E ruta Exporta el registro • REGEDIT /E ruta "Rama" Exporta parte del registro, sustituye Rama por el árbol correspondiente • REGEDIT ruta Importa un archivo REG • REGEDIT /S ruta Importa un archivo REG de forma silenciosa No modifica el registro, simplemente nos permite gestionar exportaciones e importaciones
  • 24. Búsqueda, permisos, exportación e importación del registro
  • 25. Administración de registro de red remoto Habilitar registro remoto en una consola CMD: SC START RemoteRegistry
  • 26. API del registro propia de MS Windows • Librería para la API de Windows “advapi32.dll”. • Muchos lenguajes de programación ofrecen clases o funciones integradas para esta API. Permitiendo que los programas almacenen configuraciones en el registro. • Funcionalidades para poder interactuar con el registro a través de aplicaciones de terceros, son gracias al conjunto de funciones que ofrece la API
  • 27. Claves más usadas del registro
  • 28. ¿Conocer la clave y valor que afecta al cambio que queremos realizar de la forma más rápida? Analizar si funciona y es coherente con lo que queremos realizar
  • 29. Desgranando de forma lógica debes, para el valor correcto encontrar…