Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menggunakan fitur pengerasan keamanan tugas akan memungkinkan pemilik tugas menjalankan tugas mereka dengan hak istimewa minimum yang diperlukan. Perhatikan bahwa fitur ini diaktifkan secara default dan pemilik tugas dapat melakukan penyesuaian lebih lanjut dengan menggunakan jenis pengidentifikasi keamanan token proses tugas dan array hak istimewa yang diperlukan tugas.
Jenis Token SID Proses Tugas dan Array Hak Istimewa yang Dibutuhkan Tugas.
Menentukan ProcessTokenSidType pada tingkat definisi tugas memungkinkan pemilik tugas untuk meminta proses tugas dijalankan dengan jenis SID "none" atau jenis SID "unrestricted". Jika bidang ada dalam definisi tugas, validasi memastikan bahwa tugas UserId berisi nama atau string SID yang sesuai untuk salah satu akun layanan bawaan sistem operasi tersebut: "LAYANAN JARINGAN" atau "LAYANAN LOKAL".
Jenis SID "none" berarti bahwa tugas berjalan dalam proses yang tidak berisi SID token proses (tidak ada perubahan yang akan dilakukan pada daftar grup token proses). SID akun utama tugas (LocalService/NetworkService) dalam hal ini memiliki akses penuh ke token proses.
Jenis SID "tidak terbatas" berarti bahwa SID tugas akan berasal dari jalur tugas lengkap dan akan ditambahkan ke daftar grup token proses. Misalnya, \Microsoft\Windows\RAC\RACTask yang berjalan di akun Layanan Lokal, SID tugas berasal dari nama Microsoft-Windows-RAC-RACTask di mana "-" diganti dengan "\" karena "\" adalah karakter nama pengguna yang tidak valid. Nama grup yang dikenal untuk tugas SID adalah "NT TASK\<jalur tugas lengkap yang dimodifikasi>" (format nama domain\nama pengguna). Daftar kontrol akses diskresi default token proses (DACL) juga akan dimodifikasi untuk memberikan kontrol penuh kepada SID tugas dan hanya untuk SID sistem lokal serta hanya memberikan kontrol baca untuk SID akun utama tugas. "schtasks.exe /showid /tn <jalur tugas lengkap>" akan menampilkan SID tugas yang sesuai dengan tugas.
Ketika tindakan tugas non-COM dimulai, mesin penjadwalan login ke akun utama tugas, memperoleh token proses dan melakukan kueri daftar hak istimewa yang dimiliki token tersebut, lalu membandingkannya dengan daftar hak istimewa yang ditentukan dalam RequiredPrivileges. Jika hak istimewa tidak disebutkan dalam bagian yang terakhir, maka itu ditandai sebagai SE_PRIVILEGE_REMOVED. Langkah yang dapat dieksekusi kemudian akan dimulai dengan menggunakan API CreateProcessAsUser dengan handle token yang dihasilkan.
Ketika tindakan tugas COM dimulai, tindakan tersebut harus diaktifkan oleh proses taskhost.exe. Mesin penjadwalan memeriksa blok konteks dari setiap taskhost.exe yang sedang berjalan dengan akun yang sama seperti tugas awal. Jika menemukan bahwa proses host dimulai dengan hak istimewa yang lebih besar daripada yang dibutuhkan untuk tugas awal, maka tugas tersebut akan dihosting dalam proses tersebut. Jika tidak menemukan proses seperti itu, sistem menggabungkan informasi penguatan dari semua tugas yang berjalan di taskhosts di bawah akun utama tugas dengan mask RequiredPrivileges yang ditentukan dan kemudian memulai instans baru taskhost.exe.
Jika RequiredPrivileges tidak ada dalam definisi tugas, hak istimewa default akun prinsipal tugas tanpa SeImpersonatePrivilege akan digunakan untuk proses tugas. Jika ProcessTokenSidType tidak ada dalam definisi tugas, "tidak dibatasi" digunakan sebagai default.
Topik terkait