Cari akun administrator di Direktori Aktif

Pada artikel sebelumnya, kami menjelaskan prosedur untuk mengatur ulang kata sandi dari akun administrator domain Active Directory standar (akun administrator). Skenario ini berfungsi dengan baik di lingkungan Active Directory "standar", tetapi di beberapa domain trik ini mungkin tidak berfungsi, karena ketika digunakan, praktik terbaik Microsoft untuk mengamankan infrastruktur AD digunakan. Dalam domain AD nyata, strategi berikut dapat digunakan untuk melindungi akun administrator domain:

  • Ganti nama akun standar Administrator Direktori Aktif
  • Buat akun umpan. Akun tersebut, meskipun memiliki nama Administrator, tetapi tidak memiliki hak tinggi. Selain itu, dengan menggunakan kebijakan audit, Anda dapat mengonfigurasi layanan keamanan untuk memberi tahu Anda tentang otorisasi menggunakan akun ini
  • Menonaktifkan Akun Administrator dan memberikan hak administrator domain ke uchetka lain.

Dalam artikel ini, kami akan mencoba menguraikan solusi untuk strategi ini, yang memungkinkan Anda menemukan dalam AD semua akun dengan hak administrator domain.

Jadi, pada artikel sebelumnya, kami menunjukkan caranya, dengan membuat layanan sistem pada pengontrol domain, Anda dapat mengatur ulang kata sandi admin domain. Perintah ini, ketika memuat DC, akan mengatur ulang kata sandi akun administrator domain (administrator domain) ke P @ ssw0rd.

sc buat ResetADPass binPath = "% ComSpec% / k administrator pengguna net P @ ssw0rd" start = otomatis

Apa yang harus saya lakukan jika saya tidak bisa masuk di akun ini? Kemungkinan besar, saat menggunakan domain, domain dilindungi oleh salah satu metode di atas.

Pasang basis data Direktori Aktif yang terputus

Mari kita coba untuk mengekstrak informasi tentang administrator domain nyata dari database AD. Untuk melakukan ini, boot ke mode DSRM, di mana database Active Directory (ntds.dit) dalam keadaan dinonaktifkan. Kita perlu me-mount basis data ini secara lokal untuk mendapatkan akses lebih lanjut ke informasi yang tersimpan di dalamnya.

Jalankan dua baris perintah: di pertama kita akan memulai proses dsamain.exe, di kedua kita akan memasukkan perintah interaktif.

Kiat. Saat bekerja pada Server Core, baris perintah kedua dapat dibuka dengan menjalankan perintah di cmd asli:

mulai cmd

Sebelum memulai utilitas dsamain.exe, pastikan bahwa layanan dan proses lain saat ini tidak menggunakan port 389. Anda dapat melakukan ini dengan perintah:

netstat -ano | findstr: 389

Jika tim tidak mengembalikan apa pun - semuanya baik-baik saja, silakan (jika Anda kembali, Anda perlu menemukan dan menonaktifkan proses yang ditemukan).

Utilitas dsamain.exe memungkinkan Anda untuk memasang basis data AD dan menjalankan berbagai kueri LDAP untuknya (pada kenyataannya, ini memungkinkan Anda untuk mengatur server LDAP mandiri). Utilitas dimulai dengan parameter berikut:

  • dbpath - set path ke file ntds.dit.
  • allowNonAdminAccess - Mengizinkan kueri LDAP ke database AD di bawah akun lokal (secara default, akses hanya diizinkan untuk anggota Domain Admin dan grup Admin Perusahaan).
  • ldapPort - memungkinkan Anda menentukan port LDAP. Kami akan menggunakan port LDAP standar - 389.

Pasang pangkalan AD dengan perintah:

dsamain -dbpath C: \ Windows \ NTDS \ ntds.dit -allowNonAdminAccess -ldapPort 389

Pastikan proses dsamain.exe berjalan dan mendengarkan pada port 389. Untuk melakukan ini, pada baris perintah kedua, jalankan perintah:

netstat -ano | findstr: 389
TCP 0.0.0.0 opin89 0.0.0.0:07 MENDENGARKAN 614

TCP [::]: 389 [::]: 0 MENDENGARKAN 614

TCP 0.0.0.0 opin89 *: * 614

TCP [::]: 389 *: * 614

Kami mendapatkan proses dengan ID Proses 614 untuk mendengarkan pada port TCP 389.
Periksa bahwa proses dengan PID 604 adalah proses dsamain.exe kami:

daftar tugas / fi "pid eq 614" / daftar
Nama Gambar: dsamain.exe

PID: 614

Nama Sesi: Konsol

Sesi #: 2

Penggunaan Mem: 11.316 K

Sekarang setelah basis AD dipasang, kita dapat mengaksesnya menggunakan utilitas ds * (dsget, dsquery, dll.). Mari kita lihat ketiga opsi untuk menyembunyikan akun administrator domain..

Akun Administrator Domain Berganti nama

Bagaimana saya bisa menentukan apakah akun administrator Direktori Aktif standar telah diubah namanya?
Administrator standar AD memiliki SID yang terkenal, formatnya masing-masing adalah S-1-5-21- [domain id] -500, jadi kita hanya perlu menemukan objek dengan SID tersebut di domain. Pada baris perintah kedua, jalankan perintah:

pengguna dsquery -s localhost | dsget pengguna -s localhost -samid -sid | findstr / c: "- 500"
itpro S-1-5-21-2292496274-2043586872-6449473370-500

Dalam hal ini, dapat dilihat bahwa akun administrator telah diubah namanya menjadi itpro.
Anda juga dapat mengatur ulang kata sandi untuk akun ini menggunakan layanan khusus:

sc buat ResetPW binPath = "% ComSpec% / k net user itpro P @ ssw0rd" start = otomatis

Sekarang Anda dapat meng-unmount database AD (hentikan proses dsamain.exe dengan Ctrl + C). Pastikan perintah mengembalikan string

Layanan Domain Direktori Aktif berhasil dimatikan

Akun Admin AD Palsu

Bagaimana menentukan bahwa Direktori Aktif Administrator standar tidak memiliki hak yang diperlukan? Ini sangat sederhana. Mengetahui DN (nama yang dibedakan) dari akun administrator, kita bisa mendapatkan daftar grup yang berisi:

dsget pengguna "CN = Administrator, CN = Pengguna, DC = winitpro, DC = en" -s localhost -memberof -expand
"CN = Pengguna Domain, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Pengguna, CN = Dibangun, DC = winitpro, DC = ru"

Seperti yang Anda lihat, akun ini bukan anggota grup Admin Domain dan tidak cocok untuk tujuan kami. Teknik berikut akan membantu Anda menemukan administrator "nyata".

Administrator Domain Alternatif

Mari kita coba mencari cara untuk mendapatkan daftar akun yang memiliki hak administrator domain. Untuk memulai, mari kita coba mendaftarkan semua anggota grup Administrator secara rekursif (termasuk anggota Domain Admin dan grup Admin Perusahaan).

grup dsquery -s localhost -samid "administrator" | grup dsget -s localhost -anggota -perbesar
"CN = Admin Domain, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Admin Perusahaan, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Administrator, CN = Pengguna, DC = winitpro, DC = ru"

"CN = itpro, CN = Pengguna, DC = winitpro, DC = ru"

Seperti yang Anda lihat, Administrator dan akun itu memiliki hak administrator. Periksa status akun Administrator:

dsget pengguna "CN = Administrator, CN = Pengguna, DC = winitpro, DC = en" -s localhost -samid -sid -disabled
samid sid dinonaktifkan

Administrator S-1-5-21-2092397264-2003686862-3249677370-500 ya

Seperti yang Anda lihat itu dinonaktifkan.

Sekarang periksa status akun itpro:

dsget pengguna "CN = itpro, CN = Pengguna, DC = winitpro, DC = ru" -s localhost -samid -sid -disabled
samid sid dinonaktifkan

itpro S-1-5-21-2092397264-2003686862-3249677370-1107 no

dsget berhasil

Akun ini aktif. Periksa grup mana yang terdiri dari:

dsget pengguna "CN = itpro, CN = Pengguna, DC = winitpro, DC = en" -s localhost -memberof -expand
"CN = Pemilik Pembuat Kebijakan Grup, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Admin Domain, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Admin Perusahaan, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Admin Skema, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Pengguna Domain, CN = Pengguna, DC = winitpro, DC = ru"

"CN = Ditolak Grup Replikasi Kata Sandi RODC, CN = Pengguna, DC = winitpro, DC = en"

"CN = Administrator, CN = Dibangun, DC = winitpro, DC = en"

"CN = Pengguna, CN = Dibangun, DC = winitpro, DC = ru"

Hebat, dia punya hak administrator domain! Tetap mereset kata sandi akun dengan samid - itpro. Sekali lagi, ini dapat dilakukan dengan menggunakan layanan:

sc buat ResetPW binPath = "% ComSpec% / k net user itpro PA $ w0rd94" start = otomatis

Jangan lupa unmount database AD dan reboot server.