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: 389TCP 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" / daftarNama 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 dimatikanAkun 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 -disabledsamid 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 -disabledsamid 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.