Fitur keamanan PowerShell

PowerShell memiliki beberapa fitur yang dirancang untuk meningkatkan keamanan lingkungan pembuatan skrip Anda.

Kebijakan eksekusi

Kebijakan eksekusi PowerShell adalah fitur keselamatan yang mengontrol kondisi di mana PowerShell memuat file konfigurasi dan menjalankan skrip. Fitur ini membantu mencegah eksekusi skrip berbahaya. Anda dapat menggunakan pengaturan Kebijakan Grup untuk mengatur kebijakan eksekusi untuk komputer dan pengguna. Kebijakan eksekusi hanya berlaku untuk platform Windows.

Untuk informasi selengkapnya, lihat about_Execution_Policies.

Pengelogan blok modul dan skrip

Pengelogan Modul memungkinkan Anda mengaktifkan pengelogan untuk modul PowerShell yang dipilih. Pengaturan ini efektif di semua sesi pada komputer. Peristiwa eksekusi alur untuk modul yang ditentukan dicatat dalam Windows PowerShell masuk Pemantau Peristiwa.

Pengelogan Blok Skrip memungkinkan pengelogan untuk pemrosesan perintah, blok skrip, fungsi, dan skrip - baik dipanggil secara interaktif, atau melalui otomatisasi. Informasi ini dicatat ke log peristiwa Microsoft-Windows-PowerShell/Operational .

Untuk informasi lebih lanjut, baca artikel berikut:

Dukungan AMSI

Windows Antimalware Scan Interface (AMSI) adalah API yang memungkinkan tindakan aplikasi diteruskan ke pemindai antimalware, seperti Pertahanan Windows, untuk dipindai untuk payload berbahaya. Dimulai dengan PowerShell 5.1, PowerShell yang berjalan di Windows 10 (dan yang lebih tinggi) meneruskan semua blok skrip ke AMSI.

Untuk informasi selengkapnya tentang AMSI, lihat Bagaimana AMSI membantu.

Mode bahasa yang dibatasi

Mode ConstrainedLanguage melindungi sistem Anda dengan membatasi cmdlet dan jenis .NET yang dapat digunakan dalam sesi PowerShell. Untuk deskripsi lengkapnya, lihat about_Language_Modes.

Kontrol Aplikasi

Windows 10 mencakup dua teknologi, Pertahanan Windows Application Control (WDAC) dan AppLocker yang dapat digunakan untuk kontrol aplikasi. Mereka memungkinkan Anda membuat pengalaman penguncian untuk memenuhi skenario dan persyaratan spesifik organisasi Anda.

Catatan

Dalam hal memilih antara WDAC atau AppLocker , umumnya disarankan agar pelanggan menerapkan kontrol aplikasi menggunakan WDAC daripada AppLocker. WDAC sedang mengalami peningkatan berkelanjutan dan akan mendapatkan dukungan tambahan dari platform manajemen Microsoft. Meskipun AppLocker akan terus menerima perbaikan keamanan, AppLocker tidak akan mengalami peningkatan fitur baru.

WDAC diperkenalkan dengan Windows 10 dan memungkinkan organisasi untuk mengontrol driver dan aplikasi mana yang diizinkan untuk berjalan di perangkat Windows 10 mereka. WDAC dirancang sebagai fitur keamanan di bawah kriteria layanan yang ditentukan oleh Microsoft Security Response Center (MSRC).

AppLocker dibangun pada fitur kontrol aplikasi dari Kebijakan Pembatasan Perangkat Lunak. AppLocker berisi kemampuan dan ekstensi baru yang memungkinkan Anda membuat aturan untuk mengizinkan atau menolak aplikasi berjalan berdasarkan identitas file yang unik dan untuk menentukan pengguna atau grup mana yang dapat menjalankan aplikasi tersebut.

Untuk informasi selengkapnya tentang AppLocker dan Pertahanan Windows Application Control (WDAC), lihat Kontrol Aplikasi untukketersediaan fitur Windows dan WDAC dan AppLocker.

Perubahan di PowerShell 7.2

  • Ada skenario corner-case di AppLocker di mana Anda hanya memiliki aturan Tolak dan mode yang dibatasi tidak digunakan untuk menegakkan kebijakan yang memungkinkan Anda melewati kebijakan eksekusi. Dimulai di PowerShell 7.2, perubahan dilakukan untuk memastikan aturan AppLocker lebih diutamakan daripada Set-ExecutionPolicy -ExecutionPolicy Bypass perintah.

  • PowerShell 7.2 sekarang melarang penggunaan Add-Type cmdlet dalam sesi PowerShell mode NoLanguage pada komputer yang dikunci.

  • PowerShell 7.2 sekarang melarang skrip menggunakan objek COM dalam kondisi penguncian sistem AppLocker. Cmdlet yang menggunakan COM atau DCOM secara internal tidak terpengaruh.

Perubahan di PowerShell 7.3

  • PowerShell 7.3 sekarang mendukung kemampuan untuk memblokir atau mengizinkan file skrip PowerShell melalui API WDAC.

Kriteria Layanan Keamanan

PowerShell mengikuti Kriteria Layanan Keamanan Microsoft untuk Windows. Tabel di bawah ini menguraikan fitur yang memenuhi kriteria layanan dan yang tidak.

Fitur Jenis
Penguncian Sistem - dengan WDAC Fitur Keamanan
Mode bahasa yang dibatasi - dengan WDAC Fitur Keamanan
Penguncian Sistem - dengan AppLocker Pertahanan Mendalam
Mode bahasa yang dibatasi - dengan AppLocker Pertahanan Mendalam
Kebijakan Eksekusi Pertahanan Mendalam

Tagihan Materi Perangkat Lunak (SBOM)

Dimulai dengan PowerShell 7.2, semua paket penginstalan berisi Tagihan Perangkat Lunak Bahan (SBOM). SBOM ditemukan di $PSHOME/_manifest/spdx_2.2/manifest.spdx.json. Pembuatan dan penerbitan SBOM adalah langkah pertama untuk memodernisasi keamanan cyber Pemerintah Federal dan meningkatkan keamanan rantai pasokan perangkat lunak.

Tim PowerShell juga memproduksi SBOM untuk modul yang mereka miliki tetapi dikirim secara terpisah dari PowerShell. SBOM akan ditambahkan dalam rilis modul berikutnya. Untuk modul, SBOM diinstal di folder modul di bawah _manifest/spdx_2.2/manifest.spdx.json.

Untuk informasi selengkapnya tentang inisiatif ini, lihat posting blog Menghasilkan Tagihan Materi Perangkat Lunak (SBOM) dengan SPDX di Microsoft.