Senin, 27 April 2009

Pertemuan 5 FireWall

1. Definisi Firewall

Firewall atau tembok-api adalah sebuah sistem atau perangkat yang mengizinkan lalu lintas jaringan yang dianggap aman untuk melaluinya dan mencegah lalu lintas jaringan yang tidak aman. Umumnya, sebuah tembok-api diterapkan dalam sebuah mesin terdedikasi, yang berjalan pada pintu gerbang (gateway) antara jaringan lokal dan jaringan lainnya. Tembok-api umumnya juga digunakan untuk mengontrol akses terhadap siapa saja yang memiliki akses terhadap jaringan pribadi dari pihak luar.

Saat ini, istilah firewall menjadi istilah lazim yang merujuk pada sistem yang mengatur komunikasi antar dua jaringan yang berbeda. Mengingat saat ini banyak perusahaan yang memiliki akses ke Internet dan juga tentu saja jaringan berbadan hukum di dalamnya, maka perlindungan terhadap modal digital perusahaan tersebut dari serangan para peretas, pemata-mata, ataupun pencuri data lainnya, menjadi hakikat.

2. Jenis-jenis Firewall

Taksonomi Firewall
Firewall terbagi menjadi dua jenis, yakni sebagai berikut
• Personal Firewall: Personal Firewall didesain untuk melindungi sebuah komputer yang terhubung ke jaringan dari akses yang tidak dikehendaki. Firewall jenis ini akhir-akhir ini berevolusi menjadi sebuah kumpulan program yang bertujuan untuk mengamankan komputer secara total, dengan ditambahkannya beberapa fitur pengaman tambahan semacam perangkat proteksi terhadap virus, anti-spyware, anti-spam, dan lainnya. Bahkan beberapa produk firewall lainnya dilengkapi dengan fungsi pendeteksian gangguan keamanan jaringan (Intrusion Detection System). Contoh dari firewall jenis ini adalah Microsoft Windows Firewall (yang telah terintegrasi dalam sistem operasi Windows XP Service Pack 2, Windows Vista dan Windows Server 2003 Service Pack 1), Symantec Norton Personal Firewall, Kerio Personal Firewall, dan lain-lain. Personal Firewall secara umum hanya memiliki dua fitur utama, yakni Packet Filter Firewall dan Stateful Firewall.
• Network Firewall: Network Firewall didesain untuk melindungi jaringan secara keseluruhan dari berbagai serangan. Umumnya dijumpai dalam dua bentuk, yakni sebuah perangkat terdedikasi atau sebagai sebuah perangkat lunak yang diinstalasikan dalam sebuah server. Contoh dari firewall ini adalah Microsoft Internet Security and Acceleration Server (ISA Server), Cisco PIX, Cisco ASA, IPTables dalam sistem operasi GNU/Linux, pf dalam keluarga sistem operasi Unix BSD, serta SunScreen dari Sun Microsystems, Inc. yang dibundel dalam sistem operasi Solaris. Network Firewall secara umum memiliki beberapa fitur utama, yakni apa yang dimiliki oleh personal firewall (packet filter firewall dan stateful firewall), Circuit Level Gateway, Application Level Gateway, dan juga NAT Firewall. Network Firewall umumnya bersifat transparan (tidak terlihat) dari pengguna dan menggunakan teknologi routing untuk menentukan paket mana yang diizinkan, dan mana paket yang akan ditolak.
3. Fungsi Firewall
Secara fundamental, firewall dapat melakukan hal-hal berikut:
• Mengatur dan mengontrol lalu lintas jaringan
Fungsi pertama yang dapat dilakukan oleh firewall adalah firewall harus dapat mengatur dan mengontrol lalu lintas jaringan yang diizinkan untuk mengakses jaringan privat atau komputer yang dilindungi oleh firewall. Firewall melakukan hal yang demikian, dengan melakukan inspeksi terhadap paket-paket dan memantau koneksi yang sedang dibuat, lalu melakukan penapisan (filtering) terhadap koneksi berdasarkan hasil inspeksi paket dan koneksi tersebut.
• Melakukan autentikasi terhadap akses
Fungsi fundamental firewall yang kedua adalah firewall dapat melakukan autentikasi terhadap akses.
Protokol TCP/IP dibangun dengan premis bahwa protokol tersebut mendukung komunikasi yang terbuka. Jika dua host saling mengetahui alamat IP satu sama lainnya, maka mereka diizinkan untuk saling berkomunikasi. Pada awal-awal perkembangan Internet, hal ini boleh dianggap sebagai suatu berkah. Tapi saat ini, di saat semakin banyak yang terhubung ke Internet, mungkin kita tidak mau siapa saja yang dapat berkomunikasi dengan sistem yang kita miliki. Karenanya, firewall dilengkapi dengan fungsi autentikasi dengan menggunakan beberapa mekanisme autentikasi, sebagai berikut:
• Firewall dapat meminta input dari pengguna mengenai nama pengguna (user name) serta kata kunci (password). Metode ini sering disebut sebagai extended authentication atau xauth. Menggunakan xauth pengguna yang mencoba untuk membuat sebuah koneksi akan diminta input mengenai nama dan kata kuncinya sebelum akhirnya diizinkan oleh firewall. Umumnya, setelah koneksi diizinkan oleh kebijakan keamanan dalam firewall, firewall pun tidak perlu lagi mengisikan input password dan namanya, kecuali jika koneksi terputus dan pengguna mencoba menghubungkan dirinya kembali.
• Metode kedua adalah dengan menggunakan sertifikat digital dan kunci publik. Keunggulan metode ini dibandingkan dengan metode pertama adalah proses autentikasi dapat terjadi tanpa intervensi pengguna. Selain itu, metode ini lebih cepat dalam rangka melakukan proses autentikasi. Meskipun demikian, metode ini lebih rumit implementasinya karena membutuhkan banyak komponen seperti halnya implementasi infrastruktur kunci publik.
• Metode selanjutnya adalah dengan menggunakan Pre-Shared Key (PSK) atau kunci yang telah diberitahu kepada pengguna. Jika dibandingkan dengan sertifikat digital, PSK lebih mudah diimplenentasikan karena lebih sederhana, tetapi PSK juga mengizinkan proses autentikasi terjadi tanpa intervensi pengguna. Dengan menggunakan PSK, setiap host akan diberikan sebuah kunci yang telah ditentukan sebelumnya yang kemudian digunakan untuk proses autentikasi. Kelemahan metode ini adalah kunci PSK jarang sekali diperbarui dan banyak organisasi sering sekali menggunakan kunci yang sama untuk melakukan koneksi terhadap host-host yang berada pada jarak jauh, sehingga hal ini sama saja meruntuhkan proses autentikasi. Agar tercapai sebuah derajat keamanan yang tinggi, umumnya beberapa organisasi juga menggunakan gabungan antara metode PSK dengan xauth atau PSK dengan sertifikat digital.
Dengan mengimplementasikan proses autentikasi, firewall dapat menjamin bahwa koneksi dapat diizinkan atau tidak. Meskipun jika paket telah diizinkan dengan menggunakan inspeksi paket (PI) atau berdasarkan keadaan koneksi (SPI), jika host tersebut tidak lolos proses autentikasi, paket tersebut akan dibuang.
• Melindungi sumber daya dalam jaringan privat
Salah satu tugas firewall adalah melindungi sumber daya dari ancaman yang mungkin datang. Proteksi ini dapat diperoleh dengan menggunakan beberapa peraturan pengaturan akses (access control), penggunaan SPI, application proxy, atau kombinasi dari semuanya untuk mencegah host yang dilindungi dapat diakses oleh host-host yang mencurigakan atau dari lalu lintas jaringan yang mencurigakan. Meskipun demikian, firewall bukanlah satu-satunya metode proteksi terhadap sumber daya, dan mempercayakan proteksi terhadap sumber daya dari ancaman terhadap firewall secara eksklusif adalah salah satu kesalahan fatal. Jika sebuah host yang menjalankan sistem operasi tertentu yang memiliki lubang keamanan yang belum ditambal dikoneksikan ke Internet, firewall mungkin tidak dapat mencegah dieksploitasinya host tersebut oleh host-host lainnya, khususnya jika exploit tersebut menggunakan lalu lintas yang oleh firewall telah diizinkan (dalam konfigurasinya). Sebagai contoh, jika sebuah packet-inspection firewall mengizinkan lalu lintas HTTP ke sebuah web server yang menjalankan sebuah layanan web yang memiliki lubang keamanan yang belum ditambal, maka seorang pengguna yang "iseng" dapat saja membuat exploit untuk meruntuhkan web server tersebut karena memang web server yang bersangkutan memiliki lubang keamanan yang belum ditambal. Dalam contoh ini, web server tersebut akhirnya mengakibatkan proteksi yang ditawarkan oleh firewall menjadi tidak berguna. Hal ini disebabkan oleh firewall yang tidak dapat membedakan antara request HTTP yang mencurigakan atau tidak. Apalagi, jika firewall yang digunakan bukan application proxy. Oleh karena itulah, sumber daya yang dilindungi haruslah dipelihara dengan melakukan penambalan terhadap lubang-lubang keamanan, selain tentunya dilindungi oleh firewall.
• Mencatat semua kejadian, dan melaporkan kepada administrator
Proses inspeksi Paket
Inspeksi paket ('packet inspection) merupakan proses yang dilakukan oleh firewall untuk 'menghadang' dan memproses data dalam sebuah paket untuk menentukan bahwa paket tersebut diizinkan atau ditolak, berdasarkan kebijakan akses (access policy) yang diterapkan oleh seorang administrator. Firewall, sebelum menentukan keputusan apakah hendak menolak atau menerima komunikasi dari luar, ia harus melakukan inspeksi terhadap setiap paket (baik yang masuk ataupun yang keluar) di setiap antarmuka dan membandingkannya dengan daftar kebijakan akses. Inspeksi paket dapat dilakukan dengan melihat elemen-elemen berikut, ketika menentukan apakah hendak menolak atau menerima komunikasi:
• Alamat IP dari komputer sumber
• Port sumber pada komputer sumber
• Alamat IP dari komputer tujuan
• Port tujuan data pada komputer tujuan
• Protokol IP
• Informasi header-header yang disimpan dalam paket

Koneksi dan Keadaan Koneksi
Agar dua host TCP/IP dapat saling berkomunikasi, mereka harus saling membuat koneksi antara satu dengan lainnya. Koneksi ini memiliki dua tujuan:
1. Komputer dapat menggunakan koneksi tersebut untuk mengidentifikasikan dirinya kepada komputer lain, yang meyakinkan bahwa sistem lain yang tidak membuat koneksi tidak dapat mengirimkan data ke komputer tersebut. Firewall juga dapat menggunakan informasi koneksi untuk menentukan koneksi apa yang diizinkan oleh kebijakan akses dan menggunakannya untuk menentukan apakah paket data tersebut akan diterima atau ditolak.
2. Koneksi digunakan untuk menentukan bagaimana cara dua host tersebut akan berkomunikasi antara satu dengan yang lainnya (apakah dengan menggunakan koneksi connection-oriented, atau connectionless).

Ilustrasi mengenai percakapan antara dua buah host
Kedua tujuan tersebut dapat digunakan untuk menentukan keadaan koneksi antara dua host tersebut, seperti halnya cara manusia bercakap-cakap. Jika Amir bertanya kepada Aminah mengenai sesuatu, maka Aminah akan meresponsnya dengan jawaban yang sesuai dengan pertanyaan yang diajukan oleh Amir; Pada saat Amir melontarkan pertanyaannya kepada Aminah, keadaan percakapan tersebut adalah Amir menunggu respons dari Aminah. Komunikasi di jaringan juga mengikuti cara yang sama untuk memantau keadaan percakapan komunikasi yang terjadi.
Firewall dapat memantau informasi keadaan koneksi untuk menentukan apakah ia hendak mengizinkan lalu lintas jaringan. Umumnya hal ini dilakukan dengan memelihara sebuah tabel keadaan koneksi (dalam istilah firewall: state table) yang memantau keadaan semua komunikasi yang melewati firewall. Dengan memantau keadaan koneksi ini, firewall dapat menentukan apakah data yang melewati firewall sedang "ditunggu" oleh host yang dituju, dan jika ya, aka mengizinkannya. Jika data yang melewati firewall tidak cocok dengan keadaan koneksi yang didefinisikan oleh tabel keadaan koneksi, maka data tersebut akan ditolak. Hal ini umumnya disebut sebagai Stateful Inspection.
Stateful Packet Inspection
Ketika sebuah firewall menggabungkan stateful inspection dengan packet inspection, maka firewall tersebut dinamakan dengan Stateful Packet Inspection (SPI). SPI merupakan proses inspeksi paket yang tidak dilakukan dengan menggunakan struktur paket dan data yang terkandung dalam paket, tapi juga pada keadaan apa host-host yang saling berkomunikasi tersebut berada. SPI mengizinkan firewall untuk melakukan penapisan tidak hanya berdasarkan isi paket tersebut, tapi juga berdasarkan koneksi atau keadaan koneksi, sehingga dapat mengakibatkan firewall memiliki kemampuan yang lebih fleksibel, mudah diatur, dan memiliki skalabilitas dalam hal penapisan yang tinggi.
Salah satu keunggulan dari SPI dibandingkan dengan inspeksi paket biasa adalah bahwa ketika sebuah koneksi telah dikenali dan diizinkan (tentu saja setelah dilakukan inspeksi), umumnya sebuah kebijakan (policy) tidak dibutuhkan untuk mengizinkan komunikasi balasan karena firewall tahu respons apa yang diharapkan akan diterima. Hal ini memungkinkan inspeksi terhadap data dan perintah yang terkandung dalam sebuah paket data untuk menentukan apakah sebuah koneksi diizinkan atau tidak, lalu firewall akan secara otomatis memantau keadaan percakapan dan secara dinamis mengizinkan lalu lintas yang sesuai dengan keadaan. Ini merupakan peningkatan yang cukup signifikan jika dibandingkan dengan firewall dengan inspeksi paket biasa. Apalagi, proses ini diselesaikan tanpa adanya kebutuhan untuk mendefinisikan sebuah kebijakan untuk mengizinkan respons dan komunikasi selanjutnya. Kebanyakan firewall modern telah mendukung fungsi ini.
Melakukan autentikasi terhadap akses
Mencatat semua kejadian, dan melaporkan kepada administrator
Cara Kerja Firewall
Packet-Filter Firewall


Contoh pengaturan akses (access control) yang diterapkan dalam firewall
Pada bentuknya yang paling sederhana, sebuah firewall adalah sebuah router atau komputer yang dilengkapi dengan dua buah NIC (Network Interface Card, kartu antarmuka jaringan) yang mampu melakukan penapisan atau penyaringan terhadap paket-paket yang masuk. Perangkat jenis ini umumnya disebut dengan packet-filtering router.
Firewall jenis ini bekerja dengan cara membandingkan alamat sumber dari paket-paket tersebut dengan kebijakan pengontrolan akses yang terdaftar dalam Access Control List firewall, router tersebut akan mencoba memutuskan apakah hendak meneruskan paket yang masuk tersebut ke tujuannya atau menghentikannya. Pada bentuk yang lebih sederhana lagi, firewall hanya melakukan pengujian terhadap alamat IP atau nama domain yang menjadi sumber paket dan akan menentukan apakah hendak meneruskan atau menolak paket tersebut. Meskipun demikian, packet-filtering router tidak dapat digunakan untuk memberikan akses (atau menolaknya) dengan menggunakan basis hak-hak yang dimiliki oleh pengguna.

Cara kerja packet filter firewall
Packet-filtering router juga dapat dikonfigurasikan agar menghentikan beberapa jenis lalu lintas jaringan dan tentu saja mengizinkannya. Umumnya, hal ini dilakukan dengan mengaktifkan/menonaktifkan port TCP/IP dalam sistem firewall tersebut. Sebagai contoh, port 25 yang digunakan oleh [[|SMTP|Protokol SMTP]] (Simple Mail Transfer Protocol) umumnya dibiarkan terbuka oleh beberapa firewall untuk mengizinkan surat elektronik dari Internet masuk ke dalam jaringan privat, sementara port lainnya seperti port 23 yang digunakan oleh Protokol Telnet dapat dinonaktifkan untuk mencegah pengguna Internet untuk mengakses layanan yang terdapat dalam jaringan privat tersebut. Firewall juga dapat memberikan semacam pengecualian (exception) agar beberapa aplikasi dapat melewati firewall tersebut. Dengan menggunakan pendekatan ini, keamanan akan lebih kuat tapi memiliki kelemahan yang signifikan yakni kerumitan konfigurasi terhadap firewall: daftar Access Control List firewall akan membesar seiring dengan banyaknya alamat IP, nama domain, atau port yang dimasukkan ke dalamnya, selain tentunya juga exception yang diberlakukan.
Circuit Level Gateway


Cara kerja circuit level firewall
Firewall jenis lainnya adalah Circuit-Level Gateway, yang umumnya berupa komponen dalam sebuah proxy server. Firewall jenis ini beroperasi pada level yang lebih tinggi dalam model referensi tujuh lapis OSI (bekerja pada lapisan sesi/session layer) daripada Packet Filter Firewall. Modifikasi ini membuat firewall jenis ini berguna dalam rangka menyembunyikan informasi mengenai jaringan terproteksi, meskipun firewall ini tidak melakukan penyaringan terhadap paket-paket individual yang mengalir dalam koneksi.
Dengan menggunakan firewall jenis ini, koneksi yang terjadi antara pengguna dan jaringan pun disembunyikan dari pengguna. Pengguna akan dihadapkan secara langsung dengan firewall pada saat proses pembuatan koneksi dan firewall pun akan membentuk koneksi dengan sumber daya jaringan yang hendak diakses oleh pengguna setelah mengubah alamat IP dari paket yang ditransmisikan oleh dua belah pihak. Hal ini mengakibatkan terjadinya sebuah sirkuit virtual (virtual circuit) antara pengguna dan sumber daya jaringan yang ia akses.
Firewall ini dianggap lebih aman dibandingkan dengan Packet-Filtering Firewall, karena pengguna eksternal tidak dapat melihat alamat IP jaringan internal dalam paket-paket yang ia terima, melainkan alamat IP dari firewall. Protokol yang populer digunakan sebagai Circuit-Level Gateway adalah SOCKS v5.
Application Level Firewall

Application Level Firewall (disebut juga sebagai application proxy atau application level gateway)
Firewall jenis lainnya adalah Application Level Gateway (atau Application-Level Firewall atau sering juga disebut sebagai Proxy Firewall), yang umumnya juga merupakan komponen dari sebuah proxy server. Firewall ini tidak mengizinkan paket yang datang untuk melewati firewall secara langsung. Tetapi, aplikasi proxy yang berjalan dalam komputer yang menjalankan firewall akan meneruskan permintaan tersebut kepada layanan yang tersedia dalam jaringan privat dan kemudian meneruskan respons dari permintaan tersebut kepada komputer yang membuat permintaan pertama kali yang terletak dalam jaringan publik yang tidak aman.
Umumnya, firewall jenis ini akan melakukan autentikasi terlebih dahulu terhadap pengguna sebelum mengizinkan pengguna tersebut untuk mengakses jaringan. Selain itu, firewall ini juga mengimplementasikan mekanisme auditing dan pencatatan (logging) sebagai bagian dari kebijakan keamanan yang diterapkannya. Application Level Firewall juga umumnya mengharuskan beberapa konfigurasi yang diberlakukan pada pengguna untuk mengizinkan mesin klien agar dapat berfungsi. Sebagai contoh, jika sebuah proxy FTP dikonfigurasikan di atas sebuah application layer gateway, proxy tersebut dapat dikonfigurasikan untuk mengizinlan beberapa perintah FTP, dan menolak beberapa perintah lainnya. Jenis ini paling sering diimplementasikan pada proxy SMTP sehingga mereka dapat menerima surat elektronik dari luar (tanpa menampakkan alamat e-mail internal), lalu meneruskan e-mail tersebut kepada e-mail server dalam jaringan. Tetapi, karena adanya pemrosesan yang lebih rumit, firewall jenis ini mengharuskan komputer yang dikonfigurasikan sebagai application gateway memiliki spesifikasi yang tinggi, dan tentu saja jauh lebih lambat dibandingkan dengan packet-filter firewall.
NAT Firewall
NAT (Network Address Translation) Firewall secara otomatis menyediakan proteksi terhadap sistem yang berada di balik firewall karena NAT Firewall hanya mengizinkan koneksi yang datang dari komputer-komputer yang berada di balik firewall. Tujuan dari NAT adalah untuk melakukan multiplexing terhadap lalu lintas dari jaringan internal untuk kemudian menyampaikannya kepada jaringan yang lebih luas (MAN, WAN atau Internet) seolah-olah paket tersebut datang dari sebuah alamat IP atau beberapa alamat IP. NAT Firewall membuat tabel dalam memori yang mengandung informasi mengenai koneksi yang dilihat oleh firewall. Tabel ini akan memetakan alamat jaringan internal ke alamat eksternal. Kemampuan untuk menaruh keseluruhan jaringan di belakang sebuah alamat IP didasarkan terhadap pemetaan terhadap port-port dalam NAT firewall.
Stateful Firewall


Cara kerja stateful firewall
Stateful Firewall merupakan sebuah firewall yang menggabungkan keunggulan yang ditawarkan oleh packet-filtering firewall, NAT Firewall, Circuit-Level Firewall dan Proxy Firewall dalam satu sistem. Stateful Firewall dapat melakukan filtering terhadap lalu lintas berdasarkan karakteristik paket, seperti halnya packet-filtering firewall, dan juga memiliki pengecekan terhadap sesi koneksi untuk meyakinkan bahwa sesi koneksi yang terbentuk tersebut diizinlan. Tidak seperti Proxy Firewall atau Circuit Level Firewall, Stateful Firewall umumnya didesain agar lebih transparan (seperti halnya packet-filtering firewall atau NAT firewall). Tetapi, stateful firewall juga mencakup beberapa aspek yang dimiliki oleh application level firewall, sebab ia juga melakukan inspeksi terhadap data yang datang dari lapisan aplikasi (application layer) dengan menggunakan layanan tertentu. Firewall ini hanya tersedia pada beberapa firewall kelas atas, semacam Cisco PIX. Karena menggabungkan keunggulan jenis-jenis firewall lainnya, stateful firewall menjadi lebih kompleks.
Virtual Firewall
Virtual Firewall adalah sebutan untuk beberapa firewall logis yang berada dalam sebuah perangkat fisik (komputer atau perangkat firewall lainnya). Pengaturan ini mengizinkan beberapa jaringan agar dapat diproteksi oleh sebuah firewall yang unik yang menjalankan kebijakan keamanan yang juga unik, cukup dengan menggunakan satu buah perangkat. Dengan menggunakan firewall jenis ini, sebuah ISP (Internet Service Provider) dapat menyediakan layanan firewall kepada para pelanggannya, sehingga mengamankan lalu lintas jaringan mereka, hanya dengan menggunakan satu buah perangkat. Hal ini jelas merupakan penghematan biaya yang signifikan, meski firewall jenis ini hanya tersedia pada firewall kelas atas, seperti Cisco PIX 535.
Transparent Firewall
Transparent Firewall (juga dikenal sebagai bridging firewall) bukanlah sebuah firewall yang murni, tetapi ia hanya berupa turunan dari stateful Firewall. Daripada firewall-firewall lainnya yang beroperasi pada lapisan IP ke atas, transparent firewall bekerja pada lapisan Data-Link Layer, dan kemudian ia memantau lapisan-lapisan yang ada di atasnya. Selain itu, transparent firewall juga dapat melakukan apa yang dapat dilakukan oleh packet-filtering firewall, seperti halnya stateful firewall dan tidak terlihat oleh pengguna (karena itulah, ia disebut sebagai Transparent Firewall).
Intinya, transparent firewall bekerja sebagai sebuah bridge yang bertugas untuk menyaring lalu lintas jaringan antara dua segmen jaringan. Dengan menggunakan transparent firewall, keamanan sebuah segmen jaringan pun dapat diperkuat, tanpa harus mengaplikasikan NAT Filter. Transparent Firewall menawarkan tiga buah keuntungan, yakni sebagai berikut:
• Konfigurasi yang mudah (bahkan beberapa produk mengklaim sebagai "Zero Configuration"). Hal ini memang karena transparent firewall dihubungkan secara langsung dengan jaringan yang hendak diproteksinya, dengan memodifikasi sedikit atau tanpa memodifikasi konfigurasi firewall tersebut. Karena ia bekerja pada data-link layer, pengubahan alamat IP pun tidak dibutuhkan. Firewall juga dapat dikonfigurasikan untuk melakukan segmentasi terhadap sebuah subnet jaringan antara jaringan yang memiliki keamanan yang rendah dan keamanan yang tinggi atau dapat juga untuk melindungi sebuah host, jika memang diperlukan.
• Kinerja yang tinggi. Hal ini disebabkan oleh firewall yang berjalan dalam lapisan data-link lebih sederhana dibandingkan dengan firewall yang berjalan dalam lapisan yang lebih tinggi. Karena bekerja lebih sederhana, maka kebutuhan pemrosesan pun lebih kecil dibandingkan dengan firewall yang berjalan pada lapisan yang tinggi, dan akhirnya performa yang ditunjukannya pun lebih tinggi.
• Tidak terlihat oleh pengguna (stealth). Hal ini memang dikarenakan Transparent Firewall bekerja pada lapisan data-link, dan tidak membutuhkan alamat IP yang ditetapkan untuknya (kecuali untuk melakukan manajemen terhadapnya, jika memang jenisnya managed firewall). Karena itulah, transparent firewall tidak dapat terlihat oleh para penyerang. Karena tidak dapat diraih oleh penyerang (tidak memiliki alamat IP), penyerang pun tidak dapat menyerangnya.
Selengkapnya...

Pertemuan 4 Mengamankan Sistem Informasi

Mengamankan Sistem Informasi

Pada umunya, pengamanan dapat dikategorikan menjadi dua jenis: pencegahan (preventif) dan pengobatan (recovery). Usaha pencegahan dilakukan agar sistem informasi tidak memiliki lubang keamanan, sementara usaha-usaha pengobatan dilakukan apabila lubang keamanan sudah dieksploitasi.Mengatur akses (Access Control).Salah satu cara yang umum digunakan untuk mengamankan informasi adalah dengan mengatur akses ke informasi melalui mekanisme “authentication” dan “access control”.

Implementasi dari mekanisme ini antara lain dengan menggunakan “password”.Menutup servis yang tidak digunakanSeringkali sistem (perangkat keras dan/atau perangkat lunak) diberikan dengan beberapa servis dijalankan sebagai default. Sebagai contoh, pada sistem UNIX servis-servis berikut sering dipasang dari vendornya: finger, telnet, ftp, smtp, pop, echo, dan seterusnya. Servis tersebut tidak semuanya dibutuhkan. Untuk mengamankan sistem, servis yang tidak diperlukan di server (komputer) tersebut sebaiknya dimatikan.Memasang Proteksi. Untuk lebih meningkatkan keamanan sistem informasi, proteksi dapat ditambahkan. Proteksi ini dapat berupa filter (secara umum) dan yang lebih spesifik adalah firewall. Filter dapat digunakan untuk memfilter e-mail, informasi, akses, atau bahkan dalam level packet.FirewallFirewall merupakan sebuah perangkat yang diletakkan antara Internet dengan jaringan internal. Informasi yang keluar atau masuk harus melalui firewall ini. Tujuan utama dari firewall adalah untuk menjaga (prevent) agar akses (ke dalam maupun ke luar) dari orang yang tidak berwenang (unauthorized access) tidak dapat dilakukan.Pemantau adanya serangan. Sistem pemantau (monitoring system) digunakan untuk mengetahui adanya tamu tak diundang (intruder) atau adanya serangan (attack). Nama lain dari sistem ini adalah “intruder detection system” (IDS). Sistem ini dapat memberitahu administrator melalui e-mail maupun melalui mekanisme lain seperti melalui pager. Pemantau integritas system Pemantau integritas sistem dijalankan secara berkala untuk menguji integratitas sistem. Salah satu contoh program yang umum digunakan di sistem UNIX adalah program Tripwire. Program paket Tripwire dapat digunakan untuk memantau adanya perubahan pada berkas.Audit: Mengamati Berkas LogSegala (sebagian besar) kegiatan penggunaan sistem dapat dicatat dalam berkas yang biasanya disebut “logfile” atau “log” saja. Berkas log ini sangat berguna untuk mengamati penyimpangan yang terjadi. Kegagalan untuk masuk ke sistem (login), misalnya, tersimpan di dalam berkas log. Untuk itu para administrator diwajibkan untuk rajin memelihara dan menganalisa berkas log yang dimilikinyaBackup secara rutinSeringkali tamu tak diundang (intruder) masuk ke dalam sistem dan merusak sistem dengan menghapus berkas-berkas yang dapat ditemui. Jika intruder ini berhasil menjebol sistem dan masuk sebagai super user (administrator), maka ada kemungkinan dia dapat menghapus seluruh berkas.Penggunaan Enkripsi untuk meningkatkan keamananSalah satau mekanisme untuk meningkatkan keamanan adalah dengan menggunakan teknologi enkripsi. Data-data yang anda kirimkan diubah sedemikian rupa sehingga tidak mudah disadap. Banyak servis di Internet yang masih menggunakan “plain text” untuk authentication, seperti penggunaan pasangan userid dan password. Informasi ini dapat dilihat dengan mudah oleh program penyadap atau pengendus (sniffer).Keamanan Server WWWKeamanan server WWW biasanya merupakan masalah dari seorang administrator. Dengan memasang server WWW di sistem anda, maka anda membuka akses (meskipun secara terbatas) kepada orang luar. Apabila server anda terhubung ke Internet dan memang server WWW anda disiapkan untuk publik, maka anda harus lebih berhati-hati sebab anda membuka pintu akses ke seluruh dunia.Membatasi akses melalui Kontrol AksesSebagai penyedia informasi (dalam bentuk berkas-berkas), sering diinginkan pembatasan akses. Misalnya, diinginkan agar hanya orang-orang tertentu yang dapat mengakses berkas (informasi) tertentu. Pada prinsipnya ini adalah masalah kontrol akses.Proteksi halaman dengan menggunakan passwordSalah satu mekanisme mengatur akses adalah dengan menggunakan pasangan userid (user identification) dan password. Untuk server Web yang berbasis Apache[6], akses ke sebuah halaman (atau sekumpulan berkas yang terletak di sebuah directory di sistem Unix) dapat diatur dengan menggunakan berkas “.htaccess”.Mengetahui Jenis ServerInformasi tentang web server yang digunakan dapat dimanfaatkan oleh perusak untuk melancarkan serangan sesuai dengan tipe server dan operating system yang digunakan.Keamanan Program CGICommon Gateway Interface (CGI) digunakan untuk menghubungkan sistem WWW dengan software lain di server web. Adanya CGI memungkinkan hubungan interaktif antara user dan server web.Keamanan client WWWDalam bagian terdahulu dibahas masalah yang berhubungan dengan server WWW. Dalam bagian ini akan dibahas masalah-masalah yang berhubungan dengan keamanan client WWW, yaitu pemakai (pengunjung) biasa. Keamanan di sisi client biasanya berhubungan dengan masalah privacy dan penyisipan virus atau trojan horse.

Mengatur akses control
Salah satu cara yang umum digunakan untuk mengamankan informasi adalah dengan mengatur akses ke informasi melalui mekanisme “authentication” dan “access control”. Implementasi dari mekanisme ini antara lain dengan menggunakan “password”.

Merubah Properties User
Klik tombol Properties untuk melihat properties dari user. Ada 2 Pilihan utama disamping 8 pilihan anggota group yaitu :
1. Standard User (Power User)
User dapat merubah beberapa file sistem, menginstall program yang tidak berpengaruh terhadap file sistem windows
2. Restricted User (User Groups)
User dapat menggunakan komputer dan menyimpan dokumen tetapi tidak dapat menginstall program dan merubah setting sistem windows.

Pengaturan User (lanjutan)
• Passwords dan .NET Passwords digunakan sebagai fasilitas untuk mengatur data password user yang dapat menggunakan komputer dan email.
• Advanced user management digunakan untuk mengatur group dan user pemakai komputer secara lebih detail.
Kriteria pembuatan password
• Jangan menggunakan nama login, nama pertama atau akhir beserta variasinya dan nama pasangan atau anak.
• Jangan menggunakan informasi lainnya yang mudah didapat tentang anda seperti No telp, Tgl Lahir.
• Gunakan password yang merupakan kombinasi antara huruf kapital dan huruf kecil dan angka.
• Gunakan special “32 karakter ALT”, diketikkan dengan menahan tombol Alt ketika mengetik angka antara 128 and 255 pada tombol angka dengan indikator Num Lock on.
• Gunakan Pasword yang mudah diketikkan, tanpa perlu melihat pada keyboard.
Menutup servis yang tidak digunakan
• Seringkali sistem (perangkat keras dan/atau perangkat lunak) diberikan dengan beberapa servis dijalankan sebagai default. contoh, pada sistem UNIX servis-servis berikut sering dipasang dari vendornya: finger, telnet, ftp, smtp, pop, echo, dan seterusnya.
• Servis tersebut tidak semuanyadibutuhkan. Untuk mengamankan sistem, servis yang tidak diperlukan di server (komputer) tersebut sebaiknya dimatikan.
Memasang Proteksi
• Untuk lebih meningkatkan keamanan sistem informasi, proteksi dapat ditambahkan. Proteksi ini dapat berupa filter (secara umum) dan yang lebih spesifik adalah firewall. Filter dapat digunakan untuk memfilter e-mail, informasi, akses, atau bahkan dalam level packet.
• contoh, di sistem UNIX ada paket program “tcpwrapper” yang dapat digunakan untuk membatasi akses kepada servis atau aplikasi tertentu. Misalnya, servis untuk “telnet” dapat dibatasi untuk untuk sistem yang memiliki nomor IP tertentu, atau memiliki domain tertentu.
• Sementara firewall dapat digunakan untuk melakukan filter secara umum.
Selengkapnya...

Pertemuan 3 Evaluasi Sistem Keamanan Informasi

EVALUASI SISTEM KEAMANAN INFORMASI

Pentingnya Evaluasi
- Lubang keamanan diketemukan hampir setiap hari.
- Kesalahan konfigurasi bisa terjadi.
- Penambahan perangkat baru yang mengubah konfigurasi yang sudah ada.


Sumber Lubang Keamanan
- Disain kurang baik
- TCP/IP sequence numbering, IP spoofing
- Algoritma enkripsi yang lemah
- Implementasi kurang baik
- Implementasi terburu-buru
- Bad programming, out-of-bound array
- sloppy programming
- Kesalahan konfigurasi
- Berkas yang esensial menjadi writeable for all. Contoh: berkas password, aliases, log.
- Default account masih aktif
- False sense of security
- Kesalahan menggunakan program.
- rm -rf /
- del *,*

Penguji Keamanan Sistem
- Automated tools berbasis informasi tentang security hole
- Crack: memecahkan password
- Tripwire: integritas berkas dan direktori
- Satan/Saint: Menguji keamanan sistem melalui Web
- Cops

Probing Services
- Melihat servis yang diberikan oleh sebuah server
- Servis diberikan melalui TCP atau UDP dengan port tertentu.
- telnet, port 23
- SMTP, port 25
- HTTP/WWW, port 80
- POP, port 110
- Menguji secara manual lewat telnet
- Menguji SMTP: telnet localhost 25

Mendeteksi Probling
�� Untuk mendeteksi adanya probing ke sistem informasi
dapat dipasang suatu program yang memonitornya.
Probing biasanya meninggalkan jejak di berkas log di
sistem. Dengan mengamati entry di dalam berkas log
dapat diketahui adanya probing.
Contoh : root# tail /var/log/syslog
May 16 15:40:42 epson tcplogd: "Syn probe"
notebook[192.168.1.4]:[8422]-
epson[192.168.1.2]:[635]
Dari contoh diatas diketahui IP : 192.168.1.4
melakukan probing
Program Probe lain : courtney, portsentry dan tcplogd.

OS Finger Printing
Mengetahui operating system (OS) dari target yang akan diserang merupakan salah satu pekerjaan pertama yang dilakukan oleh seorang cracker. Setelah mengetahui OS yang dituju, dia dapat melihat database kelemahan sistem yang dituju. Fingerprinting merupakan istilah yang umum digunakan untuk menganalisa OS sistem yang dituju. Beberapa cara konvensional antara lain : telnet, ftp, netcat, dll.
Jika server tersebut kebetulan menyediakan suatu servis, seringkali ada banner yang menunjukkan nama OS beserta versinya. Misalkan dilakukan dengan telnet dengan port tertentu, atau dapat juga menggunakan program tertentu.
Cara fingerprinting yang lebih canggih adalah dengan menganalisa respon sistem terhadap permintaan (request) tertentu. Misalnya dengan menganalisa nomor urut packet TCP/IP yang dikeluarkan oleh server tersebut dapat dipersempit ruang jenis dari OS yang digunakan.
Ada beberapa tools untuk melakukan deteksi OS ini antara lain: nmap, dan queso

Penggunaan Program Penyerang
Salah satu cara untuk mengetahui kelemahan sistem informasi anda adalah dengan menyerang diri sendiri dengan paket-paket program penyerang (attack) yang dapat diperoleh di Internet.
�� Internet Security Scanner (ISS) atau Security Analysis Tool for Auditing (SATAN)
program ini akan menginformasikan kelemahan dari sistem yang dituju dan
dapat melakukan scanning seluruh domain atau sub network.
�� TCP Wrapper untuk memonitor jaringan komputer
�� Crack untuk melakukan testing password security.
�� IP Scanner, IP Sniper, Network Analyzer DLL
Selain program penyerang yang sifatnya agresif
melumpuhkan sistem yang dituju, ada juga program
penyerang yang sifatnya melakukan pencurian
atau penyadapan data. Untuk penyadapan data,
biasanya dikenal dengan istilah “sniffer”.
Contoh program penyadap (sniffer) antara lain:
• pcapture (Unix)
• sniffit (Unix)
• tcpdump (Unix)
• WebXRay (Windows)

Penggunaan Sistem Pemantau Jaringan
Sistem pemantau jaringan (network monitoring) dapat digunakan untuk mengetahui adanya lubang keamaman. Misalnya apabila anda memiliki sebuah server yang semestinya hanya dapat diakses oleh orang dari dalam, akan tetapi dari pemantau jaringan dapat terlihat bahwa ada yang mencoba mengakses melalui tempat lain. Selain itu dengan pemantau jaringan dapat juga dilihat usaha-usaha untuk melumpuhkan sistem dengan melalui denial of service attack (DoS) dengan mengirimkan packet yang jumlahnya berlebihan. Network monitoring biasanya dilakukan dengan menggunakan protokol SNMP (Simple Network Management Protocol).

Program network monitoring / management :
~ Etherboy (Windows), Etherman (Unix)
~ HP Openview (Windows)
~ Packetboy (Windows), Packetman (Unix)
~ SNMP Collector (Windows)
~ Webboy (Windows)

Program pemantau jaringan yang tidak menggunakan SNMP :
• iplog, icmplog, updlog, yang merupakan bagian dari paket iplog untuk memantau paket
IP, ICMP, UDP.
• iptraf, sudah termasuk dalam paket Linux Debian netdiag
• netwatch, sudah termasuk dalam paket Linux Debian netdiag
• ntop, memantau jaringan seperti program top yang memantau proses di sistem Unix
• trafshow, menunjukkan traffic antar hosts dalam bentuk text-mode

emantau Adanya Serangan
��Sistem pemantau (monitoring system) digunakan untuk
mengetahui adanya tamu tak diundang (intruder) atau
adanya serangan (attack). Nama lain dari sistem ini
adalah “intruder detection system” (IDS). Sistem ini dapat
memberitahu administrator melalui e-mail maupun
melalui mekanisme lain seperti melalui pager.
Contoh software IDS antara lain:
• Autobuse, mendeteksi probing dengan memonitor logfile.
• Courtney dan portsentry, mendeteksi probing (port scanning)
dengan memonitor packet yang lalu lalang. Portsentry bahkan
dapat memasukkan IP penyerang dalam filter tcpwrapper
(langsung dimasukkan kedalam berkas /etc/hosts.deny)
• Shadow dari SANS
• Snort, mendeteksi pola (pattern) pada paket yang lewat dan
mengirimkan alert jika pola tersebut terdeteksi.

Honeypot
Honeypot merupakan sumber sistem informasi yang bersifat terbuka (opensif) yang memfocuskan pada proses pemgumpulan informasi tentang aktifitas ilegal si Attacker yang mencoba menyusup dan mengeksplorasi authorisasi system komputer (server).Dengan Honyepot kita bisa mengetahui tingkah laku si Attacker diantaranya : port yang diserang, perintah2 yang dipergunakan, dan jenis aktifitas lainnya yang bisa direkam.Honeypot akan melindungi server asli yang kita miliki... krn kita mendirikan server palsu yang tanpa disadari sebenarnya si Attacker sedang menyerang sistem yang bukan sebenarnya... sehingga terperangkap.

Apa sih tujuan dari Honeypot ?
.Pendeteksian Dini (Early Detection).Metode inilah yang akan memberitahukan & mengingatkan kita pada serangan-serangan terhadap system server oleh orang-orang yang tidak memiliki otoritas.
. Pendeteksian Ancaman Baru (New Threat Detection)Metode ini merupakan medote yang digunakan utk mengathui ancaman2 baru beserta teknik2 penyerangan baru yang digunakan oleh si Attacker dalam usaha untuk mendapatkan 'Escalating Priviledge'.
. Mengenel Si Attacker (Know Your Enemy)Metode yang digunakan untuk mengetahui siapa si Attacker sesungguhnya, apa yang dikerjakan oleh Attacker juga metode serta teknik yang dipergunakan.
. Menyelamatkan System (Safe The System)Metode yang digunakan utk menjebak si Attacker sehingga Attacker berusaha tetap melakukan tindakan hanya pada Honeypot system sehingga server asli tetap dalam kondisi yang aman (-- not 100% secure)
. Mengacaukan Pola Fikir Attacker (Make a crodit Attacker Logic)Meteode yang membuat pola fikir Attacker menjadi bingung dalam menghapi pola system network yang tidak sebenarnya.
. Membagun Pertahanan (Building System Defense)Honeypot yang dibangun akan memberikan pertahanan yang lebih bagus dikarenakan si Attacker tidak akan langsung melakukan penyerangan terhadap server sesungguhnya.
. Mencegah Proses Hacking (Hacking Process Prevention)System pertahanan yang kita tanam dan kita bangun akan mengurangi serangan terhadapat proses hacking.

Hal-hal yang terdapat di dalam Honeypot :
. Network Devices HardwareUntuk mendirikan honeypot berati kita juga membutuhkan perangkat jaringan komputer.
. Monitoring or Logging ToolsHoneypot yang kita dirikan dapat memonitor secara langsung aktifitas si Attacker
. Alerting MechanismHoneypot dapat memberikan layanan messanger utk administrator apabila terdapat serangan2.
. KeyStroke LoggerHoneypot dapat memberikan informasi tentang apa saja yang dilakukan oleh Attacker termasuk ketikan2 dari papan keyboard si Attacker.
. Packet AnalyzerHoneypot dapat memberikan informasi ttg packet data yang diberikan oleh Attacker ke system honeypot server
. Forensic ToolsHoneypot dapat memberikan informasi ttg System forensic yang digunakan Attacker terhdapa system.
Dimana Honeypot ditempatkan ?. Penempatan secara langsung dengan menghadapkan honeypot dengan internet tanpa adanya firewall.
. Penempatan secara tidak langsung, dimana honeypot berada diantara firewall dan koneksi internet.
. Penempatan honeypot pada DMZ.
Selengkapnya...

Rabu, 01 April 2009

Pertemuan 2 Dasar-Dasar Kamanan Sistem Informasi

Pengamanan Informasi


Pengamanan data dapat dilakukan dengan dua cara, yaitu:

1. Steganography
Dalam Wikipedia disebutkan bahwa steganografi berasal dari bahasa Yunani yaitu steganos yang artinya adalah penyamaran atau penyembuyian dan graphein yang artinya adalah tulisan. Jadi steganografi dapat diartikan sebagai seni menyamarkan/menyembunyikan pesan tertulis kedalam pesan lainnya.

Penyembunyian atau penyamaran pesan ini dibuat sedemikian rupa sehingga pihak lain tidak mengetahui bahwa ada ‘pesan lain’ didalam pesan yang dikirimkan. Hanya pihak penerima yang sah saja yang dapat mengetahui ‘pesan lain’ tersebut.
Berbeda dengan kriptografi, dimana karakter pesan diubah/diacak menjadi bentuk lain yang tidak bermakna, dalam steganografi pesannya itu sendiri tetap dipertahankan hanya dalam penyampaiannya dikaburkan/disembunyikan dengan berbagai cara.
Pesan yang disampaikan secara kriptografi menjadi mencurigakan karena ke-‘tidak bermakna’-annya tersebut. Sedangkan pesan dalam steganografi, terlihat seperti pesan biasa sehingga kecil kemungkinan untuk dicurigai.
Tehnik penyembunyian/pengaburan pesan ini ada bermacam-macam, dari cara yang kuno pada jaman dahulu hingga yang canggih di abad komputer ini. Misalnya menulis pesan diatas panel kayu yang kemudian disembunyikan dengan melapisi lilin sebagai penutupnya yang dikenal dengan istilah wax tablets. Menurut sejarah pernah dilakukan oleh Demeratus (orang Yunani) pada tahun 400 sebelum masehi.
Dalam Perang Dunia II tercatat tehnik penyembuyian teks pesan yang diperkecil menjadi sebuah titik (microdots) yang ditaruh dibawah perangko dan penyembunyian pesan dengan menggunakan tinta transparan (invisible ink).
Penyembuyian/penyamaran pesan dapat juga menggunakan gambar, lukisan, sebuah artikel, daftar belanjaan, majalah atau media elektronis/digital yang biasa disebut digital watermarking seperti file MP3, videoclip, gambar digital, file dokumen dan lain-lain yang difungsikan sebagai covertext atau penutup pesan.
Bahwa tidak ada pengamanan yang sempurna berlaku juga dalam steganografi, karena metode-metode pendeteksi pesan dalam steganografi pun banyak dikembangkan yang disebut steganalisis. Steganalisis merupakan tehnik menganalisa untuk mengungkapkan keberadaan steganografi.

2. Kriptografi
Kriptografi (cryptography) merupakan ilmu dan seni untuk menjaga
pesan agar aman. (Cryptography is the art and science of keeping
messages secure. [27]) “Crypto” berarti “secret” (rahasia) dan “graphy”
berarti “writing” (tulisan) [2]. Para pelaku atau praktisi kriptografi
disebut cryptographers. Sebuah algoritma kriptografik (cryptographic
algorithm), disebut cipher, merupakan persamaan matematik yang
digunakan untuk proses enkripsi dan dekripsi. Biasanya kedua
persamaan matematik (untuk enkripsi dan dekripsi) tersebut
memiliki hubungan matematis yang cukup erat.
Proses yang dilakukan untuk mengamankan sebuah pesan (yang
disebut plaintext) menjadi pesan yang tersembunyi (disebut
ciphertext) adalah enkripsi (encryption). Ciphertext adalah pesan yang
sudah tidak dapat dibaca dengan mudah. Menurut ISO 7498-2,
terminologi yang lebih tepat digunakan adalah “encipher”.
Proses sebaliknya, untuk mengubah ciphertext menjadi plaintext,
disebut dekripsi (decryption). Menurut ISO 7498-2, terminologi yang
lebih tepat untuk proses ini adalah “decipher”.
Cryptanalysis adalah seni dan ilmu untuk memecahkan ciphertext
tanpa bantuan kunci. Cryptanalyst adalah pelaku atau praktisi yang
menjalankan cryptanalysis.

Elemen dari Enkripsi

Enkripsi digunakan untuk menyandikan data-data atau informasi
sehingga tidak dapat dibaca oleh orang yang tidak berhak. Dengan
enkripsi data anda disandikan (encrypted) dengan menggunakan
sebuah kunci (key). Untuk membuka (decrypt) data tersebut
digunakan juga sebuah kunci yang dapat sama dengan kunci untuk
mengenkripsi (untuk kasus private key cryptography) atau dengan
kunci yang berbeda (untuk kasus public key cryptography).
Secara matematis, proses atau fungsi enkripsi (E) dapat dituliskan
sebagai:E(M)=C
dimana: M adalah plaintext (message) dan C adalah ciphertext.
Proses atau fungsi dekripsi (D) dapat dituliskan sebagai:D(C)=M


Ada beberapa elemen dari enkripsi yang akan dijabarkan dalam
beberapa paragraf di bawah ini.
Algoritma dari Enkripsi dan Dekripsi. Algoritma dari enkripsi adalah
fungsi-fungsi yang digunakan untuk melakukan fungsi enkripsi dan
dekripsi. Algoritma yang digunakan menentukan kekuatan dari
enkripsi, dan ini biasanya dibuktikan dengan basis matematika.
Kunci yang digunakan dan panjangnya kunci. Kekuatan dari penyandian
bergantung kepada kunci yang digunakan. Beberapa algoritma
enkripsi memiliki kelemahan pada kunci yang digunakan. Untuk
itu, kunci yang lemah tersebut tidak boleh digunakan. Selain itu,
panjangnya kunci, yang biasanya dalam ukuran bit, juga
menentukan kekuatan dari enkripsi. Kunci yang lebih panjang
biasanya lebih aman dari kunci yang pendek. Jadi enkripsi dengan
menggunakan kunci 128-bit lebih sukar dipecahkan dengan
algoritma enkripsi yang sama tetapi dengan kunci 56-bit. Semakin
panjang sebuah kunci, semakin besar keyspace yang harus dijalani
untuk mencari kunci dengan cara brute force attack atau coba-coba
karena keyspace yang harus dilihat merupakan pangkat dari
bilangan 2. Jadi kunci 128-bit memiliki keyspace 2128, sedangkan
kunci 56-bit memiliki keyspace 256. Artinya semakin lama kunci
baru bisa ketahuan.
Plaintext. Plaintext adalah pesan atau informasi yang dikirimkan.
E(M) = C
D(C) = M

Ada beberapa elemen dari enkripsi yang akan dijabarkan dalam
beberapa paragraf di bawah ini.
Algoritma dari Enkripsi dan Dekripsi. Algoritma dari enkripsi adalah
fungsi-fungsi yang digunakan untuk melakukan fungsi enkripsi dan
dekripsi. Algoritma yang digunakan menentukan kekuatan dari
enkripsi, dan ini biasanya dibuktikan dengan basis matematika.
Kunci yang digunakan dan panjangnya kunci. Kekuatan dari penyandian
bergantung kepada kunci yang digunakan. Beberapa algoritma
enkripsi memiliki kelemahan pada kunci yang digunakan. Untuk
itu, kunci yang lemah tersebut tidak boleh digunakan. Selain itu,
panjangnya kunci, yang biasanya dalam ukuran bit, juga
menentukan kekuatan dari enkripsi. Kunci yang lebih panjang
biasanya lebih aman dari kunci yang pendek. Jadi enkripsi dengan
menggunakan kunci 128-bit lebih sukar dipecahkan dengan
algoritma enkripsi yang sama tetapi dengan kunci 56-bit. Semakin
panjang sebuah kunci, semakin besar keyspace yang harus dijalani
untuk mencari kunci dengan cara brute force attack atau coba-coba
karena keyspace yang harus dilihat merupakan pangkat dari
bilangan 2. Jadi kunci 128-bit memiliki keyspace 2128, sedangkan
kunci 56-bit memiliki keyspace 256. Artinya semakin lama kunci
baru bisa ketahuan.
Plaintext adalah pesan atau informasi yang dikirimkan.Ciphertext adalah informasi yang sudah dienkripsi.


Enigma Rotor Machine
Enigma rotor machine merupakan sebuah alat enkripsi yang
digunakan dalam perang dunia ke dua. Dia terdiri atas beberapa
rotor dan kabel yang silang menyilang menyebabkan substitusi
alfabet yang selalu berubah.


Penggunaan Kunci
Salah satu cara untuk menambah tingkat keamanan sebuah
algoritma enkripsi dan dekripsi adalah dengan menggunakan
sebuah kunci (key) yang biasanya disebut K. Kunci K ini dapat
memiliki rentang (range) yang cukup lebar. Rentang dari
kemungkinan angka (harga) dari kunci K ini disebut keyspace. Kunci
K ini digunakan dalam proses enkripsi dan dekripsi sehingga
persamaan matematisnya menjadi:
(5)
(6)
Keamanan sistem yang digunakan kemudian tidak bergantung
kepada pengetahuan algoritma yang digunakan, melainkan
bergantung kepada kunci yang digunakan. Artinya, algoritma dapat
diketahui oleh umum atau dipublikasikan. Usaha untuk
memecahkan keamanan sistem menjadi usaha untuk memecahkan
atau mencari kunci yang digunakan.
Usaha mencari kunci sangat bergantung kepada keyspace dari kunci
K. Apabila keyspace ini cukup kecil, maka cara brute force atau
mencoba semua kunci dapat dilakukan. Akan tetapi apabila
keyspace dari kunci yang digunakan cukup besar, maka usaha
untuk mencoba semua kombinasi kunci menjadi tidak realistis.
Keyspace dari DES, misalnya, memiliki 56-bit. Untuk mencoba
semua kombinasi yang ada diperlukan kombinasi. (Cerita
tentang kelemahan DES akan diutarakan di bagian lain.)


Aplikasi dari Enkripsi
Contoh penggunaan enkripsi adalah program Pretty Good Privacy
(PGP) [11], dan secure shell (SSH). Program PGP digunakan untuk
mengenkripsi dan menambahkan digital siganture dalam e-mail yang
dikirim. Program SSH digunakan untuk mengenkripsi sesion telnet
ke sebuah host. Hal ini akan dibahas lebih lanjut pada bagian lain.


Perbedaan prinsip dan penggunaan public-key cryptography dan
symmetric cryptography membutuhkan diskusi tersendiri. Pada
symmetric cryptography, satu kunci yang sama digunakan untuk
melakukan enkripsi dan dekripsi. Pada sistem public-key
cryptography, enkripsi dan dekripsi menggunakan kunci yang
berbeda.
Sejak dikembangkannya public-key cryptography, selalu timbul
pertanyaan mana yang lebih baik. Para pakar kriptografi
mengatakan bahwa keduanya tidak dapat dibandingkan karena
mereka memecahkan masalah dalam domain yang berbeda.
Symmetric cryptography merupakan hal yang terbaik untuk
mengenkripsi data. Kecepatannya dan keamanan akan choosenciphertext
attack merupakan kelebihannya. Sementara itu public-key
cryptography dapat melakukan hal-hal lain lebih baik daripada
symmetric cryptography, misalnya dalam hal key management.
(Diskusi lebih jauh dapat dilihat di referensi [26].)


Selengkapnya...

Selasa, 24 Maret 2009

Pengenalan Kemanan Jaringan

Keamanan dan Manajemen Perusahaan

Seringkali sulit untuk membujuk management perusahaan atau
pemilik sistem informasi untuk melakukan investasi di bidang
keamanan. Di tahun 1997 majalah Information Week melakukan
survey terhadap 1271 system atau network manager di Amerika
Serikat. Hanya 22% yang menganggap keamanan sistem informasi
sebagai komponen sangat penting (“extremely important”).
Mereka
lebih mementingkan “reducing cost” dan “improving competitiveness”
meskipun perbaikan sistem informasi setelah dirusak justru dapat
menelan biaya yang lebih banyak.
Meskipun sering terlihat sebagai besaran yang tidak dapat langsung
diukur dengan uang (intangible), keamanan sebuah sistem informasi
sebetulnya dapat diukur dengan besaran yang dapat diukur dengan
uang (tangible). Dengan adanya ukuran yang terlihat, mudahmudahan
pihak management dapat mengerti pentingnya investasi
di bidang keamanan. Berikut ini adalah berapa contoh kegiatan yang
dapat anda lakukan:
• Hitung kerugian apabila sistem informasi anda tidak bekerja
selama 1 jam, selama 1 hari, 1 minggu, dan 1 bulan.
• Hitung kerugian apabila ada kesalahan informasi (data) pada
sistem informasi anda. Misalnya web site anda mengumumkan
harga sebuah barang yang berbeda dengan harga yang ada di
toko anda.
• Hitung kerugian apabila ada data yang hilang, misalnya berapa
kerugian yang diderita apabila daftar pelanggan dan invoice
hilang dari sistem anda. Berapa biaya yang dibutuhkan untuk
rekonstruksi data.
Lawrie Brown "Lecturer Notes for Use with Cryptography and network Security by William Stallings"menyarankan menggunakan “Risk
Management Model” untuk menghadapi ancaman (managing threats).
Pengelolaan terhadap keamanan dapat dilihat dari sisi pengelolaan resiko (risk management).
Terdapat tiga komponen yang memberikan kontribusi kepada Risk, yaitu:
  1. Assets terdiri dari hardware, software, dokumnentasi, data, komunikasi, lingkungan dan manusia.
  2. Threats (ancaman) terdiri dari pemakai (users), teroris, kecelakaan, carakcers, penjahat, kriminal, nasib, (acts of God), intel luar negeri (foreign intellegence)
  3. Vulneribalities (kelemahan) terdiri dari software bugs, hardware bugs, radiasi, tapping, crostalk, cracker via telepon, storage media


Untuk menanggulangi resiko (Risk) tersebut dilakukan apa yang
disebut “countermeasures” yang dapat berupa:
• usaha untuk mengurangi Threat
• usaha untuk mengurangi Vulnerability
• usaha untuk mengurangi impak (impact)
• mendeteksi kejadian yang tidak bersahabat (hostile event)

Klasifiksai Kejahatan Komputer


Kejahatan komputer dapat digolongkan kepada yang sangat
berbahaya sampai ke yang hanya mengesalkan (annoying). Menurut
David Icove [13] berdasarkan lubang keamanan, keamanan dapat
diklasifikasikan menjadi empat, yaitu:
1. Keamanan yang bersifat fisik (physical security): termasuk akses
orang ke gedung, peralatan, dan media yang digunakan. Beberapa
bekas penjahat komputer (crackers) mengatakan bahwa
mereka sering pergi ke tempat sampah untuk mencari berkas-berkas
yang mungkin memiliki informasi tentang keamanan. Misalnya
pernah diketemukan coretan password atau manual yang
dibuang tanpa dihancurkan. Wiretapping atau hal-hal yang berhubungan
dengan akses ke kabel atau komputer yang digunakan
juga dapat dimasukkan ke dalam kelas ini.
Denial of service, yaitu akibat yang ditimbulkan sehingga servis
tidak dapat diterima oleh pemakai juga dapat dimasukkan ke
dalam kelas ini. Denial of service dapat dilakukan misalnya dengan
mematikan peralatan atau membanjiri saluran komunikasi dengan
pesan-pesan (yang dapat berisi apa saja karena yang diutamakan
adalah banyaknya jumlah pesan). Beberapa waktu yang
lalu ada lubang keamanan dari implementasi protokol TCP/IP
yang dikenal dengan istilah Syn Flood Attack, dimana sistem (host)
yang dituju dibanjiri oleh permintaan sehingga dia menjadi terlalu
sibuk dan bahkan dapat berakibat macetnya sistem (hang).
2. Keamanan yang berhubungan dengan orang (personel): termasuk
identifikasi, dan profil resiko dari orang yang mempunyai
akses (pekerja). Seringkali kelemahan keamanan sistem informasi
bergantung kepada manusia (pemakai dan pengelola). Ada
sebuah teknik yang dikenal dengan istilah “social engineering”
yang sering digunakan oleh kriminal untuk berpura-pura sebagai
orang yang berhak mengakses informasi. Misalnya kriminal ini
berpura-pura sebagai pemakai yang lupa passwordnya dan
minta agar diganti menjadi kata lain.
3. Keamanan dari data dan media serta teknik komunikasi (communications).
Yang termasuk di dalam kelas ini adalah kelemahan
dalam software yang digunakan untuk mengelola data. Seorang
kriminal dapat memasang virus atau trojan horse sehingga dapat
mengumpulkan informasi (seperti password) yang semestinya
tidak berhak diakses.
4. Keamanan dalam operasi: termasuk prosedur yang digunakan
untuk mengatur dan mengelola sistem keamanan, dan juga termasuk
prosedur setelah serangan (post attack recovery).

Aspek Dari Keamanan Jaringan

Garfinkel mengemukakan bahwa keamanan komputer
(computer security) melingkupi empat aspek, yaitu privacy, integrity,
authentication, dan availability. Selain keempat hal di atas, masih
ada dua aspek lain yang juga sering dibahas dalam kaitannya
dengan electronic commerce, yaitu access control dan nonrepudiation.
Privacy / Confidentiality
Inti utama aspek privacy atau confidentiality adalah usaha untuk
menjaga informasi dari orang yang tidak berhak mengakses. Privacy
lebih kearah data-data yang sifatnya privat sedangkan
confidentiality biasanya berhubungan dengan data yang diberikan
ke pihak lain untuk keperluan tertentu (misalnya sebagai bagian
dari pendaftaran sebuah servis) dan hanya diperbolehkan untuk
keperluan tertentu tersebut. Contoh hal yang berhubungan dengan
privacy adalah e-mail seorang pemakai (user) tidak boleh dibaca oleh
administrator. Contoh confidential information adalah data-data yang
sifatnya pribadi (seperti nama, tempat tanggal lahir, social security
number, agama, status perkawinan, penyakit yang pernah diderita,
nomor kartu kredit, dan sebagainya) merupakan data-data yang
ingin diproteksi penggunaan dan penyebarannya. Contoh lain dari
confidentiality adalah daftar pelanggan dari sebuah Internet Service
Provider (ISP).
Serangan terhadap aspek privacy misalnya adalah usaha untuk
melakukan penyadapan (dengan program sniffer). Usaha-usaha
yang dapat dilakukan untuk meningkatkan privacy dan
confidentiality adalah dengan menggunakan teknologi kriptografi.
Integrity
Aspek ini menekankan bahwa informasi tidak boleh diubah tanpa
seijin pemilik informasi. Adanya virus, trojan horse, atau pemakai
lain yang mengubah informasi tanpa ijin merupakan contoh
masalah yang harus dihadapi. Sebuah e-mail dapat saja “ditangkap”
(intercept) di tengah jalan, diubah isinya, kemudian diteruskan ke
alamat yang dituju. Dengan kata lain, integritas dari informasi
sudah tidak terjaga. Penggunaan enkripsi dan digital signature,
misalnya, dapat mengatasi masalah ini.
Salah satu contoh kasus trojan horse adalah distribusi paket
program TCP Wrapper (yaitu program populer yang dapat
digunakan untuk mengatur dan membatasi akses TCP/IP) yang
dimodifikasi oleh orang yang tidak bertanggung jawab. Jika anda
memasang program yang berisi trojan horse tersebut, maka ketika
anda merakit (compile) program tersebut, dia akan mengirimkan
eMail kepada orang tertentu yang kemudian memperbolehkan dia
masuk ke sistem anda. Informasi ini berasal dari CERT Advisory,
“CA-99-01 Trojan-TCP-Wrappers” yang didistribusikan 21 Januari
1999. Contoh serangan lain adalah yang disebut “man in the middle
attack” dimana seseorang menempatkan diri di tengah pembicaraan
dan menyamar sebagai orang lain.
Authentication
Aspek ini berhubungan dengan metoda untuk menyatakan bahwa
informasi betul-betul asli, atau orang yang mengakses atau
memberikan informasi adalah betul-betul orang yang dimaksud.
Masalah pertama, membuktikan keaslian dokumen, dapat
dilakukan dengan teknologi watermarking dan digital signature.
Watermarking juga dapat digunakan untuk menjaga “intelectual
property”, yaitu dengan menandai dokumen atau hasil karya dengan
“tanda tangan” pembuat . Masalah kedua biasanya berhubungan
dengan access control, yaitu berkaitan dengan pembatasan orang
yang dapat mengakses informasi. Dalam hal ini pengguna harus
menunjukkan bukti bahwa memang dia adalah pengguna yang sah,
misalnya dengan menggunakan password, biometric (ciri-ciri khas
orang), dan sejenisnya. Penggunaan teknologi smart card, saat ini
kelihatannya dapat meningkatkan keamanan aspek ini.
Availability
Aspek availability atau ketersediaan berhubungan dengan
ketersediaan informasi ketika dibutuhkan. Sistem informasi yang
diserang atau dijebol dapat menghambat atau meniadakan akses ke
informasi. Contoh hambatan adalah serangan yang sering disebut
dengan “denial of service attack” (DoS attack), dimana server dikirimi
permintaan (biasanya palsu) yang bertubi-tubi atau permintaan
yang diluar perkiraan sehingga tidak dapat melayani permintaan
lain atau bahkan sampai down, hang, crash. Contoh lain adalah
adanya mailbomb, dimana seorang pemakai dikirimi e-mail bertubitubi
(katakan ribuan e-mail) dengan ukuran yang besar sehingga
sang pemakai tidak dapat membuka e-mailnya atau kesulitan
mengakses e-mailnya (apalagi jika akses dilakukan melalui saluran
telepon). Bayangkan apabila anda dikirimi 5000 email dan anda
harus mengambil (download) email tersebut melalui telepon dari
rumah.
Serangan terhadap availability dalam bentuk DoS attack merupakan
yang terpopuler pada saat naskah ini ditulis. Pada bagian lain akan
dibahas tentang serangan DoS ini secara lebih rinci.
Access Control
Aspek ini berhubungan dengan cara pengaturan akses kepada
informasi. Hal ini biasanya berhubungan dengan masalah
authentication dan juga privacy. Access control seringkali dilakukan
dengan menggunakan kombinasi userid/password atau dengan
menggunakan mekanisme lain.
Non-repudiation
Aspek ini menjaga agar seseorang tidak dapat menyangkal telah
melakukan sebuah transaksi. Sebagai contoh, seseorang yang
mengirimkan email untuk memesan barang tidak dapat menyangkal
bahwa dia telah mengirimkan email tersebut. Aspek ini sangat
penting dalam hal electronic commerce. Penggunaan digital
signature dan teknologi kriptografi secara umum dapat menjaga
aspek ini. Akan tetapi hal ini masih harus didukung oleh hukum
sehingga status dari digital signature itu jelas legal. Hal ini akan
dibahas lebih rinci pada bagian tersendiri.


Serangan Terhadap Keamanan Sistem
Informasi


Security attack, atau serangan terhadap keamanan sistem informasi,
dapat dilihat dari sudut peranan komputer atau jaringan komputer
yang fungsinya adalah sebagai penyedia informasi. Menurut W.
Stallings [27] ada beberapa kemungkinan serangan (attack):
• Interruption: Perangkat sistem menjadi rusak atau tidak tersedia.
Serangan ditujukan kepada ketersediaan (availability) dari sistem.
Contoh serangan adalah “denial of service attack”.
• Interception: Pihak yang tidak berwenang berhasil mengakses aset
atau informasi. Contoh dari serangan ini adalah penyadapan
(wiretapping).
• Modification: Pihak yang tidak berwenang tidak saja berhasil
mengakses, akan tetapi dapat juga mengubah (tamper) aset.
Contoh dari serangan ini antara lain adalah mengubah isi dari
web site dengan pesan-pesan yang merugikan pemilik web site.
• Fabrication: Pihak yang tidak berwenang menyisipkan objek palsu
ke dalam sistem. Contoh dari serangan jenis ini adalah
memasukkan pesan-pesan palsu seperti e-mail palsu ke dalam
jaringan komputer.

Faktor-Faktor Penyebab Resiko Dalam Jaringan Komputer

  • Kelemahan manusia (human error)
  • Kelemahan perangkat keras komputer
  • Kelemahan sistem operasi jaringan
  • Kelemahan sistem jaringan komunikasi
Ancaman Jaringan Komputer

• FISIK
  • Pencurian perangkat keras komputer atau
  • perangkat jaringan
  • Kerusakan pada komputer dan perangkatkomunikasi jaringan
  • Wiretapping
  • Bencana alam
• LOGIK
  • Kerusakan pada sistem operasi atau aplikasi
  • Virus
  • Sniffing

Beberapa Bentuk Ancaman Jaringan
• Sniffer
Peralatan yang dapat memonitor proses yang sedang
berlangsung
• Spoofing
Penggunaan komputer untuk meniru (dengan cara menimpa
identitas atau alamat IP.
• Phreaking
Perilaku menjadikan sistem pengamanan telepon melemah
• Remote Attack
Segala bentuk serangan terhadap suatu mesin dimana
penyerangnya tidak memiliki kendali terhadap mesin tersebut
karena dilakukan dari jarak jaruh di luar sistem jaringan atau media
transmisi
•Hole
Kondisi dari software atau hardware yang bisa diakses oleh
pemakai yang tidak memiliki otoritas atau meningkatnya tingkat
pengaksesan tanpa melalui proses autorisasi
• Hacker
Orang yang secara diam-diam mempelajari sistem yang
biasanya sukar dimengerti untuk kemudian mengelolanya dan
men-share hasil ujicoba yang dilakukannya. Hacker tidak merusak sistem
• Craker
– Orang yang secara diam-diam mempelajari sistem dengan maksud jahat
– Muncul karena sifat dasar manusia yang selalu ingin membangun (salah satunya merusak)

Ciri-ciri cracker :
• Bisa membuat program C, C++ atau pearl
• Memiliki pengetahuan TCP/IP
• Menggunakan internet lebih dari 50 jam per-bulan
• Menguasai sistem operasi UNIX atau VMS
• Suka mengoleksi software atau hardware lama
• Terhubung ke internet untuk menjalankan aksinya
• Melakukan aksinya pada malam hari, dengan alasan waktu yang memungkinkan, jalur komunikasi tidak padat, tidak mudah diketahui
orang lain

Penyebab cracker melakukan penyerangan :
• spite, kecewa, balas dendam
• sport, petualangan
• profit, mencari keuntungan dari imbalan orang lain
• stupidity, mencari perhatian
• cruriosity, mencari perhatian
• politics, alasan politis


Ciri-ciri target yang dibobol cracker :
• Sulit ditentukan
• Biasanya organisasi besar dan financial dengan sistem
pengamanan yang canggih
• Bila yang dibobol jaringan kecil biasanya sistem pengamanannya
lemah, dan pemiliknya baru dalam bidang internet

Ciri-ciri target yang “berhasil” dibobol cracker :
• Pengguna bisa mengakses, bisa masuk ke jaringan tanpa “nama”
dan “password”
• Pengganggu bisa mengakses, merusak, mengubah atau
sejenisnya terhadap data
• Pengganggu bisa mengambil alih kendali sistem
• Sistem hang, gagal bekerja, reboot atau sistem berada dalam
kondisi tidak dapat dioperasikan

Manajemen Resiko
• Pengumpulan Informasi
• Analisis
• Output

Pengumpulan Informasi
• Identifikasi Assets
– Perangakat Keras
– Perangkat Lunak (Sistem Operasi dan Aplikasi)
– Perangkat Jaringan dan Komunikasi Data
– Pengguna Jaringan
– Lingkungan
– Sarana Pendukung lainnya
Selengkapnya...

 

Maya Ihara. Design By: SkinCorner