Pembatasan Perangkat Lunak GPO Windows 2003

9

Kami menjalankan farm Terminal Server di Domain Windows 2003, dan saya menemukan masalah dengan pengaturan GPO Pembatasan Perangkat Lunak yang sedang diterapkan ke server TS kami. Berikut detail konfigurasi dan masalahnya:

Semua server kami (Pengontrol Domain dan Server Terminal) menjalankan Windows Server 2003 SP2 dan domain dan hutan berada pada level Windows 2003. Server TS kami berada dalam OU di mana kami memiliki tautan khusus GPO dan diblokir warisan, sehingga hanya TS khusus GPO yang diterapkan ke server TS ini. Pengguna kami semuanya jauh dan tidak memiliki workstation yang bergabung dengan domain kami, jadi kami tidak menggunakan pemrosesan kebijakan loopback. Kami mengambil pendekatan "daftar putih" untuk memungkinkan pengguna menjalankan aplikasi, jadi hanya aplikasi yang kami setujui dan tambahkan sebagai jalur atau aturan hash yang dapat dijalankan. Kami memiliki Tingkat Keamanan dalam Pembatasan Perangkat Lunak diatur ke Ditolak dan Penegakan diatur ke "Semua file perangkat lunak kecuali perpustakaan".

Apa yang saya temukan adalah bahwa jika saya memberi pengguna jalan pintas ke suatu aplikasi, mereka dapat meluncurkan aplikasi walaupun itu tidak ada dalam daftar Aturan Tambahan dari aplikasi "masuk daftar putih". Jika saya memberikan kepada pengguna salinan dari executable utama untuk aplikasi dan mereka mencoba untuk meluncurkannya, mereka mendapatkan pesan "program ini telah dibatasi ..." yang diharapkan. Tampaknya Pembatasan Perangkat Lunak memang berfungsi, kecuali ketika pengguna meluncurkan aplikasi menggunakan pintasan sebagai lawan meluncurkan aplikasi dari executable utama itu sendiri, yang tampaknya bertentangan dengan tujuan menggunakan Pembatasan Perangkat Lunak.

Pertanyaan saya adalah: Adakah orang lain yang melihat perilaku ini? Adakah yang bisa mereproduksi perilaku ini? Apakah saya kehilangan sesuatu dalam pemahaman saya tentang Pembatasan Perangkat Lunak? Apakah ada kemungkinan saya mengalami kesalahan konfigurasi dalam Pembatasan Perangkat Lunak?

EDIT

Untuk sedikit memperjelas masalah:

Tidak ada GPO tingkat yang lebih tinggi sedang ditegakkan. Menjalankan gpresult menunjukkan bahwa pada kenyataannya, hanya level TS GPO yang diterapkan dan saya memang bisa melihat Pembatasan Perangkat Lunak saya diterapkan. Tidak ada wildcard jalur yang digunakan. Saya menguji dengan aplikasi yang ada di "C: \ Program Files \ Application \ executable.exe" dan aplikasi yang dapat dieksekusi tidak dalam jalur atau aturan hash. Jika pengguna meluncurkan aplikasi utama yang dapat dieksekusi langsung dari folder aplikasi, Pembatasan Perangkat Lunak diberlakukan. Jika saya memberi pengguna jalan pintas yang menunjuk ke aplikasi yang dapat dieksekusi di "C: \ Program Files \ Application \ executable.exe" maka mereka dapat meluncurkan program.

EDIT

Selain itu, file LNK tercantum dalam Jenis File yang Ditunjuk, sehingga file tersebut harus diperlakukan sebagai file yang dapat dieksekusi, yang berarti bahwa file tersebut terikat oleh pengaturan dan aturan Pembatasan Perangkat Lunak yang sama.

joeqwerty
sumber
Apakah Anda memiliki GPO di OU tingkat yang lebih tinggi atau di tingkat domain yang dipaksakan? Saya juga akan memeriksa jalur yang memiliki wildcard atau yang mungkin memungkinkan eksekusi dari jalur jalan pintas.
Chris S
@ Chris S: Lihat hasil edit saya.
joeqwerty
Sudahkah Anda melakukan "gpresult / z / user dom \ user" dan melihat hasilnya dengan hati-hati?
tony roth
Iya. Saya tidak melihat apa pun yang memberi saya wawasan tentang penyebabnya. Terima kasih untuk sarannya.
joeqwerty
@ joeqwerty, Apa artinya joeqwerty?
Pacerier

Jawaban:

5

Jadi saya akhirnya menemukan jawabannya. Dalam aturan Pembatasan Perangkat Lunak kami ada aturan jalur seperti itu:

% HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ ProgramFilesDir%

Ini memungkinkan setiap bagian yang dapat dieksekusi di dalam direktori Program Files dan direktori turunannya berjalan tanpa terbebani. Jalur ini ditambahkan secara default ketika Anda mengkonfigurasi Pembatasan Perangkat Lunak. Menghapus aturan jalur ini menyebabkan semua programd ditolak, bahkan jika executable-nya ditambahkan secara eksplisit sebagai jalur yang tidak dibatasi.

Yang menimbulkan pertanyaan: Jika 99% dari semua program diinstal ke direktori Program Files, tetapi saya ingin membatasi program-program tertentu, bagaimana saya bisa mencapainya dengan Pembatasan Perangkat Lunak?

Sama pentingnya adalah pertanyaannya, apa gunanya Pembatasan Perangkat Lunak kecuali untuk program atau file yang tidak dapat dieksekusi yang tidak terdapat dalam File Program?

joeqwerty
sumber
0

Saya akan memeriksa ACL pada pintasan yang telah Anda buat untuk Pengguna. Sesuai dengan Kebijakan Pembatasan Perangkat Lunak Praktik Terbaik: Kebijakan Keamanan; Layanan Keamanan ,

Pengguna dapat mencoba menghindari kebijakan pembatasan perangkat lunak dengan mengganti nama atau memindahkan file yang tidak diizinkan atau dengan menimpa file yang tidak dibatasi. Sebagai hasilnya, Anda disarankan untuk menggunakan daftar kontrol akses (ACL) untuk menolak pengguna akses yang diperlukan untuk melakukan tugas-tugas ini

Vivek Kumbhar
sumber
Pengguna tidak memiliki akses untuk melakukan tindakan, jadi saya rasa ini tidak berlaku. Terima kasih.
joeqwerty
0

Anda mungkin ingin mencoba menghapus LNK sebagai jenis file yang ditunjuk. Meskipun mereka diperlakukan sebagai executable, mereka seharusnya tidak. Dengan cara ini, pembatasan perangkat lunak harus diterapkan pada target yang dapat dieksekusi oleh file LNK, dan bukan file LNK itu sendiri.

IceMage
sumber
Hmm ... Saya tidak berpikir untuk mencobanya. Saya akan berputar dan memberi tahu Anda jika itu berhasil.
joeqwerty
0

Saya sudah mengalami apa yang Anda bicarakan - itu sangat menjengkelkan. Saya cukup yakin secara default pengguna Anda diizinkan untuk menjalankan aplikasi yang diinstal di File Program.

Sudahkah Anda mencoba membatasi akses ke aplikasi dengan Izin NTFS dan daftar putih dengan cara itu?

Kemudian pengguna dapat memiliki pintasan ke apa pun yang mereka inginkan dan itu tidak akan membantu mereka karena mereka tidak akan dapat mengakses program.

Ref: http://www.virtualizationadmin.com/articles-tutorials/terminal-services/security/locking-down-windows-terminal-services.html

fsckin
sumber