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.
Kontrol Akun Pengguna (UAC) membantu mencegah program berbahaya (juga disebut malware) merusak komputer dan membantu organisasi menyebarkan desktop yang dikelola dengan lebih baik. Dengan UAC, aplikasi dan tugas selalu berjalan dalam konteks keamanan akun non-administrator, kecuali administrator secara khusus mengotorisasi akses tingkat administrator ke sistem. UAC dapat memblokir penginstalan otomatis aplikasi yang tidak sah dan mencegah perubahan yang tidak disengaja pada pengaturan sistem.
Proses dan Interaksi UAC
Setiap aplikasi yang memerlukan token akses administrator harus meminta persetujuan administrator. Pengecualian satu-satunya adalah hubungan yang ada antara proses induk dan anak. Proses turunan mewarisi token akses pengguna dari proses induk. Namun, proses induk dan anak harus memiliki tingkat integritas yang sama. Windows Server 2012 melindungi proses dengan menandai tingkat integritasnya. Tingkat integritas adalah pengukuran kepercayaan. Aplikasi integritas "tinggi" adalah aplikasi yang melakukan tugas yang memodifikasi data sistem, seperti aplikasi partisi disk, sementara aplikasi integritas "rendah" adalah aplikasi yang melakukan tugas yang berpotensi membahayakan sistem operasi, seperti browser Web. Aplikasi dengan tingkat integritas yang lebih rendah tidak dapat memodifikasi data dalam aplikasi dengan tingkat integritas yang lebih tinggi. Ketika pengguna standar mencoba menjalankan aplikasi yang memerlukan token akses administrator, UAC mengharuskan pengguna memberikan kredensial administrator yang valid.
Untuk lebih memahami bagaimana proses ini terjadi, penting untuk meninjau detail proses masuk Windows Server 2012.
Proses Masuk Windows Server 2012
Ilustrasi berikut menunjukkan bagaimana proses masuk untuk administrator berbeda dari proses masuk untuk pengguna standar.
Secara default, pengguna dan administrator standar mengakses sumber daya dan menjalankan aplikasi dalam konteks keamanan pengguna standar. Ketika pengguna masuk ke komputer, sistem membuat token akses untuk pengguna tersebut. Token akses berisi informasi tentang tingkat akses yang diberikan pengguna, termasuk pengidentifikasi keamanan (SID) tertentu dan hak istimewa Windows.
Saat administrator masuk, dua token akses terpisah dibuat untuk pengguna: token akses pengguna standar dan token akses administrator. Token akses pengguna standar berisi informasi khusus pengguna yang sama dengan token akses administrator, tetapi hak istimewa dan SID Windows administratif dihapus. Token akses pengguna standar digunakan untuk memulai aplikasi yang tidak melakukan tugas administratif (aplikasi pengguna standar). Token akses pengguna standar kemudian digunakan untuk menampilkan desktop (Explorer.exe). Explorer.exe adalah proses induk di mana semua proses lain yang dimulai oleh pengguna mewarisi token akses mereka. Akibatnya, semua aplikasi berjalan sebagai pengguna standar kecuali pengguna memberikan persetujuan atau kredensial untuk menyetujui aplikasi untuk menggunakan token akses administratif penuh.
Pengguna yang merupakan anggota grup Administrator dapat masuk, menelusuri Web, dan membaca email saat menggunakan token akses pengguna standar. Ketika administrator perlu melakukan tugas yang memerlukan token akses administrator, Windows Server 2012 secara otomatis meminta persetujuan kepada pengguna. Prompt ini disebut prompt elevasi, dan perilakunya dapat dikonfigurasi dengan menggunakan snap-in Kebijakan Keamanan Lokal (Secpol.msc) atau dengan menggunakan Kebijakan Grup.
Catatan
Istilah "elevate" digunakan untuk merujuk ke proses di Windows Server 2012 yang meminta persetujuan atau kredensial kepada pengguna untuk menggunakan token akses administrator penuh.
Pengalaman Pengguna UAC
Ketika UAC diaktifkan, pengalaman pengguna untuk pengguna standar berbeda dari administrator dalam Mode Persetujuan Admin. Metode yang direkomendasikan dan lebih aman untuk menjalankan Windows Server 2012 adalah menjadikan akun pengguna utama Anda sebagai akun pengguna standar. Berjalan sebagai pengguna standar membantu memaksimalkan keamanan untuk lingkungan terkelola. Dengan komponen elevasi UAC bawaan, pengguna standar dapat dengan mudah melakukan tugas administratif dengan memasukkan kredensial yang valid untuk akun administrator lokal. Komponen elevasi UAC bawaan default untuk pengguna standar adalah permintaan kredensial.
Alternatif untuk berjalan sebagai pengguna standar adalah menjalankan sebagai administrator dalam Mode Persetujuan Admin. Dengan komponen elevasi UAC bawaan, anggota grup Administrator lokal dapat dengan mudah melakukan tugas administratif dengan memberikan persetujuan. Komponen elevasi UAC bawaan default untuk akun administrator dalam Mode Persetujuan Admin disebut perintah persetujuan. Perilaku permintaan elevasi UAC dapat dikonfigurasi dengan menggunakan snap-in Kebijakan Keamanan Lokal (Secpol.msc) atau Kebijakan Grup.
Permintaan izin dan masukan kredensial
Dengan UAC diaktifkan, Windows Server 2012 meminta persetujuan atau permintaan kredensial akun administrator lokal yang valid sebelum memulai program atau tugas yang memerlukan token akses administrator penuh. Perintah ini memastikan bahwa tidak ada perangkat lunak berbahaya yang dapat diinstal secara diam-diam.
Permintaan persetujuan
Permintaan persetujuan disajikan ketika pengguna mencoba melakukan tugas yang memerlukan token akses administratif pengguna. Berikut ini adalah cuplikan layar permintaan persetujuan UAC.
Perintah kredensial
Perintah kredensial disajikan ketika pengguna standar mencoba melakukan tugas yang memerlukan token akses administratif pengguna. Perilaku permintaan default pengguna standar ini dapat dikonfigurasi dengan menggunakan snap-in Kebijakan Keamanan Lokal (Secpol.msc) atau Kebijakan Grup. Administrator juga dapat diminta untuk memasukkan kredensial mereka dengan mengatur nilai pengaturan kebijakan Kontrol Akun Pengguna: Perilaku permintaan elevasi untuk administrator dalam Mode Persetujuan Admin ke Meminta kredensial.
Cuplikan layar berikut adalah contoh perintah kredensial UAC.
Permintaan peningkatan UAC
Perintah elevasi UAC dikode warna sesuai dengan spesifikasi aplikasi, memungkinkan identifikasi langsung terhadap potensi risiko keamanan aplikasi. Ketika aplikasi mencoba menjalankan dengan token akses penuh administrator, Windows Server 2012 pertama-tama menganalisis file yang dapat dieksekusi untuk menentukan penerbitnya. Aplikasi pertama kali dipisahkan menjadi tiga kategori berdasarkan penerbit file yang dapat dieksekusi: Windows Server 2012 , penerbit diverifikasi (ditandatangani), dan penerbit tidak diverifikasi (tidak ditandatangani). Diagram berikut menggambarkan bagaimana Windows Server 2012 menentukan permintaan elevasi warna mana yang akan disajikan kepada pengguna.
Pengkodian warna prompt elevasi adalah sebagai berikut:
Latar belakang merah dengan ikon perisai merah: Aplikasi diblokir oleh Kebijakan Grup atau berasal dari penerbit yang diblokir.
Latar belakang biru dengan ikon perisai biru dan emas: Aplikasi ini adalah aplikasi administratif Windows Server 2012, seperti item Panel Kontrol.
Latar belakang biru dengan ikon perisai biru: Aplikasi ditandatangani dengan menggunakan Authenticode dan dipercaya oleh komputer lokal.
Latar belakang kuning dengan ikon perisai kuning: Aplikasi belum ditandatangani atau sudah ditandatangani tetapi belum dipercaya oleh komputer lokal.
Ikon perisai
Beberapa item Panel Kontrol, seperti Properti Tanggal dan Waktu, berisi kombinasi operasi administrator dan pengguna standar. Pengguna standar dapat melihat jam dan mengubah zona waktu, tetapi token akses administrator penuh diperlukan untuk mengubah waktu sistem lokal. Berikut ini adalah cuplikan layar item Panel Kontrol Properti Tanggal dan Waktu .
Ikon perisai pada tombol Ubah tanggal dan waktu menunjukkan bahwa proses memerlukan token akses administrator penuh dan akan menampilkan prompt elevasi UAC.
Mengamankan prompt elevasi
Proses elevasi diamankan lebih lanjut dengan mengarahkan perintah ke desktop yang aman. Permintaan persetujuan dan kredensial ditampilkan pada desktop aman secara default di Windows Server 2012 . Hanya proses Windows yang dapat mengakses desktop aman. Untuk tingkat keamanan yang lebih tinggi, kami sarankan tetap mengaktifkan pengaturan kebijakan Kontrol Akun Pengguna: Beralih ke desktop aman saat meminta izin untuk peningkatan.
Ketika berkas eksekusi mengajukan permintaan elevasi, desktop interaktif, yang juga disebut desktop pengguna, dialihkan ke desktop aman. Desktop aman meredupkan desktop pengguna dan menampilkan permintaan elevasi yang harus direspons sebelum melanjutkan. Ketika pengguna mengklik Ya atau Tidak, desktop beralih kembali ke desktop pengguna.
Malware dapat menyajikan tiruan dari desktop yang aman, tetapi ketika pengaturan kebijakan Kontrol Akun Pengguna: Perilaku permintaan elevasi untuk administrator dalam Mode Persetujuan Admin diatur ke Meminta persetujuan, malware tidak mendapatkan elevasi jika pengguna mengklik Ya pada tiruan tersebut. Jika pengaturan kebijakan diatur ke Meminta kredensial, malware yang meniru perintah kredensial mungkin dapat mengumpulkan kredensial dari pengguna. Namun, malware tidak mendapatkan hak istimewa yang ditingkatkan dan sistem memiliki perlindungan lain yang mengurangi malware agar tidak mengontrol antarmuka pengguna bahkan dengan kata sandi yang dipanen.
Meskipun malware dapat menyajikan imitasi desktop aman, masalah ini tidak dapat terjadi kecuali pengguna sebelumnya menginstal malware di komputer. Karena proses yang memerlukan token akses administrator tidak dapat diinstal secara diam-diam saat UAC diaktifkan, pengguna harus secara eksplisit memberikan persetujuan dengan mengklik Ya atau dengan memberikan kredensial administrator. Perilaku spesifik prompt elevasi UAC tergantung pada Kebijakan Grup.
Arsitektur UAC
Diagram berikut merinci arsitektur UAC.
Untuk lebih memahami setiap komponen, tinjau tabel di bawah ini:
Komponen | Deskripsi |
---|---|
Pengguna | |
Pengguna melakukan operasi yang membutuhkan hak istimewa | Jika operasi mengubah sistem file atau registri, Virtualisasi dipanggil. Semua operasi lain memanggil ShellExecute. |
Eksekusi Shell | ShellExecute memanggil CreateProcess. ShellExecute memeriksa kesalahan ERROR_ELEVATION_REQUIRED yang dihasilkan oleh CreateProcess. Jika menerima kesalahan, ShellExecute memanggil layanan Informasi Aplikasi untuk mencoba melakukan tugas yang diminta dengan prompt yang ditingkatkan. |
MembuatProses | Jika aplikasi memerlukan elevasi, CreateProcess menolak panggilan dengan ERROR_ELEVATION_REQUIRED. |
Sistem | |
Layanan Informasi Aplikasi | Layanan sistem yang membantu memulai aplikasi yang memerlukan satu atau beberapa hak istimewa atau hak pengguna yang ditinggikan untuk dijalankan, seperti tugas administratif lokal, dan aplikasi yang memerlukan tingkat integritas yang lebih tinggi. Layanan Informasi Aplikasi membantu memulai aplikasi tersebut dengan membuat proses baru untuk aplikasi dengan token akses penuh pengguna administratif saat elevasi diperlukan dan (tergantung pada Kebijakan Grup) persetujuan diberikan oleh pengguna untuk melakukannya. |
Meningkatkan proses penginstalan ActiveX | Jika ActiveX tidak diinstal, sistem akan memeriksa pengaturan geser UAC. Jika ActiveX diinstal, Kontrol Akun Pengguna: Beralih ke desktop aman saat meminta elevasi untuk pengaturan Kebijakan Grup dicentang. |
Periksa tingkat penggeser UAC | UAC sekarang memiliki empat tingkat pemberitahuan untuk dipilih dan sebuah penggeser untuk memilih tingkat pemberitahuan:
|
Desktop aman diaktifkan |
Kontrol Akun Pengguna: Beralih ke desktop aman saat meminta pengaturan kebijakan elevasi dicentang: - Jika desktop aman diaktifkan, semua permintaan elevasi masuk ke desktop aman terlepas dari pengaturan kebijakan perilaku yang diminta untuk administrator dan pengguna standar. |
MembuatProses | CreateProcess memanggil deteksi AppCompat, Fusion, dan Installer untuk menilai apakah aplikasi memerlukan elevasi. File yang dapat dieksekusi kemudian diperiksa untuk menentukan tingkat eksekusi yang diminta, yang disimpan dalam manifes aplikasi untuk file yang dapat dieksekusi. CreateProcess gagal jika tingkat eksekusi yang diminta yang ditentukan dalam manifes tidak cocok dengan token akses dan mengembalikan kesalahan (ERROR_ELEVATION_REQUIRED) ke ShellExecute. |
AppCompat | Database AppCompat menyimpan informasi dalam entri perbaikan kompatibilitas aplikasi untuk aplikasi. |
Fusi | Database Fusion menyimpan informasi dari manifes aplikasi yang menjelaskan aplikasi. Skema manifes diperbarui untuk menambahkan bidang tingkat eksekusi baru yang diminta. |
Deteksi alat penginstal | Deteksi penginstal mendeteksi file instalasi yang dapat dieksekusi, yang membantu mencegah penginstalan berjalan tanpa sepengetahuan dan persetujuan pengguna. |
Kernel | |
Virtualisasi | Teknologi virtualisasi memastikan bahwa aplikasi yang tidak sesuai tidak gagal berjalan atau gagal secara diam-diam sehingga penyebabnya tidak dapat ditentukan. UAC juga menyediakan virtualisasi dan pengelogan file dan registri untuk aplikasi yang menulis ke area yang dilindungi. |
Sistem file dan registri | Virtualisasi file per pengguna dan registri mengalihkan permintaan registri per komputer dan penulisan file ke lokasi per pengguna yang setara. Permintaan baca dialihkan ke lokasi per pengguna yang divirtualisasi terlebih dahulu dan ke lokasi per komputer kedua. |
Ada perubahan pada UAC Windows Server 2012 dari versi Windows sebelumnya. Slider baru tidak akan pernah mematikan UAC sepenuhnya. Pengaturan baru akan:
Jaga agar layanan UAC tetap berjalan.
Membuat semua permintaan elevasi yang dimulai oleh administrator disetujui secara otomatis tanpa menampilkan prompt UAC.
Secara otomatis menolak semua permintaan elevasi untuk pengguna standar.
Penting
Untuk sepenuhnya menonaktifkan UAC, Anda harus menonaktifkan kebijakan Kontrol Akun Pengguna: Jalankan semua administrator dalam Mode Persetujuan Admin.
Peringatan
Aplikasi yang Disesuaikan tidak akan berfungsi pada Windows Server 2012 ketika UAC dinonaktifkan.
Virtualisasi
Karena administrator sistem di lingkungan perusahaan mencoba mengamankan sistem, banyak aplikasi lini bisnis (LOB) dirancang untuk hanya menggunakan token akses pengguna standar. Akibatnya, administrator TI tidak perlu mengganti sebagian besar aplikasi saat menjalankan Windows Server 2012 dengan UAC diaktifkan.
Windows Server 2012 menyertakan teknologi virtualisasi file dan registri untuk aplikasi yang tidak sesuai dengan UAC dan yang mengharuskan token akses administrator berjalan dengan benar. Virtualisasi memastikan bahwa bahkan aplikasi yang tidak sesuai dengan UAC kompatibel dengan Windows Server 2012 . Ketika aplikasi administratif yang tidak sesuai dengan UAC mencoba menulis ke direktori yang dilindungi, seperti Program Files, UAC memberikan aplikasi tersebut tampilan virtual dari sumber daya yang sedang dicoba diubah oleh aplikasi tersebut. Salinan virtual dipertahankan di profil pengguna. Strategi ini membuat salinan terpisah dari file virtual untuk setiap pengguna yang menjalankan aplikasi yang tidak patuh.
Sebagian besar tugas aplikasi beroperasi dengan benar dengan menggunakan fitur virtualisasi. Meskipun virtualisasi memungkinkan sebagian besar aplikasi berjalan, ini adalah perbaikan jangka pendek dan bukan solusi jangka panjang. Pengembang aplikasi harus memodifikasi aplikasi mereka agar sesuai dengan program logo Windows Server 2012 sesegera mungkin, daripada mengandalkan virtualisasi file, folder, dan registri.
Virtualisasi tidak dalam opsi dalam skenario berikut:
Virtualisasi tidak berlaku untuk aplikasi yang ditingkatkan dan dijalankan dengan token akses administratif penuh.
Virtualisasi hanya mendukung aplikasi 32-bit. Aplikasi 64-bit yang tidak memiliki hak istimewa akan hanya menerima pesan akses ditolak ketika mereka mencoba memperoleh handle (pengidentifikasi unik) ke objek Windows. Aplikasi Windows 64-bit asli harus kompatibel dengan UAC dan untuk menulis data ke lokasi yang benar.
Virtualisasi dinonaktifkan untuk aplikasi jika aplikasi menyertakan manifes aplikasi dengan atribut tingkat eksekusi yang diminta.
Level Pelaksanaan Permintaan
Manifes aplikasi adalah file XML yang menjelaskan dan mengidentifikasi rakitan bersama dan privat berdampingan yang harus diikat aplikasi pada waktu proses. Di Windows Server 2012 , manifes aplikasi menyertakan entri untuk tujuan kompatibilitas aplikasi UAC. Aplikasi administratif yang menyertakan entri dalam manifes aplikasi meminta izin kepada pengguna untuk mengakses token akses pengguna. Meskipun mereka tidak memiliki entri dalam manifes aplikasi, sebagian besar aplikasi administratif dapat berjalan tanpa modifikasi dengan menggunakan perbaikan kompatibilitas aplikasi. Perbaikan kompatibilitas aplikasi adalah entri database yang memungkinkan aplikasi yang tidak mematuhi UAC untuk bekerja dengan baik dengan Windows Server 2012 .
Semua aplikasi yang mematuhi UAC harus memiliki tingkat eksekusi yang diminta yang ditambahkan ke manifes aplikasi. Jika aplikasi memerlukan akses administratif ke sistem, maka menandai aplikasi dengan tingkat eksekusi yang diminta "memerlukan administrator" memastikan bahwa sistem mengidentifikasi program ini sebagai aplikasi administratif dan melakukan langkah-langkah elevasi yang diperlukan. Tingkat eksekusi yang diminta menentukan hak istimewa yang diperlukan untuk aplikasi.
Teknologi Deteksi Alat Penginstal
Program penginstalan adalah aplikasi yang dirancang untuk menyebarkan perangkat lunak. Sebagian besar program penginstalan menulis ke direktori sistem dan kunci registri. Lokasi sistem yang dilindungi ini biasanya hanya dapat ditulis oleh administrator dalam teknologi deteksi Alat Penginstal, yang berarti bahwa pengguna standar tidak memiliki akses yang memadai untuk menginstal program. Windows Server 2012 secara heuristik mendeteksi program penginstalan dan meminta kredensial administrator atau persetujuan dari pengguna administrator untuk dijalankan dengan hak istimewa akses. Windows Server 2012 juga secara heuristik mendeteksi pembaruan dan program yang menghapus instalan aplikasi. Salah satu tujuan desain UAC adalah untuk mencegah penginstalan dijalankan tanpa pengetahuan dan persetujuan pengguna karena program penginstalan menulis ke area yang dilindungi dari sistem file dan registri.
Deteksi alat penginstal saja
File dapat dieksekusi 32-bit.
Aplikasi tanpa atribut tingkat eksekusi yang diminta.
Proses interaktif yang berjalan sebagai pengguna standar dengan UAC diaktifkan.
Sebelum proses 32-bit dibuat, atribut berikut diperiksa untuk menentukan apakah itu penginstal:
Nama file mencakup kata kunci seperti "instal," "penyiapan," atau "perbarui."
Bidang Sumber Daya Penerapan Versi berisi kata kunci berikut: Vendor, Nama Perusahaan, Nama Produk, Deskripsi File, Nama File Asli, Nama Internal, dan Nama Ekspor.
Kata kunci dalam manifes berdampingan disematkan dalam file yang dapat dieksekusi.
Kata kunci dalam entri StringTable tertentu ditautkan dalam file yang dapat dieksekusi.
Atribut kunci dalam data skrip sumber daya ditautkan dalam file yang dapat dieksekusi.
Ada urutan byte yang ditargetkan dalam file yang dapat dieksekusi.
Catatan
Kata kunci dan urutan byte berasal dari karakteristik umum yang diamati dari berbagai teknologi alat penginstal.
Catatan
Kontrol Akun Pengguna: Mendeteksi penginstalan aplikasi dan meminta untuk menjalankan kebijakan elevasi harus diaktifkan agar deteksi penginstal dapat mendeteksi program penginstalan. Pengaturan ini diaktifkan secara default dan dapat dikonfigurasi secara lokal dengan menggunakan snap-in Kebijakan Keamanan Lokal (Secpol.msc) atau dikonfigurasi untuk domain, OU, atau grup tertentu menurut Kebijakan Grup (Gpedit.msc).