Enkripsi atau mengkodekan merupakan
proses untuk mengubah sebuah pesan (informasi) sehingga tidak dapat dilihat
tanpa menggunakan suatu kata kunci. Enkripsi adalah cara yang paling efektif
untuk memperoleh pengamanan data. Untuk membaca file yang di-enkrip, kita harus
mempunyai akses terhadap kata sandi yang memungkinkan kita men-dekrip pesan
tersebut. Data yang tidak di-enkrip disebut plaintext, sedangkan yang di-enkrip
disebut ciphertext. Sebuah pesan dalam bentuk plaintext diubah dengan
encryption menjadi ciphertext. Proses sebaliknya, untuk mengembalikan
ciphertext ke plaintext disebut decryption. Menurut ISO 7498-2 istilah yang
lebih tepat untuk encryption adalah enchipher sedangkan istilah yang lebih
tepat untuk decryption adalah decipher. Encryption menggunakan algoritma
tertentu untuk mengacak pesan. Umumnya algoritma enkripsi dapat dibagi menjadi
dua kelompok: algoritma untuk private key system dan algoritma untuk public key
system. Contoh untuk algoritma yang digunakan di private key system adalah DES
dan IDEA, sedangkan contoh algoritma yang digunakan di public key system adalah
RSA dan ECC.
Tahapan Autentikasi :
Autentikasi untuk mengetahui lokasi
dari peralatan pada suatu simpul jaringan (data link layer dan network layer)
Autentikasi untuk mengenal sistem
operasi yang terhubung ke jaringan (transport layer)
Autentikasi untuk mengetahui
fungsi/proses yang sedang terjadi di suatu simpul jaringan (session dan
presentation layer)
Autentikasi untuk mengenali user dan
aplikasi yang digunakan (application layer)
Cara melindungi LAN :
1. VLAN (Virtual Local Area Network)
Suatu model jaringan yang tidak
terbatas pada lokasi fisik seperti LAN , hal ini mengakibatkan suatu network
dapat dikonfigurasi secara virtual tanpa harus menuruti lokasi fisik peralatan.
Penggunaan VLAN akan membuat pengaturan jaringan menjadi sangat fleksibel
dimana dapat dibuat segmen yang bergantung pada organisasi atau departemen,
tanpa bergantung pada lokasi workstation.
2. Firewall
Suatu cara/sistem/mekanisme yang
diterapkan baik terhadap hardware , software ataupun sistem itu sendiri dengan
tujuan untuk melindungi, baik dengan menyaring, membatasi atau bahkan menolak
suatu atau semua hubungan/kegiatan suatu segmen pada jaringan pribadi dengan
jaringan luar yang bukan merupakan ruang lingkupnya. Segmen tersebut dapat
merupakan sebuah workstation, server, router, atau local area network (LAN)
anda.
3.RADIUS / TACACS Server TACACS
(Terminal Access Controller Access-Control SystemServer)
merupakan protokol yang menyediakan
layanan akses kontrol pada router, switch, dan peralatan jaringan
lainnyadigunakan untuk mempermudah dalam pengelolaan authentikasi,
authorization dan accounting menjadi terpusat. Bayangkan jika kita mempunyai
banyak router atau switch, jika kita ingin mengganti password maka akan
memerlukan waktu yang banyak jika mengganti satu persatu maka disinilah Server
tacacs berperan.
Tujuan Keamanan Jaringan Komputer :
• Availability / Ketersediaan
• Reliability / Kehandalan
• Confidentiality / Kerahasiaan
Faktor- Faktor Penyebab Resiko Dalam
Jaringan Komputer :
Jaringan komputer moderen adalah
entitas dari banyak komponen kecil. Disini akan dijelaskan beberapa titik lemah
dari komponen yang berbeda.
1. Weak protocols (protokol yang
lemah).
Komunikasi Jaringan komputer
menggunakan protokol antara client dan server. Kebanyakan dari protokol yang
digunakan saat ini merupakan protocol yang telah digunakan beberapa dasawarsa
belakangan. Protokol lama ini, seperti File Transmission Protocol (FTP), TFTP
ataupun telnet, tidak didesain untuk menjadi benar-benar aman. Malahan faktanya
kebanyakan dari protocol ini sudah seharusnya digantikan dengan protokol yang
jauh lebih aman, dikarenakan banyak titik rawan yang dapat menyebabkan pengguna
(user) yang tidak bertanggung jawab dapat melakukan eksploitasi. Sebagai
contoh, seseorang dengan mudah dapat mengawasi “traffic” dari telnet dan dapat
mencari tahu nama user dan password.
2. Software issue (masalah perangkat
lunak).
Menjadi sesuatu yang mudah untuk
melakukan eksploitasi celah pada perangkat lunak. Celah ini biasanya tidak
secara sengaja dibuat tapi kebanyakan semua orang mengalami kerugian dari
kelemahan seperti ini. Celah ini biasanya dibakukan bahwa apapun yang
dijalankan oleh “root” pasti mempunyai akses “root”, yaitu kemampuan untuk
melakukan segalanya didalam system tersebut. Eksploitasi yang sebenarnya
mengambil keuntungan dari lemahnya penanganan data yang tidak diduga oleh
pengguna, sebagai contoh, buffer overflow dari celah kemanan”format string”
merupakan hal yang biasa saat ini. Eksploitasi terhadap celah tersebut akan
menuju kepada situasi dimana hak akses pengguna akan dapat dinaikkan ke tingkat
akses yang lebih tinggi. Ini disebut juga dengan “rooting” sebuah “host” dikarenakan
penyerang biasanya membidik untuk mendapatkan hak akses “root”.
3. Buffer overflow.
“Buffer overflow” mempunyai arti sama
dengan istilahnya. Programmer telah mengalokasikan sekian besar memory untuk
beberapa variabel spesifik. Bagaimanapun juga, dengan celah keamanan ini, maka
variabel ini dapat dipaksa menuliskan kedalam “stack” tanpa harus melakukan
pengecekan kembali bila panjang variabel tersebut diizinkan. Jika data yang
berada didalam buffer ternyata lebih panjang daripada yang diharapkan, maka kemungkinan
akan melakukan penulisan kembali stack frame dari “return address” sehingga
alamat dari proses eksekusi program dapat dirubah. Penulis “malicious code”
biasanya akan akan melakukan eksploitasi terhadap penulisan kembali “return
address” dengan merubah “return address” kepada “shellcode” pilihan mereka
sendiri untuk melakukan pembatalan akses “shell” dengan menggunakan hak akses
dari “user-id” dari program yang tereksploitasi tersebut. “Shellcode” ini tidak
harus disertakan dalam program yang tereksploitasi, tetapi biasanya dituliskan
ke dalam bagian celah dari “buffer”. Ini merupakan trik yang biasa digunakan
pada variabel “environment” seperti ini. “Buffer overflow” adalah masalah
fundamental berdasarkan dari arsitektur komputasi modern.Ruang untuk variabel
dan kode itu sendiri tidak dapat dipisahkan kedalam blok yang berbeda didalam
“memory”. Sebuah perubahan didalam arsitektur dapat dengan mudah menyelesaikan
masalah ini, tapi perubahan bukan sesuatu yang mudah untuk dilakukan
dikarenakan arsitektur yang digunakan saat ini sudah sangat banyak digunakan.
4. Format string.
Metode penyerangan “format string”
merupakan sebuah metode penyerangan baru, ini diumumkan kepada publik diakhir
tahun 2000. Metode ini ditemukan oleh hacker 6 bulan sebelum diumumkan kepada
masyarakat luas. Secara fundamental celah ini mengingatkan kita akan miripnya
dengan celah “buffer overflow”. Kecuali celah tersebut tercipta dikarenakan
kemalasan (laziness), ketidakpedulian (ignorance), atau programmer yang
mempunyai skill pas-pasan. Celah “format string” biasanya disebabkan oleh
kurangnya “format string” seperti “%s” di beberapa bagian dari program yang
menciptakan output, sebagai contoh fungsi printf() di C/C++. Bila input
diberikan dengan melewatkan “format string” seperti “%d” dan “%s”kepada program
maka dengan mudah melihat “stack dump” atau penggunaan teknik seperti pada
“buffer overflow”. Celah ini berdasarkan pada “truncated format string” dari
“input”. Ini merujuk kepada situasi dimana secara external, data yang disuplai
yang diinterpretasikan sebagai bagian dari “format string argument”. Dengan
secara spesial membuat suatu input dapat menyebabkan program yang bermasalah
menunjukkan isi memory dan juga kontrol kepada eksekusi program dengan
menuliskan apa saja kepada lokasi pilihan sama seperti pada eksploitasi
“overflow”.
5. Hardware issue (masalah perangkat
keras).
Biasanya perangkat keras tidak
mempunyai masalah pada penyerangan yang terjadi. Perangkat lunak yang
dijalankan oleh perangkat keras dan kemungkinan kurangnya dokumentasi
spesifikasi teknis merupakan suatu titik lemah. Berikut ini merupakan contoh
bagaimana perangkat keras mempunyai masalah dengan keamanan. ·
6. Misconfiguration (konfigurasi yang
salah).
Kesalahan konfigurasi pada server dan
perangkat keras (hardware) sangat sering membuat para penyusup dapat masuk
kedalam suatu system dengan mudah. Sebagai contoh, penggantian halaman depan
suatu situs dikarenakan kesalahan konfigurasi pada perangkat lunak “www-server”
ataupun modulnya. Konfigurasi yang tidak hati-hati dapat menyebabkan usaha
penyusupan menjadi jauh lebih mudah terlebih jika ada pilihan lain yang dapat
diambil oleh para penyusup. Sebagai contoh, sebuah server yang menjalankan
beberapa layanan SSH dapat dengan mudah disusupi apabila mengijinkan penggunaan
protokol versi 1 atau “remote root login” (RLOGIN) diizinkan. Kesalahan
konfigurasi yang jelas ini menyebabkan terbukanya celah kemanan dengan
penggunaan protokol versi 1, seperti “buffer overflow” yang dapat menyebabkan
penyusup dapat mengambil hak akses “root” ataupun juga dengan menggunakan
metode “brute-force password” untuk dapat menebak password “root”.
7. DoS, DDoS.
Serangan Denial of Service adalah
serangan yang mengakibatkan setiap korbannya akan berhenti merespon atau
“bertingkah” tidak lazim. Contoh serangan klasik “DoS” adalah “Ping of Death”
dan “Syn Flood” yang untungnya sudah hampir tidak dapat dijumpai pada saat
sekarang. Biasanya serangan DoS menyerang celah yang terdapat pada layanan
system atau pada protokol jaringan kerja untuk menyebabkan layanan tidak dapat
digunakan. Tehnik yang lainnya adalah menyebabkan system korban “tersedak”
dikarenakan banyaknya paket yang diterima yang harus diproses melebihi
kemampuan dari system itu sendiri atau menyebabkan terjadinya “bottleneck” pada
bandwidth yang dipakai oleh system. Serangan “Distributed Denial of Service”
(DDoS) merupakan tipe serangan yang lebih terorganisasi. Jenis serangan ini
biasanya membutuhkan persiapan dan juga taktik untuk dapat menjatuhkan
korbannya dengan cepat dan sebelumnya biasanya para penyerang akan mencari
system kecil yang dapat dikuasai dan setelah mendapat banyak system kecil maka
penyerang akan menyerang system yang besar dengan menjalankan ribuan bahkan
puluhan ribu system kecil secara bersamaan untuk menjatuhkan sebuah system yang
besar. Worm “MyDoom” yang terkenal itu dibuat untuk melancarkan serangan
besar-besaran dari puluhan ribu system yang terinfeksi untuk menyerang situs
www.sco.com. Serangan itu sukses besar yang menyebabkan www.sco.com harus
dipindahkan dari DNS untuk dapat menjalankan kembali layanan.
8. Viruses (virus).
Salah satu definisi dari program virus
adalah menyisipkan dirinya kepada objek lain seperti file executable dan
beberapa jenis dokumen yang banyak dipakai orang. Selain kemampuan untuk
mereplikasi dirinya sendiri, virus dapat menyimpan dan menjalankan sebuah tugas
spesifik. Tugas tersebut bisa bersifat menghancurkan atau sekedar menampilkan
sesuatu ke layar monitor korban dan bisa saja bertugas untuk mencari suatu
jenis file untuk dikirimkan secara acak ke internet bahkan dapat melakukan
format pada hard disk korban. Virus yang tersebar di internet yang belum
dikenali tidak akan dapat ditangkap oleh program antivirus ataupun semacamnya
yang meskipun korban telah terjangkiti tetapi tidak mengetahuinya. Perangkat
lunak antivirus biasanya mengenali virus atau calon virus melalui tanda yang
spesifik yang terdapat pada bagian inti virus itu sendiri. Beberapa virus
menggunakan tehnik polymorphic agar luput terdeteksi oleh antivirus. Kebiasaan
virus polymorphic adalah merubah dirinya pada setiap infeksi yang terjadi yang
menyebabkan pendeteksian menjadi jauh lebih sulit. Praktisnya setiap platform
komputer mempunyai virus masing-masing dan ada beberapa virus yang mempunyai
kemampuan menjangkiti beberapa platform yang berbeda (multi-platform). Virus
multi-platform biasanya menyerang executable ataupun dokumen pada Windows
dikarenakan kepopuleran oleh system operasi Microsoft Windows dan Microsoft
Office sehingga banyak ditemukan virus yang bertujuan untuk menghancurkan
“kerajaan” Microsoft Corp.
9. Worms.
Sebuah “worm” komputer merupakan
program yang menyebar sendiri dengan cara mengirimkan dirinya sendiri ke system
yang lainnya. Worm tidak akan menyisipkan dirinya kepada objek lain. Pada saat
sekarang banyak terjadi penyebaran worm dikarenakan para pengguna komputer
tidak melakukan update pada perangkat lunak yang mereka gunakan, yang dimana
ini berarti, sebagai contoh, Outlook Express mempunyai fungsi yang dapat
mengizinkan eksekusi pada file sisipan (attachment) e-mail tanpa campur tangan
dari pengguna komputer itu sendiri.
10. Trojan horse.
Trojan horse adalah program yang
berpura-pura tidak berbahaya tetapi sebenarnya mereka sesuatu yang lain. Salah
fungsi yang biasa terdapat pada “trojan horse” adalah melakukan instalasi
“backdoor” sehingga si pembuat program dapat menyusup kedalam komputer atau
system korban.
11. Junk mail (surat sampah).
“junk mail” sesungguhnya bukan suatu
ancaman keamanan yang serius, tetapi dengan penyebaran virus dan worm melalui
e-mail, maka jumlah junk mail juga ikut bertambah. Ancaman keamanan
sesungguhnya bukan dari e-mail sampah itu sendiri melainkan file sisipannya
(attachment) yang patut diwaspadai dikarenakan penyebaran virus dan worm
menggunakan metode ini.
12. Time bomb (bom waktu).
“Time bomb” adalah program yang
mempunyai tugas tetapi dengan waktu tertentu baru akan menjalankan tugasnya.
Beberapa jenis virus dan worm juga mempunyai kesamaan fungsi dengan aplikasi
ini. Time bomb berbeda dengan virus ataupun worm dikarenakan dia tidak
melakukan replikasi terhadap dirinya tetapi melakukan instalasi sendiri kedalam
system.
- Hacker
1. Orang yang secara diam-diam
mempelajari sistem yang biasanya sukar dimengerti untuk kemudian mengelolanya
dan men-share hasil ujicoba yang dilakukannya.
2. Hacker tidak merusak sistem
- Craker
1. Orang yang secara diam-diam
mempelajari sistem dengan maksud jahat
2. 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
Different Types of Attacking (jenis-jenis
serangan) Scanning.
a) Scanning
adalah metode bagaimana caranya
mendapatkan informasi sebanyak-banyaknya dari IP/Network korban. Biasanya
“scanning” dijalankan secara otomatis mengingat “scanning” pada “multiple-host”
sangat menyita waktu. “Hackers” biasanya mengumpulkan informasi dari hasil
“scanning” ini. Dengan mengumpulkan informasi yang dibutuhkan maka “hackers”
dapat menyiapkan serangan yang akan dilancarkannya. Nmap merupakan sebuah
network scanner yang banyak digunakan oleh para professional dibidang network
security, walaupun ada tool yang khusus dibuat untuk tujuan hacking, tapi belum
dapat mengalahkan kepopuleran nmap. Nessus juga merupakan network scanner tapi
juga akan melaporkan apabila terdapat celah keamana pada target yang
diperiksanya. Hacker biasanya menggunakan Nessus untuk pengumpulan informasi
sebelum benar-benar meluncurkan serangan. Untungnya beberapa scanner
meninggalkan “jejak” yang unik yang memungkinkan para System administrator
untuk mengetahui bahwa system mereka telah di-scanning sehingga mereka bisa
segera membaca artikel terbaru yang berhubungan dengan informasi log.
b) Password cracking.
“Brute-force” adalah sebuah tehnik
dimana akan dicobakan semua kemungkinan kata kunci (password) untuk bisa ditebak
untuk bisa mengakses kedalam sebuah system. Membongkar kata kunci dengan tehnik
ini sangat lambat tapi efisien, semua kata kunci dapat ditebak asalkan waktu
tersedia. Untuk membalikkan “hash” pada kata kunci merupakan suatu yang hal
yang mustahil, tapi ada beberapa cara untuk membongkar kata kunci tersebut
walaupun tingkat keberhasilannya tergantung dari kuat lemahnya pemilihan kata
kunci oleh pengguna. Bila seseorang dapat mengambil data “hash” yang menyimpan
kata kunci maka cara yang lumayan efisien untuk dipakai adalah dengan
menggunakan metode “dictionary attack” yang dapat dilakukan oleh utility John
The Ripper. Masih terdapat beberapa cara lainnya seperti “hash look-up table”
tapi sangat menyita “resources” dan waktu.
c) Rootkit.
“Rootkit” adalah alat untuk
menghilangkan jejak apabila telah dilakukan penyusupan. Rootkit biasanya
mengikutkan beberapa tool yang dipakai oleh system dengan sudah dimodifikasi
sehingga dapat menutupi jejak. Sebagai contoh, memodifikasi “PS” di linux atau
unix sehingga tidak dapat melihat background process yang berjalan.
* Defending (bertahan)
a) Firewall.
Komputer dan jaringan kerja yang
terhubung dengan internet perlu untuk dilindungi dari serangan. Firewall adalah
cara yang lumayan efeltif untuk melakukannya. Secara umum firewall akan
memisahkan public network dan private network. Tipe firewall dapat dibagi
menjadi beberapa kategori, contohnya: Packet Filtering Firewall, “Proxy
Firewall”.
b) Logs.
Seorang system administrator wajib
untuk melihat log dari system dari waktu ke waktu. Dengan melihat log maka
system administrator dapat melihat aktifitas yang terjadi dan kemungkinan besar
dapat melakukan antisipasi apabila terlihat beberapa aktifitas yang
mencurigakan terjadi.
c) IDS. (Intrusion Detection System)
Satu cara umum melakukan otomatisasi
pada pengawasan penyusupan adalah dengan menggunakan IDS. IDS akan mendeteksi
jenis serangan dari “signature” atau “pattern” pada aktifitas jaringan. Bahkan
dapat melakukan blokade terhadap traffic yang mencurigakan.
d) Honeypot.
“HoneyPot” adalah server “umpan” yang
merupakan pengalih perhatian. Tujuan dari honeypot adalah mereka tidak
menjalankan layanan sebagaimana umumnya server tetapi berpura-pura
menjalankannya sehingga membiarkan para penyusup untuk berpikir bahwa mereka
benar-benar adalah “server” yang sesungguhnya. Honeypot juga bermanfaat untuk
melihat tehnik yang digunakan oleh para penyusup untuk dapat masuk kedalam
system juga sebagai alat untuk mengumpulkan bukti sehingga para penyusup dapat
diproses secara hukum.
e) Configuration.
Seperti yang telah dibahas sebelumnya,
konfigurasi yang hati-hati akan membantu anda untuk bertahan terhadap
kemungkinan serangan yang terjadi. Kebanyakan dari kasus penggantian halaman
muka situs (web defacement) terjadi dikarenakan kesalahan konfigurasi sehingga
menyebabkan pihak ketiga dapat mengambil keuntungan dari kesalahan ini.agaimana
umumnya server tetapi berpura-pura menjalankannya sehingga membiarkan para
penyusup untuk berpikir bahwa mereka benar-benar adalah “server” yang
sesungguhnya. Honeypot juga bermanfaat untuk melihat tehnik yang digunakan oleh
para penyusup untuk dapat masuk kedalam system juga sebagai alat untuk
mengumpulkan bukti sehingga para penyusup dapat diproses secara hukum.
e) Configuration.
Seperti yang telah dibahas sebelumnya,
konfigurasi yang hati-hati akan membantu anda untuk bertahan terhadap
kemungkinan serangan yang terjadi. Kebanyakan dari kasus penggantian halaman
muka situs (web defacement) terjadi dikarenakan kesalahan konfigurasi sehingga
menyebabkan pihak ketiga dapat mengambil keuntungan dari kesalahan ini.