Boot Process Flashcards
Learn the boot process
Win XP - Pre-Boot
Power On Self Test (POST)
Win XP - MBR
Loads boot code
Win XP - Bootcode
Searches partition table for boot sector and loads NTLDR
Win XP - NTLDR
Reads in boot.ini for OS choices, runs NTDETECT.com to query hardware
Stored data from NTDETECT.com in HKLM\Hardware registry key
Starts NTOSKRNL.exe and HAL.dll
Win XP - NTOSKRNL.exe
starts SMSS.exe
Win XP - SMSS.exe
Launches Winlogon.exe and CSRSS
WIn XP - Winlogon
starts LSASS, loads MSGINA, starts SCM, starts logonui.exe
WIn XP - MSGINA.dll
Graphical Identification and Authorization (GINA) dll library
Activates the user shell
Customizable identification and authentication procedures
Logon dialog
WIn XP - Winlogon
Receives credentials from MSGINA and passes them to LSASS
WIn XP - LSASS
Checks creds against LSA database cache then NTLM or Kerberos if not found
Sends user token back to Winlogon
WIn XP - Winlogon
Starts userinit in user context
WIn XP - Userinit
Loads user profile, runs startup programs, starts explorer.exe
BIOS
Basic Input/Output System
Win7 - Pre-Boot
Power On Self Test (POST)
Win7 - MBR
First 512 byte sector on hard disk
Reads and loads Volume Boot Record
Win7 - VBR
Loads bootmgr into memory
Win7 - Bootmgr
Reads Boot Config Database (BCD)
Boot menu and memtest
Calls winload (fresh boot)
Calls winresume
Win7 - Winload
Loads NTOSKRNL.exe
Loads dependencies
Loads device drive
Win7 - NTOSKRNL
SYSTEM
Prepares for running native system
Runs SMSS
Win7 - HAL.dll
Hardware Abstraction Layer (HAL)
Interfaces driver to kernel
Win7 - SMSS
Session manager
Session 0 loads Win32k.sys (kernel subsystem)
Runs WININIT
Win7 - WININIT
Starts Service Control Manager (SCM)
Starts Local Security Authority SubSystem (LSASS)
Starts Local Session Manager (LSM)
Win7 - CSRSS
Client/Server Runtime SubSystem
Client side of the win32 subsystem process
Thread creation
VBR
Volume Boot Record
CSRSS
Client/SErver Runtime SubSystem
SMSS
Session Manager SubSystem
BCD
Boot Config Database
EFI
Extensible Firmware Interface
UEFI
Unified Extensible Firmware Interface
EFI/UEFI - Step 1
Power On Self Test (POST)
EFI/UEFI - Step 2
Runs Bootloader (from NVRAM) Loads BCD (also in NVRAM)
EFI/UEFI - Step 3
Bootloader detects hardware
EFI/UEFI - Step 4
EFI boot manager gives OS boot menu
EFI/UEFI - Step 5
Winload.efi: EFI version of winload
EFI/UEFI - Step 6
Requires EFI system partition
Formatted as FAT
Up to 1GB in size
Win7 - Winlogon
Coordinates logon and useractivity
Launches logonui
Win7 - Logonui
Interactive logon dialog box
Win7 - Services
Loads auto-start drivers and services
Main difference between local and domain logon
Where the user is authenticating
Local Logon authenticates where?
Locally
Domain Logon authenticates where?
With the domain controller
Tasklist
cmd.exe : loaded modules, services, owner
Process States - New/Created
Open file (.exe)
Create initial thread
Pass to kernel32.dll to check permissions
Pass to csrss, build structure, spawns first sub-thread, inserts into windows subsystem-wide proc list
Starts execution of initial thread
For real-time systems, processes may be held in “New State” to avoid contention, otherwise moved to “Ready State”
Process States - Running
Process currently being executed (one or more threads executing)