Security by Obscurity

chmood
Terkadang ketika tidak ada lagi jalan lain agar kita bisa mengamankan server, digunakanlah teknik "security by obscurity". Teknik ini adalah dengan cara mensamarkan informasi yang ada pada server itu sendiri. Informasi bisa berupa apa saja. Mulai dari tipe server, versi, dan sebagainya. Kenapa informasi tentang server bisa jadi berbahaya? Tipe server dan versi adalah informasi yang bisa dimanfaatkan hacker pada tahap reconaissance dan dengan informasi tersebut bisa dengan mudah dicari exploitnya jika tipe server dan versi tersebut memiliki 0 day bug misalnya. Apalagi sekarang ini sudah banyak website yang menyediakan ribuan exploit siap pakai. Sang hacker nantinya tinggal search β€˜matching exploit’-nya saja. Untuk itu cara terakhir mengamankan sistem adalah dengan teknik "security by obscurity" dengan harapan moga-moga si penyerang setidaknya menjadi bingung dan mengurungkan niatnya karena menjadi tidak yakin akan kebenaran informasi atau kekurangan informasi, dll hehe. Langsung saja ke prakteknya yu mari…

Laptop saya defaultnya menjalankan servis HTTP dan SSH sehingga port 22 dan 80 terbuka. Saya ingin melakukan "security by obscurity" pada kedua server tersebut. Untuk servis HTTP saya menggunakan apache. Untuk apache, saya hanya meminimalisir informasi server saja. Pada file β€˜httpd.conf’ bagian β€˜ServerTokens’ saya isi dengan β€˜Prod’ yang berarti Production.


ServerTokens Prod


Maksud minimalisir informasi server bisa dilihat dari dua gambar berikut ini:






Informasi Server Apache Sebelum di Minimalisir

Informasi Server Apache Sesudah di Minimalisirs

Bisa dilihat pada gambar yang atas, informasi servernya sangat spoiler sekali… Server: Apache/2.3.8 (Unix) mod_ssl/2.3.8 OpenSSL/1.0.0c sedangkan pada gambar yang di bawah (server saya yang sudah dikonfig ServerTokens Prod) informasi servernya sangat minim Server: Apache.

Satu lagi servis yang ada di laptop saya adalah SSH. Bukti mengapa "security by obscurity" penting juga dilakukan di SSH adalah postingan HD Moore tentang bug random key yang digenerate mudah tertebak untuk key SSL dan SSH yang digenerate diantara bulan September 2006 dan 13 Mei 2008. Tinggal cari saja versi SSH diantara rentang waktu itu, pasti memiliki vulnerability ini. Wow bisa berbahaya juga mengetahui versi SSHnya ya?

Untuk SSH saya sedikit mengutak-atik source code OpenSSH untuk melakukan "security by obscurity". Pada file β€˜version.h’ string untuk SSH_VERSION saya ganti dengan β€˜eniacSSH’ bisa dilihat di gambar bawah ini:

Edit Version SSH



Ini tampilan sebelum dilakukan modifikasi versi..


Informasi Server SSH Sebelum di Modifikasi

Dan ini tampilan sesudah dilakukan modifikasi pada β€˜version.h’ dan compile ulang OpenSSH


Informasi Server SSH Sesudah di Modifikasi




Komentar