Implementasi penggunaan Software Opensource

Definisi software open source adalah software yang harus di distribusikan dengan source code, atau source code tersebut dapat dengan mudah di dapatkan. Definisi secara lengkap di tulis oleh Bruce Perens untuk Debian Linux pada tahun 1997. Di definisi tersebut juga disertakan beberapa lisensi yang mendukung definisi Open source.

Lawan yang setara untuk software open source adalah software close source. Yang meliputi software proprietary dan commercial.

Selain istilah software open source, terdapat pula istilah free software. Free software ini pertama kali di cetuskan oleh Richard Stallman. Konsepnya adalah bahwa free disini bukan dalam arti gratis, tetapi lebih pada arti bebas. Artinya software bukan berarti bisa diperoleh tanpa biaya atau gratis, tetapi software dapat diperoleh dan dengan bebas dapat di pelajari dan di rubah sesuai dengan kebutuhan pemakai.

Sekarang ini sangat dimungkinkan untuk membuat platform yang lengkap hanya dengan memakai software open source. Karena saat ini software open source sudah tersedia secara lengkap dan dapat bekerja dengan sangat baik. Tetapi dalam kenyataannya penggunaan bersama-sama antara software open source dan software close source. Sebagai contoh, Apache Web Server dapat di gunakan untuk platform Windows, OpenOffice dan Mozilla Firefox yang juga software open source dapat digunakan juga untuk Windows.

Saat ini software open source sudah digunakan dalam skala yang sangat besar. Linux, FreeBSD, Apache Web Server, PHP, PERL, dan sebagainya merupakan sedikit dari software opensource yang digunakan. Software opensource juga merupakan jantung dari Internet yang sekarang ini kita pakai. Program e-mail, domain name dan protokol TCP/IP merupakan sedikit contoh dari software opensource yang menjadi inti dari internet.

Selain itu, saat ini banyak perusahaan-perusahaan yang telah memakai produk opensource untuk menjalankan bisnis mereka. Amazon, Yahoo, Google, eBay, adalah pengguna produk opensource dalam skala besar. HP, IBM, Sun dan Apple, menggabungkan produk opensource dengan produk close source untuk berbisnis.

Memilih Opensource
Beberapa kelebihan penggunaan software opensource yang telah banyak dikenal adalah :
-Dapat melihat Source Code
-Modifikasi dan distribusi ulang source code
-Memungkinkan tidak tergantung pada satu vendor
-Tidak menggunakan format data yang proprietary
-Memungkinkan integrasi antar produk
-Mengurangi biaya lisensi software

Selain itu ada beberapa hal yang menjadi penghambat penggunaan software open source pada sebuah organisasi. Hal yang terutama adalah tidak adanya bentuk support sales, marketing dan hal-hal yang mendukung penjualan. Hal ini biasanya menjadi pertimbangan bagi sebuah organisasi untuk mengimplementasikan software opensource. Namun sekarang ini perusahaan besar seperti IBM dan HP membundling produk opensource dengan produk close source mereka. Seperti Websphere dengan Apache, Oracle dengan Linux, SAP dengan MySQL.

Software opensource di pasarkan dan di jual dengan cara yang berbeda. Namun justru hal tersebut menjadi kekuatan opensource. Secara terpisah sofwtare opensource mempunyai price/performance terbaik di kelasnya. Secara bersama-sama software opensource menawarkan solusi yang terintegrasi. Software opensource telah membuktikan keunggulan di bandingkan close source dengan metode pengembangan dan pengujian yang unik.

Metode untuk Network Security Assessment

Terdapat dua jenis ancaman terhadap sebuah network. Yang pertama adalah ancaman yang di lakukan oleh mereka yang bersifat coba-coba, yaitu dengan memakai network scanner dan beberapa script untuk mendapatkan hak akses (compromise). Penyerang tipe ini biasanya memanfaatkan hosts pada network tersebut untuk melakukan denial-of-service dan memakainya sebagai bouncer untuk memalsukan serangan terhadap hosts yang lain.

Ancaman kedua adalah dari penyerang yang benar-benar berniat menyerang sistem network tertentu. Penyerang ini akan mencoba mencari celah dari berbagai kemungkinan kelemahan sebuah network dengan memanfaatkan internet, dan melakukan scanning tiap IP address, mengumpulkan semua informasi pada setiap host dan setiap service yang ada. Mereka biasanya sangat memahami bagaimana sebuah sistem bekerja dan akan selalu mencoba apabila ditemukan kelemahan baru.

Metode assessment yang banyak di pakai oleh penyerang dan konsultan security adalah sebagai berikut :
1. Network enumeration, untuk indentifikasi network IP dan hosts di internet
2. Network scanning, untuk identifikasi hosts yang terbuka
3. Mengetahui kelemahan sistem (Vulnerabilities)
4. Memanfaatkan kelemahan sistem (Exploitation)

Network Enumeration
Informasi yang di dapat dari NIC WHOIS dan DNS dapat di gunakan untuk mengetahui struktur dan hosts yang terdapat pada network, tanpa perlu untuk melakukan scanning secara langsung. Langkah ini sangat penting untuk mengidentifikasi hosts yang tidak aman. Penyerang biasanya mempelajari semua peralatan dan hosts pada network.

Informasi yang di dapat dari langkah ini meliputi alamat IP, service internet yang ada, domain, sub-domain, hostname, hubungan dengan network yang lain, dan sebagainya.

Kemudian informasi ini di dipakai untuk melakukan langkah kedua, yaitu scanning, untuk mengetahui potensi kelemahan dari network. Biasanya di tahap ini juga melibatkan rekayasa sosial untuk mengetahui secara detil informasi mengenai user yang terlibat didalam sistem network. Informasi yang di dapat dari user dapat berupa nama, alamat, tanggal lahir, nomor telepon, email, dan lain sebagainya.

Network Scanning
Setelah mengetahui struktur network dari langkah sebelumnya, maka akan di lakukan scanning TCP, UDP dan ICMP untuk mengetahui hosts yang aktif, dan mengetahui service yang ada pada masing-masing hosts, seperti HTTP, FTP, SMTP, POP3.

Dalam langkah ini, akan diketahui secara detil hosts-hosts yang service TCP dan UDP-nya dapat di akses, juga peralatan2 network yang merespon ICMP, dan dapat di ketahui apakah terdapat host-based filtering, atau firewall.

Mengetahui kelemahan sistem
Vulnerabilities atau kelemahan-kelemahan yang di temukan pada program, sistem operasi, dan service-2 network, hampir setiap saat selalu ditemukan dan di umumkan pada website-website security, mailing list, forum, dan lain2.

Website yang secara aktif dan berguna untuk di gunakan dalam langkah ini seperti SecurityFocus (http://www.securityfocus.com) dan Packet Storm (http://www.packetstormsecurity.org).

Dalam langkah ini dapat dilakukan penyelidikan lebih dalam mengenai kelamahan yang ada pada sistem network. Apabila teknik scaning tidak dapat memberikan informasi lebih mendalam, maka perlu dilakukan pengujian secara manual dengan script dan tools yang berkaitan dengan memanfaatkan informasi vulnerabilities ini.

Memanfaatkan kelemahan sistem (exploit)
Setelah mengetahui kelemahan sistem network, dan memastikan bahwa script dan tools bekerja sesuai dengan yang di harapkan, maka langkah selanjutnya yang dilakukan adalah melakukan serangan dan memanfaatkan kelemahannya. Biasanya penyerang berniat untuk mendapatkan hak akses yang ilegal pada hosts, mengambil data, memodifikasi log dan memasang backdoor hingga memasang tools untuk melakukan serangan pada hosts lain pada network.