bobby iskandar zulkarnain

April 2010 - Posts

File Services Hardening - SMB Packet Digital Signing

Di antara langkah-langkah dalam melakukan hardening untuk File Services, di antaranya menggunakan Server Core Installation dari windows Server 2008, melakukan Digitally sign communications, mempertimbangkan untuk menghapus berbagai administrative shares dan juga mempertimbangkan penggunaan enkripsi untuk drive dan file.

Lalu untuk Digitally sign communication, seperti apa langkah-langkah yang harus dilakukan?

Protokol SMB menyediakan basis untuk Microsoft File and Print Sharing, dan juga pada banyak operasi jaringan lainnya, seperti Remote Windows Administration. Untuk menghindari terdapatnya kemungkinan serangan (man-in-the-middle attack) yang memodifikasi paket-paket SMB disaat dalam perjalanan, protocol SMB mendukung SMB packet digital signing. Kita dapat mengkonfigurasi setting dari Group Policy untuk Microsoft network server: Digitally sin communication (always) pada lokasi berikut di dalam Group Policy Editor:

Computer Configuration\Windows Settings\Security Settings\Local Policies\Security Options

clip_image002

Seting policy ini menentukan apakah SMB packet signing harus dinegosiasikan terlebih dahulu sebelum komunikasi dengan SMB Client lebih jauh diizinkan. Seting untuk Microsoft network server: Digitally sign communication (always) di set Disabled secara default di Windows Server 2008.

Ok, semoga dapat bermanfaat.

Konfigurasi DNS untuk menolak Non-Authoritative Resource Record

Server DNS harus menolak (ignored) resource record dari server-server yang tidak authoritative untuk record-record tersebut. Informasi non-authoritative resource record seperti itu dikenal dengan name pollution. Kita dapat melindungi DNS kita dari name pollution dengan memastikan bahwa kotak cek pada pilihan Secure cache againts pollution pada tab Advanced dari properti dari server DNS dipilih/diberi tanda centang, dimana ini merupakan default dari konfigurasinya. Juga pastikan bahwa kotak cek Secure cache againts pollution dipilih pada seluruh server DNS di jaringan kita.

image

 

Ok, sekian dulu, semoga bermanfaat…

Windows Powershell 2.0 dan .NET Framework

Windows Server 2008 R2 memiliki Windows Powershell 2.0 berbasis .NET Framework 3.5, jika pada versi dari windows sebelumnya (Windows PowerShell 1.0) berbasis .NET Framework 2.0.

Dalam Powershell ini objek-objek yang didukung adalah objek-objek .NET.

Di antara fitur-fitur relevan dengan Windows PowerShell dari .NET Framework antara lain:

  • Reflection
  • Network Awarness
  • Rapid application development

Dalam kaitannya dengan PoweShell, reflection memiliki arti penting tersendiri. Kita dapat menemukan member dari berbagai class .NET saat runtime dengan menggunakan cmdlet get-member. Sebagai contoh untuk menemukan member yang sedang running process yang dapat kita gunakan, kita dapat menggunakan perintah:

get-process | get-member | more

clip_image002

cmdlet get-process, pada step pertama dari pipeline akan mengembalikan objek-objek class System.diagnostics.Process. Proses ini aktif melalui .NET reflection.

Windows Powershell menyediakan sintak yang memungkinkan user menggunakan berbagai static member dari class .NET Framework. Sebagai contoh, untuk menemukan waktu saat ini menggunakan sintak dan memberikannya ke variable $now, contoh sintaknya sebagai berikut:

$now = [System.Datetime]::Now

Perhatikan pada gambar berikut ini:

clip_image004

Untuk memanggil class .NET, kita menyertakan nama class di dalam pasangan tanda kurung besar, dan menyediakan method atau nama properti yang dipisahkan oleh dua colon (titik dua). Pada kasus ini, perintah menggunakan property static Now dari class System.DateTime dan memberikannya ke variable $now. Teknik yang sama dapat digunakan untuk memanfaatkan class-class .NET Framework atau memperoleh (get) atau juga men-set value dari berbagai properti dari class .NET. Sebagai alternative, kita dapat menggunakan method class System DateTime untuk mencapai hasil yang sama:

$now = [System.DateTime]::get_now()

Untuk menampilkan value dari variable $now, cukup ketikkan perintah :

$now

Perhatikan pada gambar berikut ini:

clip_image006

Nilai dari sistem waktu (current date and time) ditampilkan pada console Powershell. Powershell menawarkan manfaat dari sisi cara menampilkan bulan dari sistem waktu, sebagai contoh jika kita mengalami kebingungan dalam mengakses angka dari bulan dari objek system.DateTime, tinggal gunakan properti objek DateTime sebagai berikut:

$now = [System.DateTime]::get_now()

$now.month

Perhatikan pada gambar berikut ini, terdapat angka 4 yang menunjukkan angka bulan April.

clip_image008

 

Semoga bermanfaat…..