Bagikan melalui


Fungsi SetProcessMitigationPolicy (processthreadsapi.h)

Menetapkan kebijakan mitigasi untuk proses panggilan. Kebijakan mitigasi memungkinkan proses untuk memperkuat dirinya terhadap berbagai jenis serangan.

Sintaks

BOOL SetProcessMitigationPolicy(
  [in] PROCESS_MITIGATION_POLICY MitigationPolicy,
  [in] PVOID                     lpBuffer,
  [in] SIZE_T                    dwLength
);

Parameter

[in] MitigationPolicy

Kebijakan mitigasi yang akan diterapkan. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
ProcessDEPPolicy Kebijakan pencegahan eksekusi data (DEP) proses.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_DEP_POLICY yang menentukan bendera kebijakan DEP.
ProcessASLRPolicy Kebijakan Pengacakan Tata Letak Ruang Alamat (ASLR) proses.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_ASLR_POLICY yang menentukan bendera kebijakan ASLR.
ProcessDynamicCodePolicy Kebijakan kode dinamis proses. Saat diaktifkan, proses tidak dapat menghasilkan kode dinamis atau memodifikasi kode yang dapat dieksekusi yang ada.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_DYNAMIC_CODE_POLICY yang menentukan bendera kebijakan kode dinamis.
ProcessStrictHandleCheckPolicy Proses ini akan menerima kesalahan fatal jika memanipulasi handel yang tidak valid.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY yang menentukan bendera kebijakan pemeriksaan handel.
ProcessSystemCallDisablePolicy Menonaktifkan kemampuan untuk menggunakan fungsi NTUser/GDI pada lapisan terendah.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY yang menentukan bendera kebijakan penonaktifan panggilan sistem.
ProcessMitigationOptionsMask Mengembalikan masker bit yang valid untuk semua opsi mitigasi pada sistem. Aplikasi dapat mengatur banyak opsi mitigasi tanpa mengkueri sistem operasi untuk opsi mitigasi dengan menggabungkan bitwise dengan masker untuk mengecualikan semua bit yang tidak didukung sekaligus.
Parameter lpBuffer menunjuk ke vektor bit ULONG64 untuk masker, atau untuk mengakomodasi lebih dari 64 bit, array dua elemen vektor ULONG64 bit.
ProcessExtensionPointDisablePolicy Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY yang menentukan bendera kebijakan penonaktifan titik ekstensi.
ProcessControlFlowGuardPolicy Kebijakan Control Flow Guard (CFG) dari proses tersebut.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY yang menentukan bendera kebijakan CFG.
ProcessSignaturePolicy Kebijakan proses yang dapat membatasi pemuatan gambar ke gambar yang ditandatangani oleh Microsoft, oleh Windows Store, atau oleh Microsoft, Windows Store dan Windows Hardware Quality Labs (WHQL).
parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY yang menentukan bendera kebijakan tanda tangan.
ProcessFontDisablePolicy Kebijakan mengenai pemuatan font untuk proses tersebut. Ketika diaktifkan, proses tidak dapat memuat font non-sistem.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_FONT_DISABLE_POLICY yang menentukan bendera kebijakan untuk pemuatan font.
ProcessImageLoadPolicy Kebijakan mengenai pemuatan gambar untuk proses, yang menentukan jenis gambar yang dapat dieksekusi yang diizinkan untuk dipetakan ke dalam proses. Saat diaktifkan, gambar tidak dapat dimuat dari beberapa lokasi, seperti perangkat jarak jauh atau file yang memiliki label wajib rendah.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_IMAGE_LOAD_POLICY yang menentukan bendera kebijakan untuk pemuatan gambar.
ProcessRedirectionTrustPolicy Kebijakan RedirectionGuard dari sebuah proses. Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY yang menentukan mode mitigasi.
ProcessSideChannelIsolationPolicy Windows 10, versi 1809 ke atas: Kebijakan mengenai isolasi saluran samping untuk proses yang ditentukan.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY yang menentukan bendera kebijakan untuk isolasi saluran samping.
ProcessUserShadowStackPolicy Windows 10, versi 2004 ke atas: Kebijakan mengenai Perlindungan Tumpukan yang diberlakukan perangkat keras mode pengguna untuk proses tersebut.
Parameter lpBuffer menunjuk ke struktur PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY yang menentukan bendera kebijakan untuk Perlindungan Tumpukan yang diberlakukan Perangkat Keras mode pengguna.

[in] lpBuffer

Jika parameter MitigationPolicy adalah ProcessDEPPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_DEP_POLICY yang menentukan bendera kebijakan DEP.

Jika parameter MitigationPolicy adalah ProcessASLRPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_ASLR_POLICY yang menentukan bendera kebijakan ASLR.

Jika parameter MitigationPolicy adalah ProcessImageLoadPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_IMAGE_LOAD_POLICY yang menerima bendera kebijakan untuk pemuatan gambar.

Jika parameter MitigationPolicy adalah ProcessStrictHandleCheckPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY yang menentukan bendera kebijakan pemeriksaan handel.

Jika parameter MitigationPolicy adalah ProcessSystemCallDisablePolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY yang menentukan bendera kebijakan penonaktifan panggilan sistem.

Jika parameter MitigationPolicy adalah ProcessMitigationOptionsMask, parameter ini menunjuk ke vektor bit ULONG64 untuk masker, atau untuk mengakomodasi lebih dari 64 bit, array dua elemen dari vektor bit ULONG64 .

Jika parameter MitigationPolicy adalah ProcessExtensionPointDisablePolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY yang menentukan bendera kebijakan penonaktifan titik ekstensi.

Jika parameter MitigationPolicy adalah ProcessControlFlowGuardPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY yang menentukan bendera kebijakan CFG.

Jika parameter MitigationPolicy adalah ProcessSignaturePolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY yang menentukan bendera kebijakan tanda tangan.

Jika parameter MitigationPolicy adalah ProcessFontDisablePolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_FONT_DISABLE_POLICY yang menentukan bendera kebijakan untuk pemuatan font.

Jika parameter MitigationPolicy adalah ProcessImageLoadPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_IMAGE_LOAD_POLICY yang menentukan bendera kebijakan untuk pemuatan gambar.

Jika parameter MitigationPolicy adalah ProcessRedirectionTrustPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY yang menentukan mode mitigasi.

Jika parameter MitigationPolicy adalah ProcessUserShadowStackPolicy, parameter ini menunjuk ke struktur PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY yang menentukan bendera kebijakan untuk Perlindungan Tumpukan yang diberlakukan Perangkat Keras mode pengguna.

[in] dwLength

Ukuran lpBuffer, dalam byte.

Mengembalikan nilai

Jika fungsi berhasil, fungsi akan mengembalikan TRUE. Jika fungsi gagal, fungsi akan mengembalikan FALSE. Untuk mengambil nilai kesalahan yang ditentukan untuk fungsi ini, panggil GetLastError.

Keterangan

Mengatur kebijakan mitigasi untuk proses membantu mencegah penyerang mengeksploitasi kerentanan keamanan. Gunakan fungsi SetProcessMitigationPolicy untuk mengaktifkan atau menonaktifkan mitigasi keamanan secara terprogram.

Untuk efektivitas maksimum, kebijakan mitigasi harus diterapkan sebelum atau selama inisialisasi proses. Misalnya, mengatur kebijakan ASLR yang memungkinkan relokasi paksa gambar hanya efektif jika diterapkan sebelum semua gambar dalam proses telah dimuat.

Kebijakan mitigasi ASLR tidak dapat dibuat kurang ketat setelah diterapkan.

Untuk mengkompilasi aplikasi yang menggunakan fungsi ini, atur _WIN32_WINNT >= 0x0602. Untuk informasi selengkapnya, lihat Menggunakan Header Windows.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8 [khusus aplikasi desktop]
Server minimum yang didukung Windows Server 2012 [hanya aplikasi desktop]
Target Platform Windows
Header processthreadsapi.h
Pustaka Kernel32.lib
DLL Kernel32.dll