Bagaimana saya bisa tahu apakah suatu proses sedang berjalan dengan izin administrator?

44

Saya menggunakan Windows Vista, dengan UAC diaktifkan. Saya telah menginstal aplikasi, dan installer memerlukan hak admin. Pemasang kemudian memulai aplikasi. Saya ingin tahu apakah aplikasi terus berjalan dengan hak admin.

Saya sudah mencoba Windows Task Manager dan Process Explorer, dan keduanya tidak muncul untuk menunjukkan informasi ini.

Tim
sumber
Untuk OS yang diperbarui silakan lihat pertanyaan ini . Tab Detail Task Manager memiliki kolom Elevated opsional.
Hans Vonn

Jawaban:

43

Di Process Explorer , klik dua kali proses untuk membuka propertinya. Buka tab Keamanan . Dalam daftar grup, temukan BUILTIN \ Administrator dan lihat apa yang dikatakan di kolom Bendera .

Tolak = Tidak Tinggi (bukan admin)

teks alternatif

Pemilik = Tinggi (adalah admin)

teks alternatif

Ryan Bolger
sumber
4
Pada sistem Windows 7 saya, saya harus menjalankan Process Explorer dengan izin yang ditinggikan agar dapat melihat detail tertentu (seperti izin Keamanan) dari proses yang berjalan dengan izin administrator. Saat menjalankan Process Explorer sebagai pengguna biasa, isi tab Keamanan kosong.
Anthony G - keadilan untuk Monica
Tidak ada yang seperti ini sama sekali ada di Win10; gunakan sysinternals (@Tim), tambahkan "level integritas" ke kolom untuk proses.
user15507
1
Win8 dan lebih tinggi selalu memiliki kolom opsional di Task Manager bernama Elevated yang menampilkan ya atau tidak. Ini ada di tab Detail tentu saja.
Adam Caviness
39

Di Process Explorer, Anda dapat mengubah kolom yang ditampilkan dan menambahkan kolom "Tingkat integritas" dari tab "Gambar Proses":

masukkan deskripsi gambar di sini

Ini rupanya istilah teknis untuk apa yang diubah ketika Anda menjalankan proses dengan hak administrator. Jika Anda menjalankan Process Explorer sebagai Administrator, ia akan menampilkan proses biasa sebagai tingkat integritas 'sedang' dan proses yang ditinggikan sebagai 'tinggi'.

Perhatikan bahwa jika Anda menjalankan proses explorer sebagai pengguna biasa, itu akan menunjukkan proses yang memiliki hak admin dengan entri kosong di kolom tingkat integritas.

Tim
sumber
Juga ketika menjalankan program tertentu sebagai administrator dan proses explorer sebagai pengguna normal, proses explorer tidak akan menampilkan ikon proses yang sebenarnya, tetapi ikon kosong.
Nikos
+1 untuk jawaban Anda
BattleTested
3

Pembaruan dengan OS: Resource Monitor, yang saya percaya disertakan dengan Windows 7 dan Windows 10 (tidak yakin tentang Vista) memiliki kolom 'Ditinggikan' opsional pada daftar bagian proses pada tab CPU yang tampaknya cukup akurat.

stackuser83
sumber
0

Jika Anda lebih suka menggunakan alat baris perintah, utilitas Accesschk dari suite MS Sysinternals dapat digunakan untuk memeriksa apakah suatu proses berjalan dengan izin administrator.

Bendera berikut berguna untuk tujuan ini:

  • Opsi -p(proses) menerima nama atau PID dari proses yang sedang berjalan.

  • Opsi -v(verbose) mencetak Tingkat Integritas Windows

  • Opsi -q(sunyi) mencegah informasi versi dicetak.

  • Opsi -f(lengkap) juga dapat digunakan untuk memberikan lebih banyak informasi tentang proses (rincian token keamanan pengguna, grup, dan hak istimewa) tetapi tingkat detail tambahan ini tidak diperlukan untuk memeriksa hak-hak istimewa yang ditinggikan.

Contoh

Daftar hak istimewa dari semua cmdproses yang berjalan :

> accesschk.exe -vqp cmd

[5576] cmd.exe
  Medium Mandatory Level [No-Write-Up, No-Read-Up]
  RW ICS\Anthony
        PROCESS_ALL_ACCESS
  RW NT AUTHORITY\SYSTEM
        PROCESS_ALL_ACCESS
[8224] cmd.exe
  Medium Mandatory Level [No-Write-Up, No-Read-Up]
  RW ICS\Anthony
        PROCESS_ALL_ACCESS
  RW NT AUTHORITY\SYSTEM
        PROCESS_ALL_ACCESS
Error opening [6636] cmd.exe:
Access is denied.

Di sini, kita dapat melihat bahwa ada tiga cmdproses yang saya mulai. Dua yang pertama memiliki Tingkat Wajib Menengah (Integritas) dan ditunjukkan berjalan di bawah akun domain saya, menunjukkan bahwa proses ini dimulai tanpa hak administrator.

Namun, proses terakhir (PID 6636) dimulai dengan izin yang tinggi sehingga perintah saya yang tidak memiliki hak istimewa tidak dapat membaca informasi tentang proses itu. Berjalan dengan izin yang lebih tinggi accesschkdan secara eksplisit menentukan PID-nya mencetak informasi berikut:

> accesschk.exe -vqp 6636

[6636] cmd.exe
  High Mandatory Level [No-Write-Up, No-Read-Up]
  RW BUILTIN\Administrators
        PROCESS_ALL_ACCESS
  RW NT AUTHORITY\SYSTEM
        PROCESS_ALL_ACCESS

Sekarang kita dapat melihat bahwa Level Integritas Tinggi dan proses ini berjalan di bawah Administratorsgrup keamanan bawaan.

Anthony G - keadilan untuk Monica
sumber