Grundlæggende Windows
registreringsdatabase
(forsigtighed tilrådes)
Microsoft Windows registreringsdatabase har altid
befundet sig lidt i limbo. På den ene side ved de fleste godt at
registreringsdatabasen indeholder ALLE settings i Windows
operativsystemer, hvorfor kontrol med denne giver ultimativ kontrol
med et Windows operativsystem. På den anden side ved de fleste også
at registreringsdatabasen er kritisk for ALLE settings i Windows
operativsystemer, hvorfor man let kan ødelægge et system så
grundigt, at reintallation er eneste udvej, hvis man ikke passer på.
Dette forhold forstærkes af at registreringsdatabase værktøjerne i
Windows er ukarakteristisk lidt brugervenlige, måske med vilje fra
Microsofts siden. Denne artikel forsøger at kaste lidt lys over
emnet.
Grundlæggende
registreringsdatabaseteori.
Windows registreringsdatabase er grundlæggende et
hierarkisk opbygget repository af
konfigurations data og denne hierarkiske opbygning tillader at alle
data kan tilgås og refereres via stier på samme måde som filer på et
Windows system. Alt konfigurativ data er i denne sammenhæng
kombinationen af et navn og en værdi, der udgør den
samlede konfigurations settinge. Det er vigtigt at forstå at alt i
et Windows system har forbindelse til registreringsdatabasen, både
stationære settings og de handlinger du selv gør i systemet, også
under daglig brug og intet kan eksisterer uden for. Hvis man
forstiller sig at man kan moniterer aktivitet i
registreringsdatabasen, og det kan man faktisk, så vil der være
aktivitet i databasen når der er aktivitet på systemet.
Vigtige registreringsdatabase
principper.
Computer accounts, user
accounts, groups og andre sikkerhedsrelaterede objekter
kaldes security principles og hver enkelt
af disse har en unik Security Identifier (SID) tilknyttet, Lokale
Security Principle SID genereres af Windows Local Security Authority
og opbevares i local security database. Domain security principle
SID genereres af Domain security Authority og opbavares i AD. En SID
kan se således ud s-1-5-21-2861568415-5618632456-4638315952-500 hvor
især de sidste cifre er interessante, se herunder:
500 Administrator
501 Guest
512 Domain admins
513 Domain users
514 Domain Guests
515 Domain computers
516 Domain Controllers
519 Enterprice Admins
544 Administrators
545 Users
546 Guests
Der er naturligvis mange flere en de ovennævnte,
jo flere brugere og jo større domænet er jo flere SID findes der på
systemet
Ud over SID tildeles Objekter som computers,
program komponenter og devices også en Globally unique identifier, i
daglig tale en GUID. der er et 16 byte langt hexadecimalt tal.
F.eks. kunne papirkurven på din computer have en GUID der ser
således ud {645FF040-5081-101B-9F08-00AA002F954E}
Microsoft har lavet et værktøj, kaldet Guidgen.exe
der kan generere GUID's og MS garanterer at alle GUID's vil være
unikke, ligegyldigt hvor de genereres, så GUID skal opfattes helt
bogstaveligt som unik (bare rolig, jeg forstår heller ikke hvordan
dette kan gøres, men accepterer påstanden til jeg kan bevise det
modsatte).
Vigtige registreringsdatabase struktur.
Når du kikker i registreringseditoren (regedit.exe),
så vil du se at registreringsdatabasens struktur virkelig minder
meget om en filstruktur som den f.eks. ser ud i Windows Explorer.
Det venstre vindue af registreringseditoren kaldes Key Panes og
indeholder registreringsdatabasens strukturelle opbygning, det højre
vindue kaldes value panel og indeholder de forskellige nøgler (Key's)
værdier.
Når vi i registreringsdatabase sammenhæng taler om
nøgler (key's) så kan du opfatte dem som mapper i filsystemer,
hvilket er helt i tråd med at de i registreringseditoren er markeret
med samme ikon som i Windows eksplorer bruges til mapper.
Navngivning og dem måde hvormed man kan oprette mapper i mapper er
også helt lige som med filer.
Hver nøgle kan indeholde en eller flere værdier (values)
og sammenligningen med filer i en mappe ligger lige til højrebenet
hvor værdi navnet er dt samme som filnavnet og værdi typen det samme
som fil extension. Value panelet har tre
koloner en for navnet, en for typen og en til data, hvor data kan
antage værdier fra null til 32.767 bytes langt samt være tomme.
Hvad angår typen, så vil langt den overvejende del
af de værdier du kommer ud for have typen.
REG_BINARY. Der indeholder binære værdier.
REG_DWORD. Der indeholder dobbelt ord, typisk bolske ydtryk som
ja/nej, Sandt/falsk, 1/0
REG_SZ. Der indeholder tekst af fast længde som f.eks. Microsoft
Windows Vista eller Kim Guldberg.
men der findes masser af andre typer du kan komme
ud for, disse er:
REG_DWORD_BIG_ENDIAN, Vil ofte være identisk men i
omvent rækkeføle af REG_DWORD, Værdien stores med den mest
betydningsfulde bit først.
REG_DWORD_LITTLE_ENDIAN, Vil ofte være identisk
med REG_DWORD, Værdien stores med den mindst betydningsfulde bit
først.
REG_EXPAND_SZ, Tekst af variabel længde, f.eks.
miljøvariable der ekspanderes før brug. Et eksempel kunne være
Favorites (favoritter i IE)
REG_FULL_RESOURCES_DESCRIPTOR, Ressourcelister til
devices eller til drivers
REG_LINK, Links
REG_MULTISZ, binære værdier der indeholder lister
af strenge
REG_NONE, indeholder værdier unden defineret type
REG_QWORD, 64 bits versionen af DWORD
REG_QWORD_BIG_ENDIAN, igen en 64 bit version
REG_QWORD_LITTLE_ENDIAN, igen en 64 bit version
REG_RESOURCES_LIST, visning af
REG_FULL_RESOURCES_DESCRIPTOR lister uden mulighed for editering
REG_RESOURCES_REQUIREMENTS_LIST, visning af hvilke
ressourcer et device har brug for, ingen mulighed for editering.
Registreringsdatabasens opbygning
Rod niveauet i registreringsdatabasen udgøres at
fem ROOT KEY's. Disse er
HKEY_USER (HKU)
Denne root key indeholder mindst tre subkeys,
nemlig
-
.DEFAULT der indeholder de per-user settings
som windows bruger under opstart før den første bruger er
logget på. Her er altså ikke tale om default user profilen
-
SID der indeholder per-user settings og
security identifier for console user, der er den bruger der
er logget på, bl.a. skrivebords preferencer og kontrol panel
opsætning
-
SID:Classes der indeholder per-user class
registrations og fil associationer for console user, linket
op på dennes Security identifier.
Alle andre subkey's i HKU vil tilhøre sekundære
brugere f.eks. bruger Runas funktionaliteten og køre et program med
andre credentials.
HKEY_CURRENT_USER (HKCU)
Denne rod key indeholder også per-user settings
for den bruger der er logget på og hænger som sådan sammen med HKU\SID.
Man finder bl.a. environment varialber, desktop settings, netværks
forbindelser, printere og applikations præferencer. De væsentlige
subkeys er:
-
AppEvents der indeholder assiocering mellem
handlinger og lyd
-
Console der indeholder data for alle
kommandolinie applikationer
-
Controle Panel der indeholder settinges for
Accessibility, regional og desktop udseende. Der er
naturligvis stor sammenhæng til control panel, men der er
settings her der ikke kan tilgås andre steder fra.
-
Environment der indeholder environment
variabler. Standard settinges for disse variabler findes i
brugerens profil
-
Identities indeholder en subkey for hver
outlook Espress brugerprofil. Denne bruges dog sjældent da
de fleste nødvendige oplysninger findes i brugerens
(Windows) profil.
-
Keyboard layout siger sig selv
-
Network der indeholder informationer om
mappede drev
-
Printers der indeholder brugerens printer
præferencer
-
Software der indeholder per-user settings for
applikationer
-
Volitile Environment der indeholder
environment variabler der defineres ved logon.
Alle andre subkeys er enten rester af ting der er
nødvendige for bagudkompartabillitet eller andre uinteressante ting,
f.eks. findes her UNICODE Program Group, SessionInformation og
Windows 3.1 Migration Status.
HKEY_LOCAL _MACHINE (HKL)
Denne rod key indeholder per-computer settings der
har med computer konfiguration at gøre og som således vil have
betydning for alle brugere der er logget på denne maskine. Disse
settings er alt fra device driver konfiguration til Windows settings.
Vi finder følgende subkey's
-
Hardware der indeholder data om den hardware
Windows opdager når den starter op.
-
SAM der indeholder Windows lokale security
database kaldet the Security account Manager (SAM) som igen
indeholder lokale users og groups. Denne key vil oftest være
skjult for alle, selv lokale administrator, der dog vil
kunne komme til at se den via HKLM\SECURITY\SAM (se lige
herunder) ved at tage ejerskab over denne.
-
Security der indeholder de security settings
der findes i ovennævnte subkey (SAM)
-
Software Der indeholder per-computer
applikations settings for alt software, herunder også
Windows. Standarden tilskriver at strukturen er HKLM\SOFTWARE\Vendor\Program\Version
-
System Der indeholder forskellige control
sets der igen indeholder device drivers og services
konfiguration.
HKEY_CLASSES_ROOT (HKCR)
Denne rod key indeholder dels fil assiociationer
til forskellige programmer, hvilket program åbner, printer og
editerer hvilke fil typer, og dels classe registreringer for
Domponent Object Model (DOM) objekter. I denne key kan man bl.a.
styre den måde operativsystemer opfører sig på.
Efter Windows 2000 er denne key blevet mere
avanceret således at du ni bl.a. er muligt at have per-computer OG
per-user fil associationer således at forskellige brugere på samme
computer kan have ens fil typer associeret til forskellige
programmer.
HKEY_CURRENT_CONFIG (HKCC)
Denne rod key indeholder links til konfigurations
data for tilstedeværende hardware profil
Registreringsdatabase HIVE struktur
Når man kikker på registreringsdatabasen med
registreringsdatabaseeditoren, så præsenteres denne i sin logiske
struktur. Den fysiske struktur på disken er dog meget mere
kompliceret. Denne vil jeg forsøge at beskrive her.
Fysisk organiserer Windows registreringsdatabasen
i noget der kaldes HIVES der beskrives som registry branches der
gemmes enkeltvis i hver sin binære fil, kaldet en HIVE file. For
hver HIVE file laver Windows en støtte struktur bestående af
en backup kopi, der muliggør dynamisk reparation af alle HIVE filer
under installation eller boot processen hvis noget skulle gå
katastrofalt galt.
Disse HIVES findes kun i to af Root Keys, nemlig
HKLM og HKU, alle de hvies du finder i de andre root key's er bare
links til de to førstnævnte. HIVES til HKU findes i praksis i
brugerens profilmappe (skjult selvfølgelig), mens alle de andre
HIVESer gemt i %SystemRoot%\System32\config. Selve HIVE filerne har
ingen extension, men støtte filerne har, disse kan ses herunder
-
.alt der er en Windows 2000 specifik backup
støttefil
-
.log der indeholder transaktions loggen til
en HIVE
-
.sav der indeholder kopien af HIVE filen. Den
skabes i slutningen af text-mode fasen af Windows setup
program.
Læs mere om IT sikkerhed
her:
IT sikkerhed -
Sådan sikre du din PC
IT sikkerhed - Sikkerhed i dybden
IT sikkerhed -
Eksempel på Instruks for anvendelse af Internettet.
Sikkerhedspolitik
IT sikkerhed - Baselining forudsætningen for meget
IT
sikkerhed - Gode råd om valg af passwords
IT sikkerhed - Fysisk Sikkerhed
IT sikkerhed - IT sikkerhedscertificeringer
IT sikkerhed - Firewall regler
IT
sikkerhed - Firewall typer
IT sikkerhed - Sårbarhedsanalyse
IT sikkerhed med VMWare
IT
sikkerhed - Netværksudstyr forklaret
IT sikkerhed - Pressehåndtering
Læs mere om Trådløs IT sikkerhed her:
IT
sikkerhed - Trådløs sikkerhed
IT sikkerhed - Brug Trådløse Hotspots sikkert
Læs mere om Computer Forensics her
Computer Forensics - Den Grundlæggende
del
Læs mere om Windows
Registreringsdatabase her
Grundlæggende Windows Registreringsdatabase
Arbejd med Windows Registreringsdatabase
Hacking af Windows Registreringsdatabase
Læs også disse serier
Søgemaskineoptimering
Søgemaskinepositionering
Søgemaskinemarkedsføring
Webpromotion
IT sikkerhed
Hacking
Google
SEO
Blackhat Techniques
|