← retour aux outils back to tools

# chntpw

Réinitialisation hors ligne de mot de passe Windows et éditeur de registre. Efface ou change les mots de passe Windows locaux directement dans la base SAM sans connaître l'ancien mot de passe. Offline Windows password reset and registry editor. Blanks or changes local Windows passwords directly in the SAM database without knowing the old password.

↗ https://github.com/hierynomus/chntpw

## Overview

chntpw (Change NT Password) edits Windows registry hive files offline. Its primary use is resetting or blanking local Windows account passwords by directly modifying the SAM database — without booting into Windows. Boot from a live Linux USB, mount the Windows partition, and reset passwords.

## Basic Usage

Reset/blank a Windows user password (interactive)

    chntpw /mnt/windows/Windows/System32/config/SAM

With SYSTEM hive (required for newer Windows)

    chntpw -s /mnt/windows/Windows/System32/config/SYSTEM \
           /mnt/windows/Windows/System32/config/SAM

Edit registry keys (interactive)

    chntpw -e /mnt/windows/Windows/System32/config/SAM

Load specific hive for editing

    chntpw -h /mnt/windows/Users/user/NTUSER.DAT

## Mounting Windows Partition

    # Boot from Kali live USB

    # Find Windows partition
    lsblk
    fdisk -l | grep NTFS

    # Mount the partition
    mkdir /mnt/windows
    mount -t ntfs /dev/sda2 /mnt/windows

Navigate to config directory

    ls /mnt/windows/Windows/System32/config/

→ You need: SAM, SYSTEM

## Password Reset Workflow

Step 1: Mount Windows partition

    mount -t ntfs-3g /dev/sda2 /mnt/windows

Step 2: Run chntpw

    chntpw /mnt/windows/Windows/System32/config/SAM

    # Step 3: Interactive menu
    # ============================================================
    # chntpw version 1.00 ...
    # ============================================================
    #
    # Loaded hives: <SAM>
    #
    # ------- Users -------
    # | RID  | Username         | Admin? |
    # ---------------------------------
    # | 01f4 | Administrator    | ADMIN  |
    # | 01f5 | Guest            |        |
    # | 03e8 | john             | ADMIN  |
    #
    # Select: [q]uit, [l]ist users, [u]nlock, [c]lear pass, <rid> to edit
    # -> u john        (unlock account)
    # -> c john        (clear/blank password)
    # -> john          (interactive edit)

    # Step 4: Write changes
    # q to quit, answer y to write changes

## Interactive Options

    # Inside chntpw:
    l       → list users
    <name>  → edit user by name
    <RID>   → edit user by RID
    u <usr> → unlock user account (remove disabled flag)
    c <usr> → clear (blank) password
    q       → quit

    # After editing:
    # Save changes? [y/n] → y

## Registry Editor Mode

Edit registry directly (-e flag)

    chntpw -e /mnt/windows/Windows/System32/config/SOFTWARE

    # Inside registry editor:
    ls          → list current key
    cd <key>    → navigate into key
    nk <name>   → create new key
    dk <name>   → delete key
    nv <type> <name> → create new value
    ed <name>   → edit value
    dv <name>   → delete value
    q           → quit (prompts to save)

## Enabling Built-in Administrator

The Administrator account (RID 500) is often disabled Enable it and blank the password:

    chntpw /mnt/windows/Windows/System32/config/SAM

    # In the interactive menu:
    # Select user 500 (Administrator)
    # Unlock the account
    # Clear the password
    # Save changes

## Tips

- Works on Windows XP through Windows 11 for local accounts
- Does NOT work on Microsoft/Azure AD accounts (cloud-linked accounts)
- Does NOT bypass BitLocker — the disk must be decryptable first
- After blanking password: log in with blank password → immediately set a new one
- Some Windows versions require SYSTEM hive alongside SAM (`-s` flag)

Help / Man page

    chntpw [options] <SAM_hive>

    -s FILE     SYSTEM hive (needed for newer Windows)
    -S          Skip SYSTEM hive (older Windows)
    -e          Registry editor mode
    -h          Edit NTUSER.DAT (user hive)
    -u USER     Username to edit
    -l          List users only (no editing)
    -i          Interactive mode (default)
    -v          Verbose output

## Vue d’ensemble

chntpw (Change NT Password) édite les fichiers de ruche du registre Windows hors ligne. Son usage principal est de réinitialiser ou d’effacer les mots de passe de comptes Windows locaux en modifiant directement la base SAM, sans démarrer sous Windows. Démarrez depuis une clé USB Linux live, montez la partition Windows, et réinitialisez les mots de passe.

## Utilisation de base

    # Réinitialiser/effacer un mot de passe utilisateur Windows (interactif)
    chntpw /mnt/windows/Windows/System32/config/SAM

    # Avec la ruche SYSTEM (nécessaire pour les Windows récents)
    chntpw -s /mnt/windows/Windows/System32/config/SYSTEM \
           /mnt/windows/Windows/System32/config/SAM

    # Éditer les clés de registre (interactif)
    chntpw -e /mnt/windows/Windows/System32/config/SAM

    # Charger une ruche précise pour l'éditer
    chntpw -h /mnt/windows/Users/user/NTUSER.DAT

## Monter la partition Windows

    # Démarrer depuis une clé USB live Kali

    # Trouver la partition Windows
    lsblk
    fdisk -l | grep NTFS

    # Monter la partition
    mkdir /mnt/windows
    mount -t ntfs /dev/sda2 /mnt/windows

    # Naviguer vers le répertoire config
    ls /mnt/windows/Windows/System32/config/
    # → Il vous faut : SAM, SYSTEM

## Workflow de réinitialisation de mot de passe

    # Étape 1 : monter la partition Windows
    mount -t ntfs-3g /dev/sda2 /mnt/windows

    # Étape 2 : lancer chntpw
    chntpw /mnt/windows/Windows/System32/config/SAM

    # Étape 3 : menu interactif
    # ============================================================
    # chntpw version 1.00 ...
    # ============================================================
    #
    # Loaded hives: <SAM>
    #
    # ------- Users -------
    # | RID  | Username         | Admin? |
    # ---------------------------------
    # | 01f4 | Administrator    | ADMIN  |
    # | 01f5 | Guest            |        |
    # | 03e8 | john             | ADMIN  |
    #
    # Select: [q]uit, [l]ist users, [u]nlock, [c]lear pass, <rid> to edit
    # -> u john        (déverrouiller le compte)
    # -> c john        (effacer/vider le mot de passe)
    # -> john          (édition interactive)

    # Étape 4 : écrire les changements
    # q pour quitter, répondre y pour écrire les changements

## Options interactives

    # Dans chntpw :
    l       → lister les utilisateurs
    <name>  → éditer un utilisateur par nom
    <RID>   → éditer un utilisateur par RID
    u <usr> → déverrouiller le compte (retirer le flag désactivé)
    c <usr> → effacer (vider) le mot de passe
    q       → quitter

    # Après édition :
    # Save changes? [y/n] → y

## Mode éditeur de registre

    # Éditer le registre directement (flag -e)
    chntpw -e /mnt/windows/Windows/System32/config/SOFTWARE

    # Dans l'éditeur de registre :
    ls          → lister la clé courante
    cd <key>    → naviguer dans une clé
    nk <name>   → créer une nouvelle clé
    dk <name>   → supprimer une clé
    nv <type> <name> → créer une nouvelle valeur
    ed <name>   → éditer une valeur
    dv <name>   → supprimer une valeur
    q           → quitter (propose de sauvegarder)

## Activer l’administrateur intégré

Le compte Administrator (RID 500) est souvent désactivé. Activez-le et videz le mot de passe :

    chntpw /mnt/windows/Windows/System32/config/SAM

    # Dans le menu interactif :
    # Sélectionner l'utilisateur 500 (Administrator)
    # Déverrouiller le compte
    # Effacer le mot de passe
    # Sauvegarder les changements

## Conseils

- Fonctionne de Windows XP à Windows 11 pour les comptes locaux
- Ne fonctionne PAS sur les comptes Microsoft/Azure AD (comptes liés au cloud)
- Ne contourne PAS BitLocker : le disque doit d’abord être déchiffrable
- Après avoir vidé le mot de passe : connectez-vous avec un mot de passe vide, puis définissez-en un nouveau immédiatement
- Certaines versions de Windows nécessitent la ruche SYSTEM en plus de SAM (flag `-s`)

Aide / Page de manuel

    chntpw [options] <SAM_hive>

    -s FILE     SYSTEM hive (needed for newer Windows)
    -S          Skip SYSTEM hive (older Windows)
    -e          Registry editor mode
    -h          Edit NTUSER.DAT (user hive)
    -u USER     Username to edit
    -l          List users only (no editing)
    -i          Interactive mode (default)
    -v          Verbose output