Riwayat aplikasi¶
Jejak yang ditinggalkan alat¶
Banyak alat pihak ketiga menyimpan pengaturan dan riwayatnya di NTUSER.DAT milik pengguna. Beberapa di antaranya
termasuk alat yang digunakan penyerang, atau yang digunakan untuk menyiapkan data sebelum mengambilnya: alat Sysinternals, pengarsip,
klien sinkronisasi cloud, dan alat akses jarak jauh. Juntei membaca hal-hal berikut:
| Aplikasi | Key di bawah HKCU\Software |
Yang ditunjukkan |
|---|---|---|
| Sysinternals | Sysinternals\<tool> |
Setiap alat yang lisensinya telah diterima pengguna (EulaAccepted): PsExec, ProcDump, Sysmon, … |
| WinRAR | WinRAR\ArcHistory, DialogEditHistory\ArcName, DialogEditHistory\ExtrPath |
Arsip yang dibuka; nama arsip dan folder ekstraksi yang diketik di dialognya |
| 7-Zip | 7-Zip\Compression\ArcHistory, Extraction\PathHistory, FM\FolderHistory, FM\CopyHistory, FM\PanelPath0/1 |
Arsip yang dibuat; folder ekstraksi; folder yang dijelajahi dan menjadi tujuan penyalinan di file manager-nya |
| WinZip | Nico Mak Computing\WinZip\filemenu, extract, mru\archives |
Arsip di menu File, folder ekstraksi, arsip terbaru |
| OneDrive | Microsoft\OneDrive\Accounts\<account> |
Alamat e-mail, folder lokal, dan nama setiap akun; library yang disinkronkan (ScopeIdToMountPointPathCache) dan folder (Tenants\<tenant>) |
| Adobe Acrobat dan Reader | Adobe\{Acrobat Reader,Adobe Acrobat}\<version>\AVGeneral\cRecentFiles, cRecentFolders |
Berkas PDF dan folder yang terakhir dibuka, beserta nama berkas, ukuran, dan tanggal |
| TeamViewer | TeamViewer (dan Version<N> milik versi lama) |
Setiap nilai: nama akun dan nama pengguna, folder awal transfer berkas (<partner ID>?<local>|<remote>), … |
| CCleaner | Piriform\CCleaner |
Setiap nilai: apa yang diatur untuk dibersihkan, UpdateKey, … |
Kesimpulan terbaik: pengguna ini menjalankan alat tersebut (atau menerima lisensinya), atau alat tersebut membuka, membuat, atau mengekstrak arsip dan folder ini, atau akun cloud ini disiapkan untuk pengguna tersebut. Sebagian besar riwayat tidak memiliki waktu per entri: hanya entri terbaru yang mendapatkan waktu last-write dari key daftarnya.
Lokasi¶
C:\Users\<user>\NTUSER.DAT
Software\Sysinternals\<tool> EulaAccepted
Software\WinRAR\ArcHistory 0, 1, … (0 the most recent)
Software\7-Zip\Compression ArcHistory (REG_BINARY UTF-16 list)
Software\Microsoft\OneDrive\Accounts\<account> UserEmail, UserFolder, …
Software\Adobe\Acrobat Reader\<version>\AVGeneral\cRecentFiles\c1, c2, …
Kumpulkan NTUSER.DAT setiap pengguna beserta log transaksinya, serta SOFTWARE milik sistem untuk
SID pengguna.
Peringatan bagi analis¶
- Penerimaan EULA Sysinternals.
FirstUsedUTCadalah perkiraan penggunaan pertama dari waktu last-write key ketika satu-satunya nilainya adalahEulaAcceptedyang dapat dibaca dan bernilai1. EULA yang ditolak atau rusak tidak mendapatkan perkiraan ini. Pengaturan registry juga dapat dikonfigurasi sebelumnya, disalin, atau diedit: dukung eksekusi dan waktunya dengan artefak lain. Alat yang menyimpan pengaturan di sana (Process Explorer, Autoruns, …) menulis ulang key tersebut di kemudian hari:FirstUsedUTCkemudian kosong danKeyLastWrittenUTChanya menunjukkan perubahan pengaturan terakhir. Alat yang dijalankan dengan-accepteula, atau sebagai pengguna lain (sisi jarak jauh PsExec berjalan sebagai SYSTEM), menulis key milik pengguna tersebut. - Posisi, bukan waktu. Entri daftar berurutan (
MruPosition0 adalah yang terbaru), tetapi hanya last write dari key daftar yang memberi tanggal pada entri terbaru. Entri yang lebih lama digunakan lebih awal, pada waktu yang tidak diketahui. - Nama yang diketik.
ArcNamemilik WinRAR adalah nama arsip yang diketik saat membuat arsip: sering kali nama berkas tanpa folder. - Path Adobe disimpan sebagaimana ditulis oleh Adobe (
/C/Users/alice/a.pdfadalahC:\Users\alice\a.pdf).sDate-nya (diDetails) adalah string tanggal PDF, disimpan sebagaimana tertulis. UpdateKeymilik CCleaner adalah waktu lokal tanpa zona waktu; disimpan sebagaimana tertulis.- TeamViewer. Log koneksi berupa berkas (
Connections_incoming.txt,TeamViewer*_Logfile.log), bukan nilai registry: kumpulkan juga berkas-berkas tersebut. - Ketiadaan. Pengguna dan alat dapat menghapus riwayat ini (CCleaner sendiri dapat melakukannya).
Mengurai dengan Juntei¶
Usage: juntei parse-registry app-history <INPUT> [OPTIONS]
Input:
-d, --directory <DIR> Recursively find NTUSER.DAT hives
-f, --file <FILE> Parse one NTUSER.DAT hive
--log1/--log2 Supply transaction logs explicitly
--no-logs Do not replay logs
Output:
-o, --output <FILE> Save records
-t, --output-type <TYPE> csv, json, or jsonl
juntei parse-registry app-history -d evidence/ -o app-history.csv
juntei parse-registry app-history -f NTUSER.DAT -t jsonl \
| jq 'select(.App == "Sysinternals" and .FirstUsed != null)'
Ringkasan menampilkan perkiraan penggunaan pertama Sysinternals yang terbaru, arsip dan folder yang terakhir digunakan oleh setiap daftar, serta akun OneDrive.
Field keluaran¶
| Field | Interpretasi |
|---|---|
Host, SourcePath |
Host dan NTUSER.DAT. |
User, UserSID |
Nama folder profil, dan SID-nya dari ProfileList milik sistem. |
App |
Sysinternals, WinRAR, 7-Zip, WinZip, OneDrive, Adobe Acrobat Reader, Adobe Acrobat, TeamViewer, CCleaner. |
Item |
Alat Sysinternals, daftar (ArcHistory, ExtrPath, FolderHistory, filemenu, cRecentFiles, …), akun OneDrive atau key folder yang disinkronkannya, atau nama nilai. |
MRU-Position |
Posisi entri dalam daftarnya, 0 adalah yang terbaru. |
Path |
Arsip, folder, atau dokumen. |
Value |
EulaAccepted, alamat e-mail akun OneDrive atau id library yang disinkronkan, nilai TeamViewer atau CCleaner. |
FirstUsedUTC |
Perkiraan penggunaan pertama dari penerimaan EULA (lihat peringatan di atas). |
Details |
DisplayName, UserCID, ConfiguredTenantId, … milik akun OneDrive; Version, tFileName, uFileSize, uPageCount, sDate milik dokumen Adobe. |
KeyPath, KeyLastWrittenUTC, ValueName |
Asal record, dan kapan key tersebut terakhir berubah. |
DataRaw |
Byte nilai (hex), bila tidak dapat didekode. |
TransactionLogStatus, LogsApplied |
Konteks pemulihan registry. |
Problems |
Data yang tidak dapat didekode atau dibaca. |
Strategi investigasi¶
- Cari alat Sysinternals yang tidak dijalankan oleh pengguna biasa (PsExec, ProcDump, PsLoggedOn, SDelete) beserta timestamp EULA-nya.
- Tinjau nama arsip dan folder ekstraksi di sekitar waktu insiden: arsip yang dibuat di
ProgramData,Temp, atau folder pengguna sebelum data keluar dari sistem. - Periksa akun OneDrive yang bukan milik organisasi, serta nama akun TeamViewer dan folder transfer berkasnya.
- Korelasikan dengan Prefetch, Amcache, BAM, dan UserAssist (alat yang berjalan),
$MFTdan USN Journal (berkas arsip), berkas LNK dan jump list (dokumen yang dibuka), serta log peristiwa.