infections PDF

Le processus de démarrage de Windows


Le processus de démarrage de Windows fait intervenir divers mécanismes et processus.
Cette article vous explique comment se déroule le démarrage de Windows.
  1. Le processus de démarrage de Windows
    1. Liste des processus utilisés
    2. Etape 1 - Le Bios
    3. Etape 2 - Démarrage de Windows
    4. Etape 3 - Chargement du Kernel Windows
    5. Etape 4 - Initialisation du noyau
    6. Etape 5 - Chargement des services et ouverture de session
    7. Liens

Liste des processus utilisés

Etape 1 - Le Bios

Cette étape est réalisée par tous les ordinateurs, quel que soit le système d'exploitation installé.
Le CPU exécute le code du BIOS contenu dans la ROM, généralement vous obtenez un écran noir avec le décompte de la mémoire. P
endant cette étape, l'ordinateur vérifie certains composants matériels (mémoire, clavier, carte graphique), cela s'appelle le POST (Power On Self Test).

L'écran change alors (on obtient généralement un écran avec un tableau récapitulatif des informations de l'ordinateur), le BIOS va alors suivre la séquence de boot (démarrage) que l'on lui a imposé et qui est stocké dans la CMOS. Le BIOS cherche alors le MBR (master boot record) du périphérique qui est chargé de localiser la partition active et charger le secteur de boot en mémoire (bootstrap).
A cet instant c'est l'OS qui prend le relai.

Si aucun MBR n'est trouvé, on obtient alors un message du type :

Invalid partition table

Error loading operating system

Missing operating system


Etape 2 - Démarrage de Windows

Sous Windows, le bootstrap contient le fichier Ntldr qui charge les informations sur le matériel et les pilotes requis lors du chargement de NT.

Si Ntldr n'est pas trouvé, vous pouvez obtenir ce message d'erreur : "A kernel file is missing from the disk"

Ntldr démarre aussi le système de fichiers (FAT ou NTFS). Il charge aussi les informations du fichier boot.ini. Dans le cas où vous avez plusieurs Windows d'installé, il affiche un menu pour sélectionner le Windows sur lequel vous souhaitez démarrer.
C'est aussi ce type de menu que l'on retrouve lorsque l'on tape sur la touche F8 pour par exemple démarrer en mode sans échec.

NTLDR charge ensuite le fichier Ntdetect.com qui utilise le BIOS pour connaître la configuration et le matériel présent à travers le CMOS. Ntdetect.com récupère aussi l'heure, les différents types de bus (par exemple, ISA, PCI sur, EISA,…). Ces informations sont ensuite stockées dans la clef HKLM\HARDWARE.
Vous obtenez alors cette barre de progression.

Processus de demarrage sous Windows

Etape 3 - Chargement du Kernel Windows

Ntldr charge ensuite les fichiers Ntoskrnl.exe et Hal.dll, s'il n'y parvient pas, vous obtenez le message :

"Windows NT could not start because the following file was missing or corrupt", 
Ntoskrnl.exe ou Hal.dll

NTLDR charge alors le contenu de la clef HKLM\SYSTEM situé dans le répertoire C:\WINDOWS\system32\config\system puis insère les informations sur la configuration du matériel qu'il a recueillies plus tôt, dans la clé de Registre SYSTEM.

NTLDR va aussi charger tous les pilotes de périphériques qui possèdent une valeur de démarrage (start) (dans le Registre : HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services) de 0x0

C'est dans cette partie du démarrage que vous pouvez obtenir de bels écran bleu d'erreur.

NTLDR charge le fichier ntoskrnl.exe.

Etape 4 - Initialisation du noyau

Ntoskrnl.exe créé le Clone control set (HKEY_LOCAL_MACHINE\SYSTEM\ControlSet2\)
Ntoskrnl.exe va aussi créer la ruche HARDWARE dans le registre en utilisant les informations collectées précédemment par ntdetect.com. Ntoskrnl.exe va initialiser les pilotes de périphériques chargés précédemment, puis va scruter le registre à la recherche des pilotes de périphériques qui ont comme valeur de démarrage 0x1

l’échec de chargement d’un pilote peut provoquer le redémarrage de Windows pour tenter de redémarrer en utilisant la dernière bonne configuration connue

Etape 5 - Chargement des services et ouverture de session

Le noyau démarre ensuite le processus SMSS, c'est un processus système Windows, il est responsable de la gestion des sessions sur le système (création, gestion, et suppression des sessions utilisateurs).
SMS execute les valeurs contenu dans la clé HKLM\SYSTEM\CurrentControlSet\Session Manager\BootExecute.
Cette valeur peut contenir une commande pour lancer l'utilitaire CHKDSK qui vérifie les éventuelles erreurs sur le disque.

SMSS charge le contenu des clefs HKLM\sam, HKLM\sam\security, et HKLM\software, puis la clef clef HKLM\SYSTEM\CurrentControlSet\Control\Hivelist qui donne les chemins des fichiers .DAT (SAM, SECURITY, SOFTWARE, SYSTEM et le fichier NTUSER.dat) où sont contenus les ruches du registre Windows.

SMSS lance csrss.exe et winlogon.exe puis LSASS.exe.
  • CSRSS gère les fenêtres et les éléments graphiques de Windows
  • Winlogon sert à gérer l'ouverture et la fermeture des sessions. Winlogon est chargé en service.
  • LSASS (Local Security Authority Subsystem Service), la fenêtre d'ouverture de session s'ouvre alors. LSASS créé la liste des groupes et les droits auquel l'utilisateur appartient.
screg.exe, le contrôleur de service, va ensuite démarrer les services qui ont la valeur 0x2 dans la clef : HKLM\SYSTEM\CurrentControlSet\Services\DriverName. Les services sont chargés dans l'ordre de leurs dépendances.

L'ouverture de session se fait ensuite, et les programmes contenus dans les clefs suivantes se chargent :
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceEx

La session est alors ouverte.
Après chaque ouverture de session réussie, la Clone Control Set est copiée dans la clé HKEY_LOCAL_MACHINE\SYSTEM\LastKnownGoodRecovery.

Liens

Le processus de démarrage - astuces.microcoms.net
Le processus de démarrage - laboratoire-microsoft.org
Le processus de démarrage - microsoft.com

Retour à la page d'accueil