Saya mencoba menemukan cara untuk mendapatkan daftar akun pengguna yang komprehensif pada sistem Windows 7, termasuk yang tersembunyi. The User Account dialog ( >control userpasswords2
) hanya menunjukkan account user biasa, dan bahkan Pengguna dan Grup Lokal Editor hanya menunjukkan account user biasa dan standar yang tersembunyi / orang cacat seperti Administrator dan Guest. The Pilih Pengguna atau Grup dialog memiliki Find Sekarang tombol yang yang menggabungkan pengguna dan kelompok, tapi sayangnya, ia memiliki isi yang sama seperti LUG itu.
Saya mencari daftar yang lebih komprehensif yang mencakup "pengguna super-tersembunyi" / akun virtual seperti TrustedInstaller (atau lebih tepatnya, NT Service \ TrustedInstaller — perhatikan "domain" yang berbeda).
Saya memeriksa HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList
, tetapi SpecialAccounts
kuncinya tidak ada.
Saya juga memeriksa HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
, dan walaupun terdaftar akun SystemProfile, LocalService, dan NetworkService, ia tidak memiliki yang lain (seperti TrustedInstaller dan sejenisnya).
TrustedInstaller secara khusus sedikit membingungkan karena merupakan pengguna, layanan, dan file yang dapat dieksekusi. Saya menggunakannya sebagai contoh karena "sangat tersembunyi" karena sepertinya tidak terdaftar dalam daftar pengguna apa pun. (Sebagai percobaan, saya mencoba mencari seluruh registri untuk "pemasang tepercaya" untuk melihat apakah saya dapat menemukan tempat yang terdaftar sebagai pengguna, tetapi tidak menemukannya.)
Untuk lebih jelas, yang saya cari adalah daftar semua akun yang dapat digunakan dalam bidang input pengguna seperti dalam dialog izin atau sebagai runas
argumen.
sumber
Jawaban:
Saya tidak berpikir ada daftar pamungkas dari semua akun yang mungkin.
Ada berbagai jenis nama yang dapat Anda gunakan di kolom input pengguna seperti dalam dialog izin.
Pertama adalah Win32_Akun standar, untuk mendapatkan daftar lengkap, buka sesi PowerShell dan jalankan:
Ini adalah pengguna biasa, grup, dan akun bawaan.
Sejak Vista, ada kelas akun baru, yang disebut akun virtual, karena tidak muncul di alat manajemen biasa. Kadang-kadang ada juga yang disebut akun layanan, dan setidaknya ada tiga jenis ini:
Karena Vista, setiap layanan windows memiliki akun virtual yang terkait dengannya, bahkan itu berjalan di bawah akun pengguna yang berbeda dan bahkan jika itu tidak berjalan sama sekali. Sepertinya
NT Service\MSSQLSERVER
Untuk mendapatkan daftar yang digunakan:
Setiap kumpulan aplikasi IIS yang berjalan di bawah ApplicationPoolIdentity berjalan di bawah akun khusus yang disebut
IIS APPPOOL\NameOfThePool
Dengan asumsi Anda memiliki alat skrip Manajemen IIS diinstal, Anda dapat menjalankan:
Di Server 2008+ dan Windows 8+ Anda memiliki Hyper-V, setiap mesin virtual membuat akun virtual sendiri, yang terlihat seperti:
NT VIRTUAL MACHINE\1043F032-2199-4DEA-8E69-72031FAA50C5
untuk menggunakan daftar:
Meskipun akun ini tidak diterima dalam dialog izin, Anda dapat menggunakannya dengan icacls.exe untuk mengatur izin.
Ada juga grup khusus
NT Virtual Machine\Virtual Machines
, yang tidak muncul di tempat lain. Semua akun mesin virtual adalah anggota grup ini, sehingga Anda dapat menggunakan ini untuk mengatur izin untuk semua file VM.Nama-nama ini spesifik bahasa, misalnya dalam bahasa Jerman namanya
NT Virtual Machine\Virtuelle Computer
Proses dvm.exe (Desktop Window Manager) berjalan di bawah pengguna
Windows Manager\DWM-1
Sekali lagi Anda tidak dapat menggunakan tipe pengguna ini dalam dialog izin. Sangat tidak mungkin untuk menyebutkan ini karena ada satu untuk setiap 'sesi Desktop', jadi ketika menggunakan dua sesi RDP, Anda juga memiliki
DWM-2
danDWM-3
sebagai tambahanDVM-1
. Jadi ada banyak desktop yang tersedia.Dalam kasus tertentu, Anda juga dapat menggunakan nama komputer dalam dialog izin, biasanya saat menjadi bagian dari domain Direktori Aktif.
Saat menggunakan PowerShell dan 'JEA (Administrasi Cukup)' dan terhubung ke server dengan sesi jarak jauh PS, pengguna virtual sementara dapat dibuat.
ini memiliki format berikut:
winrm virtual users\winrm va_x_computername_username
dan SID yang dimulai dengan
S-1-5-94-
'x' adalah bilangan bulat.
Akun-akun ini dapat digunakan saat menetapkan izin NTFS, tapi saya tidak tahu cara mendaftar semua pengguna virtual yang mungkin.
Saat berada dalam sesi JEA Anda dapat menggunakan
whoami
untuk mengetahui nama akun saat ini.Bahkan daftar ini tidak memberi Anda setiap akun yang mungkin.
Misalnya, Anda dapat membuat kumpulan aplikasi
FooBarPool
lalu menghapusnya lagi, Anda masih dapat menggunakanIIS APPPOOL\FooBarPool
dialog izin, sehingga harus ada daftar internal di suatu tempat.sumber
everyone
,restricted
, dll, dan diskusi AndaNT Service\*
rekening menjelaskan orang lain sepertiTrustedInstaller
. Anda juga melindungi untuk kasus-kasus khusus yang lebih eksotis, tetapi sepertinya semua yang umum dicatat.Get-WebConfiguration system.applicationHost/applicationPools/add
malah menggunakannya .Ini karena TrustedInstaller adalah layanan dan bukan objek "pengguna". Dengan Vista, Layanan sekarang adalah prinsip keamanan dan dapat diberikan izin.
http://technet.microsoft.com/en-us/magazine/2007.06.acl.aspx
sumber
Buka tab keamanan dan klik
Edit
Add...
Klik
Advanced...
Klik
Object Types...
dan hapus centangGroups
, lalu klikOK
Klik
Find Now
. Ini akan mencantumkan semua pengguna reguler dan pengguna sistem bawaan ("prinsip keamanan bawaan", sebagaimana Windows menyebutnya).Perhatikan bahwa tidak semua akun yang muncul pada halaman ini dapat digunakan dalam perintah Run-As, meskipun semuanya dapat digunakan dalam dialog izin.
sumber
SYSTEM
ada (atau setidaknya seharusnya) di sana, TrustedInstaller tidak .find now
tombol di panel kontrol Pengguna dan Grup, yang serupa tetapi sedikit berbeda. Sepengetahuan saya, satu-satunya akun yang tidak muncul di sini adalah TrustedInstaller. Ini karena Microsoft berusaha keras untuk mencegah Anda melakukan sesuatu ke / dengan akun TrustedInstaller. Saya akan memberi tahu Anda jika saya memikirkan cara lain untuk melakukan ini.Locations...
ke komputer Anda jika Anda berada di domain (tetapi hanya ingin komputer Anda).Dari Windows Vista aktif, layanan diperlakukan sebagai pengguna. Artinya, Pengidentifikasi Keamanan (SID) ditugaskan untuk setiap layanan. Ini tidak spesifik untuk layanan TrustedInstaller . Anda dapat melihat SID yang ditetapkan untuk layanan apa pun menggunakan
sc showsid
perintah:Perhatikan bahwa tidak perlu layanan ada di sistem. Contoh:
atau, untuk layanan Instrumentasi Manajemen Windows (
Winmgmt
):dan, akhirnya, untuk layanan palsu:
Perhatikan bahwa semua SID dimulai dengan
S-1-5-80
, di mana80
ditugaskan untukSECURITY_SERVICE_ID_BASE_RID
sub-otoritas. Selain itu, penugasan ini bersifat deterministik: Tidak ada RID yang digunakan, dan SID akan sama di semua sistem (lihat referensi di akhir posting ini untuk informasi lebih lanjut).Sebagai contoh, saya akan menetapkan
NT Service\Winmgmt
layanan, menulis izin ke beberapa file:Windows menggarisbawahi nama
Winmgmt
, mengonfirmasi bahwa itu adalah identitas yang valid:Sekarang, klik OK, lalu tetapkan izin menulis:
Ini menegaskan bahwa nama layanan apa pun dapat digunakan sebagai identitas pengguna. Karenanya, saya tidak akan menyebutnya akun "tersembunyi makan malam": D
Untuk informasi lebih lanjut, silakan baca artikel berikut:
sumber
Anda dapat menggunakan NetQueryDisplayInformation API, digabungkan dengan pemeriksaan bitwise pada flag info pengguna. Saya memiliki persyaratan yang persis sama, jadi saya memasak kode sampel (dimodifikasi dari permintaan MSDN GROUP).
Bendera pengguna yang saya gunakan adalah UF_NORMAL_ACCOUNT UF_ACCOUNTDISABLE UF_PASSWD_NOTREQD ---> ini memastikan kami mendapatkan akun Manusia, akun Manusia selalu membutuhkan kata sandi.
kode kerja di: http://www.cceye.com/list-system-normal-user-account-only/
sumber