Post on 17-Mar-2019
8
BAB 2
LANDASAN TEORI
2.1. Teori Dasar / Umum
2.1.1. Jaringan Komputer
Penggabungan antara teknologi komputer dan komunikasi sangat
berpengaruh terhadap bentuk organisasi sistem komputer. Saat ini model
komputer tunggal yang melayani seluruh tugas-tugas komputasi suatu
organisasi telah diganti oleh sekumpulan komputer yang berjumlah
banyak dan terpisah, tetapi masih saling berhubungan dalam
melaksanakan tugasnya, sistem ini disebut sebagai jaringan komputer.
Suatu jaringan global yang terbentuk dari jaringan-jaringan lokal
dan regional, disebut dengan internet. Dengan adanya teknologi internet
maka memungkinkan terjadinya komunikasi data antar komputer-
komputer yang terhubung ke jaringan tersebut. Komputer yang tersebar
di seluruh dunia, memiliki jenis dan karakteristik yang tidak sama dengan
tempat-tempat lain. Untuk mengatasi masalah tersebut, maka
diciptakanlah suatu standar protokol yang disebut TCP/IP (Transfer
Control Protocol/Internet Protocol), sehingga semua pengiriman data
dan penerusan data di Internet. Protokol TCP/IP ini memberikan suatu IP
9
Number (nomor IP) yang unik untuk tiap komputer yang terhubung ke
Internet sehingga lalu lintas data di Internet dapat diatur.
Berdasarkan jangkauan dan ruang lingkup jaringan komputer dibagi
menjadi tiga kelompok, yaitu :
1. LAN (Local Area Network)
LAN adalah jaringan komputer yang saling dihubungkan
dan dibatasi oleh ruang geografis yang relative kecil dan pada
umumnya dibatasi ruang lingkup pada perkantoran, sekolah dan
pada umumnya tidak lebih dari 2 km2.
Pada implementasi LAN, khusus didesain untuk :
• Beroperasi pada wilayah geografis yang terbatas.
• Memungkinkan banyak user untuk mengakses media
dengan kecepatan tinggi.
• Menyediakan koneksi ke layanan local setiap saat
• Menghubungkan peralatan yang berdekatan
(CCNA companion guide 3rd edition, ebook)
2. MAN (Metropolitan Area Network)
Jaringan yang mencakup area lebih besar dari LAN, dan
menjangkau antar wilayah dalam satu propinsi. Sehingga dalam
10
kata lain MAN menghubungkan beberapa LAN menjadi suatu
jaringan yang lebih besar pada area geografis yang sama.
3. WAN (Wide Area Netwrok)
Jaringan yang ruang lingkupnya sudah terpisah oleh batas
geografis yang berbeda atau dalam kata lain jaringan ini mencakup
area yang luas dan mampu menjangkau batas propinsi bahkan
sampai antar negara. Jaringan tersebut pada umumnya sudah
menggunakan kabel bawah laut, ataupun melalui media satelit. Pada
kategori implementasi WAN khususnya di desain untuk :
• Beroperasi antar area geografis yang sangat luas.
• Memungkinkan pengguna untuk berkomunikasi dengan
user lain yang berjauhan pada saat yang sama.
• Menyediakan email, World Wide Web, e-commerce,
dan file transfer.
(CCNA companion guide 3rd edition, ebook)
2.1.2. Model OSI (Open System Interconnection)
Model Open System Interconnection (OSI) dikembangkan oleh
Internasional Standart Organization (ISO) sebagai model untuk
merancang komunikasi komputer dan sebagai kerangka dasar untuk
11
mengembangkan protokol lainnya. Model OSI terdiri dari tujuh layer
(Stallings, 2003, p.20):
Layer 7 : Application Layer
Menyediakan jasa untuk aplikasi pengguna. Layer ini bertanggungjawab
atas pertukaran informasi antara program komputer, seperti program e-
mail, dan service lain yang jalan di jaringan, seperti server printer atau
aplikasi komputer lainnya. (http://mudji.net/press/?p=61)
Layer 6 : Presentation Layer
Bertanggung jawab bagaimana data dikonversi dan diformat untuk
transfer data. Contoh konversi format text ASCII untuk dokumen, GIF
dan JPG untuk gambar. Layer ini membentuk kode konversi, translasi
data, enkripsi dan konversi.
Layer 5 : Session Layer
Menentukan bagaimana dua terminal menjaga, memelihara dan mengatur
koneksi, bagaimana mereka saling berhubungan satu sama lain. Koneksi
di layer ini disebut “session”.
Layer 4 : Transport Layer
Bertanggung jawab membagi data menjadi segmen, menjaga koneksi
logika “end-to-end” antar terminal, dan menyediakan penanganan error
(error handling).
12
Layer 3 : Network Layer
Bertanggung jawab menentukan alamat jaringan, menentukan rute yang
harus diambil selama perjalanan, dan menjaga antrian trafik di jaringan.
Data pada layer ini berbentuk paket.
Layer 2 : Data Link Layer
Menyediakan link untuk data, memaketkannya menjadi frame yang
berhubungan dengan “hardware” kemudian diangkut melalui media.
komunikasinya dengan kartu jaringan, mengatur komunikasi layer
physical antara sistem koneksi dan penanganan error.
Layer 1 : Physical Layer
Bertanggung jawab atas proses data menjadi bit dan mentransfernya
melalui media, seperti kabel, dan menjaga koneksi fisik antar sistem
Gambar 2.1 Tujuh Layer OSI
13
2.1.3. Model TCP/IP
TCP/IP (Transmission Control Protocol / Internet Protocol) adalah
suatu model yang dikembangkan oleh Department of Defense (DoD)
Amerika Serikat dengan maksud untuk mengirimkan paket data setiap
saat dalam kondisi apapun dari suatu titik ke titik yang lain. TCP/IP
memungkinkan terjadinya komunikasi antara jaringan yang saling
berhubungan dan dapat digunakan baik dalan LAN maupun WAN. Ada
empat layer yang dikenal dalam TCP/IP, yaitu (Beasley,2008,p.156):
Layer 4 : Application Layer
Application Layer merupakan sisi paling atas dari arsitektur protokol
TCP/IP. Pada layer ini terletak semua aplikasi yang menggunakan
protokol TCP/IP seperti FTP (File Transfer Protocol), SMTP (Simple
Mail Transfer Protokol), dan HTTP (Hyper Text Transfer Protocol).
Layer 3 : Transport Layer
Layer ini bertanggung jawab untuk komunikasi antara aplikasi. Layer ini
mengatur aluran informasi dan menyediakan pemeriksaan kesalahan
(error). Data dibagi kedalam beberapa paket yang dikirim ke
internet layer dengan sebuah header. Header mengandung alamat tujuan,
alamat sumber, dan checksum. Checksum diperiksa oleh mesin penerima
untuk melihat apakah paket tersebut ada yang hilang pada rute.
14
Layer 2 : Internet Layer
Layer ini berkorespondensi dengan network layer pada model OSI,
dimana layer ini bertanggung jawab untuk mengirimkan paket data dalam
jaringan menggunakan pengalamatan logikal. Layer ini berfungsi untuk
melakukan penentuan best path dan packet switching.
Layer 1 : Network Access Layer
Protokol pada layer ini menyediakan media bagi sistem untuk
mengirimkan data ke device lain yang terhubung secara langsung. Fungsi
utama dari network access layer adalah mengkonversikan IP packet
sehingga bisa dikirim melalui physical link..
Gambar 2.2 Layer TCP/IP
15
2.1.4. Internet Protocol
Internet Protocol merupakan protokol pada network layer yang
bersifat tidak memelihara sebuah sesi koneksi (Connectionless) dan tidak
menjamin datagram yang dikirim sampai ke tempat tujuan (Unreliable).
Internet Protocol didesain untuk dapat melewati berbagai media
komunikasi yang memiliki karakteristik dan kecepatan berbeda-beda.
Pada umumnya semakin cepat kemampuan transfer data, maka semakin
besar panjang datgram maksimum yang digunakan. Hal ini dapat dilihat
dari perbedaan panjang satu datagram pada jaringan Ethernet dan
jaringan publik, dimana pada jaringan Ethernet memiliki panjang
datagram yang lebih besar dari pada panjang datagram pada jaringan
publik yang menggunakan media jaringan telepon maupun pada jaringan
wireless. Perbedaaan ini ditujukan untuk mencapai throughput yang baik
pada setiap media. Akibat dari perbedaan ini, datagram IP mengalami
fragmentasi ketika berpindah dari media kecepatan tinggi ke kecepatan
rendah. Pada router atau host penerima, datagram yang telah terfragmen
harus disatukan kembali sebelum diteruskan ke router berikutnya atau ke
lapisan transport pada host tujuan.
Struktur datagram Internet Protokol Versi 4 adalah sebagai
berikut :
16
Gambar 2.3 Datagram IPv4
• Version (4 bit), yaitu versi dari protokol IP yang digunakan
• Header Length (4 bit), mengidentifikasi ukuran dari IP Header.
• Type of Service (8 bit), digunakan untuk menentukan kualitas
transmisi yang dapat mempengaruhi jalur datagram.
• Total Length Of Datagram (16 bit), mendefinisikan panjang total IP
datagram. Nilai ini termasuk IP header dan data yang ada didalam
datagram.
• Identification (16 bit), digunakan untuk mendukung fasilitas
fragmentasi dengan memberikan nilai ID pada setiap paket data yang
terfragmen.
• Flags (3 bit), IP datagaram perlu difragmen atau tidak.
17
• Fragment Offset (13 bit) mendefinisikan lokasi dari paket-paket
yang mengalami fragmentasi dalam urutan keseluruhan paket.
• Time to Live (8 bit), berisi jumlah hop maksimal yang dilewati paket
IP. Nilai maksimum field ini adalah 255. Setiap kali paket IP lewat
satu router, isi dari field ini dikurangi satu. Jika TTL telah habis dan
paket tetap belum sampai ke tujuan, paket ini akan dibuang dan router
terakhir akan mengirimkan paket ICMP time exceeded. Hal ini
dilakukan untuk mencegah paket IP terus menerus berada dalam
network.
• Protocol (8 bit), mengandung angka yang mengidentifikasikan
protokol transport layer, misalnya untuk TCP ditujukan dengan angka
6, ICMP dengan angka 1.
• Header Checksum (16 bit), digunakan untuk memastikan IP header
dan data yang dibawa tidak mengalami kerusakan selama transmisi
antara sumber ke tujuan.
• Source IP Address (32 bit), mendefinisikan alamat IP dari pengirim.
• Destination IP Address (32 bit), mendefinisikan alamat IP penerima.
• Options (32 bits), digunakan untuk mendefinisiakn informasi
tambahan yang diminta oleh pengirim, misalnya record routing.
Namun option tidak selalu digunakan dalam implementasi datagram.
18
• Padding, digunakan untuk memastikan paket header berkelipatan
32 bit.
2.1.5. Transport Layer
2.1.5.1. TCP
TCP merupakan protokol layer transport yang dapat
menyediakan layanan connection-oriented, realiable dan byte
stream orientation. TCP mampu memberikan jasa pengiriman yang
dapat diandalkan (reliable) sekaligus bersifat flow-controlled. Sifat
ini memungkinkan peralatan-peralatan jaringan yang berkecepatan
rendah (slower-speed network devices) dapat berhubungan dengan
peralatan-peralatan jaringan yang berkecepatan tinggi (higher-speed
network devices).
Unit data yang ditransferkan antara dua software TCP di dua
host yang berbeda disebut segment. Segment ini dipertukarkan
untuk kepentingan membuat koneksi, pengiriman data, pengiriman
ack, pemberitahuan ukuran window dan penutupan koneksi. Sebuah
segmen dapat berukuran hingga 65495 byte, yang terdiri atas
sebuah header dan segmen data (payload), yang dienkapsulasi
dengan menggunakan header IP dari protokol IP. Segmen-segmen
TCP akan dikirimkan sebagai datagram-datagram IP. Datagram IP
tersebut akan dienkapsulasi lagi dengan menggunakan header
19
protokol network interface menjadi frame lapisan Network
Interface. Berikut ini adalah datagram pada protocol TCP :
Gambar 2.4 Datagram TCP
• Source dan Destination Port Menururt Osteloh (2002, p.265),
Field Source dan Destination port berukuran masing-masing 2
bytes. Source port mengidentifikasi proses komunikasi host
pengirim, sedangkan destination port mengidentifikasi proses
komunikasi host penerima. Client port mempunyai rentang
antara 1.204-65.535 dan server port 1-1.023. Karena TCP
mendukung komunikasi dua arah, nilai dari field ini tergantung
dari mana arah komunikasi tiba. Apabila host meminta request,
maka menggunakan rentang port client. Apabila host me-respon
request dari client maka menggunakan rentang server port.
20
Menurut Carne (2005, p.27), Port yang sering digunakan
untuk TCP, antara lain :
o Port 20 FTP Server (data channel).
o Port 21 FTP Server (control channel).
o Port 23 Telnet Server.
o Port 25 Simple Mail Transfer Protocol (SMTP).
o Port 80 Hypertext Transfer Protocol (HTTP).
o Port 137 NetBIOS Session Service
• Sequence Number (32 bit), merupakan nomor urut paket dari
seluruh paket data. Paket data bisa saja sampai di tujuan dalam
keadaan tidak berurut tergantung rute yang ditempuh dan
kepadatan traffic-nya, ketika sampai di host tujuan, paket data
akan diurutkan kembali sesuai dengan urutannaya, sehingga
paket data dapat disusun kembali yang menghasilkan data
seperti yang dikirimkan oleh host pengirim.
• Acknowlegment Number (32 bit), mengindikasikan nomor urut
dari oktet selanjutnya dalam aliran byte yang diharapkan oleh
untuk diterima oleh pengirim dari si penerima pada pengiriman
selanjutnya. Acknowledgment number sangat penting bagi
segmen-segmen TCP dengan flag ACK diset ke nilai 1.
21
• Data Offset (4 bit) digunakan untuk menunjukkan awal field
data dan dibutuhkan karena TCP header tidak memiliki ukuran
yang baku
• Reserved (6 bit) sebagai header cadangan. Header ini diset 0
pada pengirim dan diabaikan oleh penerima.
• Control Bit – URG (1 bit). Jika kode ini diset atau bernilai 1,
maka akan mengindikasikan sebagai data urgent yakni
didahulukan dari data atau transmisi yang lain, sebagai contoh
ketika kita sedang proses download dengan FTP tetapi kita ingin
membatalkannya dengan CTRL+C.
• Control Bit – ACK (1 bit). Jika kode ini diset, maka akan
mengindikasikan bahwa paket data yang dikirim diperbolehkan
yang akan boleh dikirimkan, nomor paket yang boleh dikimkan
ini didefinisikan dalam Acknowlegment Number header.
• Control Bit- PSH (1 bit). Jika kode ini diset akan mengubah
mode transmisi dengan mode push yaitu mem-flush data pada
layer TCP, contoh mode push yaitu pada aplikasi telnet yang
merupakan aplikasi interaktif
• Control Bit- RST (1 bit). Kode ini digunakan jika koneksi akan
direset yaitu membatalkan secara tiba-tiba, hal ini terjadi karena
error dalam koneksi atau oleh interupsi yang lain.
22
• Control Bit- SYN (1 bit). Kode ini digunakan jika akan
memulai sebuah koneksi TCP (persiapan transmisi data pada
TCP/IP) yaitu untuk mensinkronisasi sequence number .
• Control Bit- FYN (1 bit). Kode ini diset jika seluruh data sudah
terkirim dan session transmisi akan disudahi.
• Window (16 bit) menunjukkan jumlah blok data yang mampu
diterima dalam satu kali transmisi, hal ini diperlukan agar semua
data dapat di terima dengan sebaik-baiknya.
• Checksum (16 bit) digunakan untuk mengetahui apakah terjadi
perubahan header dan data yang dikirimkan ketika proses
transmisi.
• Urgent Pointer (16 bit) bermakna hanya jika URG pada Control
Bit diset dan menunjukkan lokasi data yang akan ditransmisikan
dengan urgent mode.
• Option, memiliki 3 fungsi, yaitu untuk menunjukkan
o End of option list
o No operation
o Maximum segment size
23
• Padding digunakan untuk memenuhi panjang header
merupakan kelipatan 32 bit. Jika terdapat header yang kurang,
maka padding ditambahkan sampai berjumlah 32 bit
2.1.5.2. UDP
Menurut Carne (2004, p.24) User Datagram Protocol (UDP)
merupakan sebuah transport layer yang sederhana yang bersifat
unreliable, ketika mengirim. UDP menerima data dari application
layer, kemudian menambahkan port tujuan dan port pengirim, dan
menghitung checksum yang akan digunakan penerima untuk
mengecek validitas dari pengirim dan alamat tujuan. Berikut ini
adalah gambar datagram pada protocol UDP :
Gambar 2.5 Datagram UDP
• Source dan Destination Port, masing-masing mempunyai
ukuran 2 byte. Source port mengidentifikasi proses atau aplikasi
yang digunakan oleh pengirim, sedangkan destination port
mengidentifikasi proses atau aplikasi yang digunakan oleh
24
penerima. Nilai dari port ini tergantung apakah host
mengirimkan proses klien atau proses server. Apabila klien
proses, maka host mengirim atau menerima menggunakan port
antara 1.024 sampai dengan 65.535. Dan untuk server proses
maka host menggunakan port antara 1 sampai dengan 1.023
untuk mengirim atau menerima. (Osteloh, 2002, p.264).
• Port UDP
Menurut Carne(2004, p.25) port yang sering digunakan untuk
UDP antara lain :
o Port 53 Domain Name System (DNS).
o Port 67 Dynamic Host Configuration Protocol (DHCP)
Client.
o Port 68 Dynamic Host Configuration Protocol (DHCP)
Server.
o Port 69 Trivial File Transfer Protocol (TFTP).
o Port 137 NetBIOS Name Service.
o Port 138 NetBIOS Datagram Service.
o Port 161 Simple Network Management Protocol (SNMP).
o Port 161 Simple Network Management Protocol (SNMP)
trap.
25
• Length
Kolom ini menentukan besarnya data (dalam bytes) yang
terkandung dalam datagram ini. Nilai yang terkandung dalam
Length juga termasuk ukuran dari UDP Header. Jadi nilai
minimal yang terkandung dalam field ini adalah 8 byte. Kolom
Length mempunyai ukuran sebesar 2 byte. (Osteloh, 2002,
p.264).
• Checksum, mempunyai ukuran sebesar 2 byte, yang berfungsi
menjamin data yang dikirimkan tidak rusak selama proses
pengiriman. Awalnya Host pengirim melakukan checksum,
disebut CRC (Cyclic Redudancy Check), dan menempatkan nilai
hasil ke dalam UDP header. Pada saat ditujuan, host penerima
melakukan perhitungan yang sama untuk memverifikasi isi dari
header. Apabila CRC tidak valid, host penerima
mengasumsikan bahwa terjadi kesalahan pada saat transmis dan
membuang datagram tersebut. (Osteloh, 2002, p.265).
2.1.6. Protokol ARP
Address Resolution Protocol (ARP) adalah protokol yang
bertugas untuk menemukan alamat hardware suatu host dengan alamat IP
tertentu. Protokol ini berada di antara layer 2 dan layer 3. Ketika suatu IP
26
paket akan dikirim, maka paket tersebut diteruskan ke layer
dibawahnya (Ethernet), yang akan memberikan alamat hardware sesuai
dengan alamat IP tersebut. Jika alamat hardware ini tidak ada di dalam
cache ARP, maka ARP bertugas mencarinya di dalam jaringan (lokal).
ARP dikembangkan untuk memfasilitasi resolusi alamat dinamis antara
IP dan Ethernet. (http://www.tcpipguide.com.).
Resolusi alamat menggunakan ARP dicapai melalui pertukaran
pesan antara perangkat sumber untuk melakukan resolusi, dan perangkat
tujuan yang merespon untuk itu. Berikut ini adalah datagram protokol
ARP :
Gambar 2.6 Datagram Protokol ARP
(Gambar dari : www.tcpipguide.com)
27
• Hardware Type-HRD (2 bytes), melakukan identifikasi tipe
hardware yang digunakan untuk mentransmisikan pesan ARP. Seperti
untuk Ethernet 10mb bernilai 1.
• Protocol Type-PRO (2 bytes), mengidentifikasikan jenis dari alamat
Sender Protocol Address and Target Protocol Address.
• Hardware Address Length-HLN (1 bytes), menetapkan ukuran dari
alamat Sender Hardware Address and Target Hardware Address
dalam satuan byte. Untuk Ethernet atau jaringan lain dengan
menggunakan alamat MAC IEEE 802, nilai adalah 6.
• Protocol Address Length-PLN (1 bytes), menetapkan ukuran dari
alamat Sender Protocol Address dan Target Protocol Address dalam
satuan byte. Untuk alamat IPv4 bernilai 4.
• Operational Code-Opcode (2 bytes), menetapkan suatu fungsi atau
operasi yang dilakukan. Untuk ARP Request bernilai 1, ARP Reply
bernilai 2, RARP Request bernilai 3 dan RARP Reply bernilai 4
• Sender Hardware Address-SHA (nilainya sama dengan kolom HLN),
berisi alamat dari sebuah perangkat keras yang mana sebagai
pengirim pesan..
• Sender Protocol Address-SPA (nilainya sama dengan kolom PLN),
merupakan alamat IP dari perangkat pengirim pesan ini.
28
• Target Hardware Address-THA (nilainya sama dengan kolom
HLN), berisi alamat dari sebuah perangkat keras yang mana sebagai
penerima pesan.
• Target Protocol Address-TPA (nilainya sama dengan kolom PLN),
berisi alamat IP sebagai penerima pesan.
Proses transmisi protokol ARP dimulai pertama kali dengan
memutuskan apakah perangkat tujuan berada di jaringan lokal atau
jaringan yang jauh. Jika pada jaringan lokal, maka akan mengirim
langsung ke tujuan, dan apabila diluar jaringan lokal maka akan
mengirim datagram ke salah satu router untuk diteruskan. Operasi dasar
ARP adalah sepasang transmisi permintaan/ tanggapan (request/
response) pada jaringan lokal. Dalam hal ini sumber mentransmisikan
secara broadcast yang berisi informasi tentang tujuan. Tujuan kemudian
me-respons unicast kembali ke sumber, dengan mengatakan sumber
alamat hardware tujuan. Berikut ini adalah gambar proses transmisi
protokol ARP :
29
Gambar 2.7 Proses Transmisi Protokol ARP
(Gambar dari www.tcpipguide.com)
1. Source Device Checks Cache: Perangkat sumber pertama-tama akan
memeriksa cache untuk menentukan apakah sudah memiliki resolusi
perangkat tujuan. Jika sudah ada maka dapat melanjutkan ke langkah
terakhir (langkah ke-9)
2. Source Device Generates ARP Request Message: Perangkat sumber
melakukan pesan ARP Request.Menempatkan sendiri alamat data link
layer sebagai Sender Hardware Address dan alamat IP sebagai Sender
30
Protocol Address. Serta mengisi alamat IP tujuan sebagai Target
Protocol Address
3. Source Device Broadcasts ARP Request Message: Sumber
menyiarkan (broadcast) pesan ARP di jaringan lokal.
4. Local Devices Process ARP Request Message: Pesan yang telah
diterima oleh masing-masing perangkat pada jaringan lokal, diproses
dengan membandingkan Target Protokol Address. Apabila tidak
sesuai maka akan mengabaikan pesan dan tidak mengambil tindakan
lebih lanjut.
5. Destination Device Generates ARP Reply Message: Satu perangkat
yang alamat IP-nya sesuai dengan isi Target Protocol Address dari
suatu pesan akan menghasilkan pesan ARP Request. Ini mengambil
Sender Hardware Address dan Kolom Sender Protocol Address dari
pesan ARP Request dan menggunakannya sebagai nilai untuk Target
Hardware Address dan Target Protocol Address . Kemudian mengisi
sendiri lapisan dua alamat sebagai Sender Hardware Address dan
alamat IP-nya sebagai Sender Protocol Address.
6. Destination Device Updates ARP Cache: Jika sumber harus mengirim
IP datagram ke tujuan, memungkinkan tujuan perlu untuk mengirim
tanggapan (response) ke sumber di beberapa titik. (Setelah semua,
sebagian besar komunikasi di dalam sebuah jaringan adalah dua arah-
bidirectional.) Sebagai pengoptimalan, maka perangkat tujuan akan
31
menambahkan sebuah entri ke cache ARP-nya sendiri yang berisi
hardware dan alamat IP sumber yang mengirim ARP Request.
7. Destination Device Sends ARP Reply Message: Perangkat tujuan
mengirim pesan ARP reply dan dikirim unicast ke perangkat sumber.
8. Source Device Processes ARP Reply Message: perangkat sumber
memproses jawaban dari tujuan, kemudian menyimpan Sender
Hardware Address sebagai lapisan kedua alamat tujuan, yang akan
digunakan untuk mengirim datagram IP-nya.
9. Source Device Updates ARP Cache: Perangkat sumber menggunakan
Sender Protocol Address and Sender Hardware Address untuk
melakukan update ARP cache untuk digunakan di lain waktu ketika
mentransmisikan ke perangkat ini.
2.1.7. Protokol DNS
Domain Name System (DNS) adalah distributed database system
yang digunakan untuk pencarian nama komputer (name resolution) di
jaringan yang mengunakan protocol TCP/IP (Transmission Control
Protocol/Internet Protocol). DNS biasa digunakan pada aplikasi yang
terhubung ke Internet seperti web browser atau e-mail, dimana DNS
membantu memetakan host name sebuah komputer ke IP address. Selain
digunakan di Internet, DNS juga dapat di implementasikan ke private
network atau intranet. Domain Name Space merupakan sebuah hirarki
32
pengelompokan domain berdasarkan nama, yang terbagi menjadi
beberapa bagian diantaranya:
1. Root-Level Domains
Domain ditentukan berdasarkan tingkatan kemampuan yang ada di
struktur hirarki yang disebut dengan level. Level paling atas di
hirarki disebut dengan root domain. Root domain di ekspresikan
berdasarkan periode dimana lambang untuk root domain adalah
(“.”).
2. Top-Level Domains
Top-level domains dapat berisi second-level domains dan hosts.
Pada bagian dibawah ini adalah contoh dari top-level domains, yaitu
com, edu, org, net, gov, mil, num, arpa, xx (dua-huruf untuk kode
Negara, misalnya id:Indonesia,sg:singapura,au:australia,dll).
3. Second-Level Domains
Second-level domains dapat berisi host dan domain lain, yang
disebut dengan subdomain. Sebagai contoh: Domain Skripsi,
skripsi.com terdapat komputer (host) seperti server1.skripsi.com dan
subdomain training.skripsi.com. Subdomain training.skripsi.com
juga terdapat komputer (host) seperti client1.training.skripsi.com.
33
4. Host Names
Domain name yang digunakan dengan host name akan menciptakan
fully qualified domain name
(FQDN) untuk setiap komputer. Sebagai contoh, jika terdapat
fileserver1.detik.com, dimana fileserver1 adalah host name dan
detik.com adalah domain name.
Fungsi dari DNS adalah menerjemahkan atau memetakan nama
komputer ke alamat IP. Klien DNS disebut dengan resolver dan DNS server
disebut dengan Name Server. Resolver atau klien mengirimkan permintaan
ke name server berupa queries. Name server akan memproses dengan cara
mengecek ke local database DNS, menghubungi name server lainnya atau
akan mengirimkan “message failure” jika ternyata permintaan dari client
tidak ditemukan. Proses tersebut disebut dengan Forward Lookup Query,
yaitu permintaan dari client dengan caramemetakan nama komputer (host)
ke IP address. Gambar dibawah ini adalah Struktur pesan Header DNS
Gambar 2.8 Header DNS
34
• ID (16-bit) digunakan untuk mengkorelasikan permintaan dan
tanggapan.
• Q (1-bit) mengidentifikasi pesan sebagai pertanyaan atau tanggapan.
• Query (4-bit) menggambarkan jenis pesan :
0 Standard query (name to address).
1 Inverse query (address to name).
2 Server status request.
• A - Authoritative Answer (1-bit) Ketika di set ke 1, mengidentifikasi
respon sebagai salah satu yang dibuat oleh Nama Server otoritatif.
• T – Truncation (1-bit) field. Ketika di set ke 1, menunjukkan pesan
telah terpotong.
• R (1-bit) field. Ketika diset menjadi 1 oleh resolver untuk meminta
layanan secara rekursif oleh name server.
• V (1-bit) field. Ketersediaan sinyal rekursif oleh layanan Name
Server.
• B (3-bit )field. Dicadangkan untuk penggunaan mendatang. Harus
diset ke 0.
• RCode - Response Code (4-bit) tetapkan oleh Name Server untuk
mengidentifikasi status query
• Question count (16-bit) kolom yang mendefinisikan jumlah entri
dalam bagian pertanyaan.
35
• Answer count (16-bit) kolom yang mendefinisikan jumlah catatan
di bagian jawaban.
• Authority count (16-bit kolom yang mendefinisikan jumlah catatan
Name Server di bagian otoritas..
• Additional count (16-bit) kolom yang mendefinisikan jumlah catatan
di bagian catatan tambahan.
2.1.8. Keamanan Jaringan
Keamanan jaringan merupakan salah satu aspek penting dari
sebuah sistem informasi. Dalam hal ini terdapat paradigma yang
beranggapan bahwa masalah keamanan komputer merupakan
tanggungjawab sepenuhnya administrator jaringan, padahal terciptanya
suatu sistem keamanan jaringan perlu dukungan dari pihak pengguna
jaringan itu sendiri. Sehingga perlu adanya pengenalan akan pengetahuan
keamanan.
Keamanan jaringan itu sendiri didefinisikan sebagai sebuah
perlindungan dari sumber daya terhadap upaya penyingkapan, modifikasi,
utilisasi, pelarangan dan perusakan oleh pihak yang tidak diijinkan. Pada
umumnya terdapat parameter dari ukuran sebuah sistem yang aman,
diantaranya seorang penyerang atau pihak yang tidak mempunyai hak
harus membutuhkan banyak waktu, tenaga dan biaya yang besar dalam
36
melakukan penyerangan selain itu yang perlu diperhatikan adalah
resiko yang dikeluarkan penyerang tidak sebanding dengan hasil yang
diperoleh.
Sistem yang aman merupakan suatu trade-off atau sebuah tarik
ulur perimbangan antara keamanan dan biaya, dimana semakin aman
sebuah sistem maka semakin tinggi biaya yang diperlukan untuk
memenuhinya. Sehingga dapat dikatakan bahwa kebutuhan keamanan
untuk sebuah sistem jaringan komputer berbeda-beda, hal ini tergantung
pada aplikasi yang ada didalamnya, nilai dari data yang ada di dalam
sistem, dan tersedianya sumber dana.
Celah keamanan sistem internet dapat disusun dalam skala
klasifikasi. Skala klasifikasi ini disebut dengan istilah skala Internet
Threat Level (ITL). Dalam hal ini, ancaman terendah digolongkan dengan
ITL kelas 0, sedangkan ancaman teringgi digolongkan degan kelas 9.
Klasifikasi permasalahan keamanan tergantung pada kerumitan perilaku
ancaman pada sistem sasaran, dalam hal ini dibagi ke dalam tiga kategori
utama, yaitu ancaman lokal, ancaman remote dan ancaman dari lintas
firewall. Tingkat ancaman tersebut dapat diukur dengan melihat faktor-
faktor seperti kegunaan sistem, kerahasiaan data dalam sistem, tingkat
kepentingan dari integritas data, kepentingan untuk menjaga akses yang
tidak boleh terputus, profil pengguna dan hubungan antara sistem yang
37
satu dengan sistem yang lain. Secara garis besar terdapat dua tipe
ancaman, yaitu:
• Ancaman Pasif
Pada ancaman pasif penyerang melakukan pemantauan dan atau
perekaman data selama data ditransmisikan melalui fasilitas
komunikasi. Tujuan dari penyerangan ini adalah untuk mendapatkan
informasi yang sedang dikirimkan.. Kategori ini memiliki dua tipe,
yaitu release of message contain dan traffic analysis. Pada tipe
release of message contain, memungkinkan penyusup untuk
mendengar pesan, sedangkan tipe traffic analysis memungkinkan
penyusup untuk membaca header dari suatu paket, sehingga bisa
menentukan arah atau alamat tujuan paket dikirimkan.
Gambar 2.9 Ancaman Pasif
38
• Ancaman Aktif
Ancaman aktif merupakan pengguna gelap suatu peralatan terhubung
fasilitas komunikasi untuk mengubah transmisi data atau mengubah
isyarat kendali atau memunculkan data atau isyarat kendali palsu.
Pada kategori ini terdapat tiga tipe yaitu message-stream
modification, denial of message service dan masquerade. Tipe
message-stream modification memungkinan pelaku untuk memilih,
menghapus, memodifikasi, menunda, melakukan reorder,
menduplikasi pesan asli dan memungkinkan juga untuk
menambahkan pesan-pesan palsu. Pada tipe denial of message
service memungkinkan pelaku untuk merusak atau menunda sebagian
besar atau seluruh pesan. Sedangkan pada tipe masquerade
memungkinkan pelaku untuk menyamar sebagi host atau switch asli
dan berkomunikasi dengan yang host yang lain atau switch untuk
mendapatkan data atau pelayanan.
39
Gambar 2.10 Ancaman Aktif
.
Salah satu cara untuk mengamankan suatu sistem jaringan adalah
dengan mengetahui bagaimana penyerang bekerja, yaitu dengan
mengetahui bagaimana tahapan dan perangkat atau tools apa yang
digunakan. Pada dasarnya tahapan penyerangan dibagi menjadi beberapa
hal, yaitu :
• Spying and Analyzing
Pada tahapan ini penyerang berusaha mempelajari target yang akan
diserang dengan mengumpulkan data berupa hal-hal yang berkaitan
dengan target dan menggunakan data maupun informasi tersebut
untuk kemudian dianalisa.
40
• Initial Access to The Target
Tujuan dari tahapan ini adalah mendapatkan akses ke target sistem.
Dalam hal ini akses tidak perlu menjadi root atau user biasa,
melainkan bisa berupa akses FTP sampai Sendmail atau dengan kata
lain hanya untuk dapat login sebagai pengguna dalam sistem.
• Full System Access
Tipe dari tahapan ini bertujuan untuk mendapatkan akses penuh
dalam target sistem, sehingga dapat dikatakan bahwa penyerang telah
mencapai apa yang diharapkan dari rencana-rencana yang telah
dijalankan sebelumnya. Jadi pada langkah ini penyerang harus
menerapkan pengetahuan tentang bug yang bisa memberikan akses
tinggat tertinggi atau root dalam target sistem atau memanfaatkan
kesalahan parameter-parameter konfigurasi sistem.
• Covering Track and Installing Backdoor
Pada tahapan ini, tujuan dari penyerang adalah untuk menghilangkan
jejak dan memasang backdoor. Dalam menghapus log dalam target
sistem merupakan langkah wajib yang dilakukan untuk
menghilangkan jejak. Sedangkan pemasangan backdoor dilakukan
agar penyerang dapat tetap dengan mudah masuk ke dalam target
sistem.
41
2.1.8.1. Firewall
Firewall mempunyai arti "sebuah perangkat atau sistem
operasi, atau aplikasi yang menerapkan aturan akses antar jaringan
dengan cara menyaring, membatasi dan menolak suatu hubungan
atau kegiatan suatu segmen pada jaringan komputer. (RFC 2647).
Firewall merupakan perangkat jaringan yang berada di dalam
kategori perangkat Layer 3 (Network layer) dan Layer 4 (Transport
layer) dari protocol 7 OSI layer. Seperti diketahui, layer 3 adalah
layer yang mengurus masalah pengalamatan IP, dan layer 4 adalah
menangani permasalahan port-port komunikasi (TCP/UDP).
Terdapat tiga tipe firewall yang sering digunakan, diantaranya :
• Packet-Filtering Router
Menurut Stalling (2003, p.618), packet filtering mengaplikasi
sekumpulan rule untuk mengatur setiap paket IP. Pada tipe ini
paket tersebut akan diatur apakah akan di terima dan
diteruskan atau ditolak. Packet filtering ini di konfigurasikan
untuk menyaring packet yang akan di transfer secara dua arah
(baik dari dan ke jaringan lokal). Rule yang digunakan
berdasarkan pada informasi yang terkandung dalam IP
Header, seperti source dan destination IP address, source dan
destination port, protokol yang digunakan pada Transport
Layer (TCP atau UDP). Kelebihan dari tipe ini adalah mudah
42
untuk di implementasikan, transparan untuk pemakai, relatif
lebih cepat. Adapun kelemahannya adalah cukup rumit dalam
melakukan konfigurasi terhadap paket yang akan difilter
secara tepat, serta lemah dalam hal authentikasi.
Gambar 2.11 Skema Packet Filtering Router
• Aplication-Level Gateway
Menurut Stalling (2003, p.624) Application-level Gateway
atau yang biasa dikenal sebagai proxy server, yang mana
berfungsi untuk menyalurkan aplikasi. Cara kerjanya adalah
apabila ada pengguna yang menggunakan salah satu aplikasi
seperti FTP untuk mengakses secara remote, maka gateway
akan meminta user memasukkan alamat remote host yang
akan di akses. Saat pengguna mengirimkan user ID serta
informasi lainnya yang sesuai maka gateway akan melakukan
hubungan terhadap aplikasi tersebut yang terdapat pada
remote host, dan menyalurkan data diantara kedua titik.
43
Apabila data tersebut tidak sesuai maka firewall tidak akan
meneruskan data tersebut atau menolaknya. Pada tipe ini
firewall dapat di konfigurasikan untuk hanya mendukung
beberapa aplikasi saja dan menolak aplikasi lainnya untuk
melewati firewall. Kelebihannya adalah relatif lebih aman
daripada tipe packet filtering router lebih mudah untuk
memeriksa dan mendata semua aliran data yang masuk pada
level aplikasi. Kekurangannya adalah pemrosesan tambahan
yang berlebih pada setiap hubungan. Yang akan
mengakibatkan terdapat dua buah sambungan koneksi antara
pemakai dan gateway, dimana gateway akan memeriksa dan
meneruskan semua arus dari dua arah.
Gambar 2.12 Aplication Level Gateway
44
• Circuit-level Gateway
Menurut Stalling (2003, p.624) Circuit-level Gateway
merupakan suatu sistem yang berdiri sendiri , atau juga
merupakan fungsi khusus yang terbentuk dari tipe application-
level gateway. Tipe ini tidak mengijinkan koneksi TCP end to
end (langsung). Gateway akan mengatur kedua hubungan TCP
tersebut, yaitu antara Gateway dengan pengguna TCP lokal
(inner host), dan antara Gateway dengan pengguna TCP luar
(outside host). Saat dua buah hubungan terlaksana, Gateway
akan menyalurkan TCP segment dari satu hubungan ke
lainnya tanpa memeriksa isinya. Fungsi pengamanannya
terletak pada penentuan hubungan mana yang di ijinkan.
Gambar 2.13 Circuit Level Gateway
45
2.1.8.2. Intrusion Detection System
Intrusion Detection System (IDS) merupakan suatu piranti
lunak atau keras yang memeriksa aktifitas jaringan yang masuk
maupun yang keluar, dan mengidentifikasi pola yang dicurgai
sebagai serangan yang dapat membahayakan sistem. IDS
mengumpulkan dan menganalisa informasi dari komputer atau
suatu jaringan, dan mengidentifikasikan kemungkinan pelanggaran
dari security policy, termasuk unauthorized accsess. Pada umumnya
terdapat dua tipe dari IDS, diantaranya :
• Network-based IDS, mengawasi seluruh segmen jaringan
dimana NIDS ditempatkan. NIDS menyadap seluruh
komunikasi yang ada dijaringan tersebut, tanpa memilah-milah
paket data yang lewat. Sebagai tambahan NIDS harus terhubung
dengan span port di switch atau network tap. Span port dan
network tap berfungsi untuk menduplikasi seluruh paket data
yang lewat. NIDS harus ditempatkan pada posisi yang
memungkinkan untuk bisa memonitor seluruh jaringan. Gambar
dibawah ini merupakan contoh sederhana dari penempatan
NIDS.
46
Gambar 2.14 Topologi NIDS
• Host-Based IDS hanya melindungi system dimana HIDS
tersebut berada, dan beroperasi tanpa memilih data yang lewat.
Namun kelemahannya adalah kinerja CPU menjadi lebih tinggi
dan membebani host karena HIDS tidak memilah data yang
lewat. HIDS membuka semua tambahan informasi lokal dan
mengaitkannya dengan keamanan, termasuk system calls,
modifikasi file system, dan system log. Keuntungan lain dari
HIDS adalah kemampuan untuk mengatur rule sangat baik bagi
kebutuhan host.
47
Gambar 2.15 Topologi HIDS
2.1.8.3. Intrusion Prevention System
Intrusion Prevention System (IPS) pada dasarnya serupa
dengan dengan system IDS. Intrusion Detection & Prevention
(Endorf ,2004) terdapat perbedaan utama pada kedua system
tersebut, dimana pada IPS bersifat inline pada suatu jaringan dan
ketika terjadi suatu peristiwa tertentu, system tersebut akan
melakukan tindakan sesuai dengan rule yang telah ditentukan. Hal
ini berbeda dengan system IDS, yang hanya bersifat pasif. Intrusion
Prevention System (IPS) merupakan salah satu perangkat
perlindungan keamanan atau piranti lunak yang dapat mencegah
48
serangan terhadap system jaringan komputer. Saat ini terdapat
dua teknologi IPS, yaitu :
• Network-based Intusion Prevention System (NIPS),
menyediakan komponen proaktif yang secara efektif
mengintegrasikan ke dalam bagian keamanan jaringan. NIPS
merupakan perangkat inline - berada pada jalur komunikasi
data, memprosesnya dan meneruskannya kembali.
• Host-based Intrusion Prevention System (HIPS) merupakan
sebuah aplikasi yang berjalan pada satu komputer atau server
untuk melihat seluruh lalu-lintas komunikasi dari dan menuju
komputer tersebut.
2.1.8.3.1. Mekanisme IPS
Dalam melakukan analisis paket, terdapat beberapa
anatomi dasar yang dilakukan IPS untuk mengidentifikasikan
adanya suatu penggangggu (intrusion) maupun kejanggalan
dalam aktifitas jaringan, diantaranya preprocessing, berfungsi
untuk mengelompokkan data dalam beberapa golongan ketika
data telah dikumpulkan dari sensor IPS. Ketika proses ini
telah selesai, maka proses selanjutnya adalah analysis, dimana
data yang telah tercatat akan dianalisis dan dicocokan dengan
49
knowledge base. Tahap selanjutnya adalah response, yaitu
ketika telah diketahui bahwa terjadi intrusi maka IPS akan
menanggapi dengan melakukan pencegahan terhadap serangan
yang terjadi. Tahap yang terakhir adalah refinement, yang
merupakan proses yang paling kritis dimana fine-tuning dari
system IPS dapat dilakukan, berdasarkan pada intrusi yang
terdeteksi. Hal ini memberi kesempatan untuk mengurangi
tingkatan false-positive. Metode deteksi yang digunakan IPS
terbagi menjadi dua bagian, yaitu :
• Rule-Based Detection
Metode rule-based detection atau yang dikenal sebagai
signature-based detection, pattern matching dan misuse
detection, sebuah paket data akan dianalisis dan
dicocokkan dengan suatu database signature. Pada proses
analisis suatu intrusion, terdapat empat tahapan.
o Preprocessing. Langkah awal adalah proses
pengumpulan data tentang intrusion, vulnerability dan
serangan-serangan yang kemudian dikelompokan ke
dalam skema klasifikasi. Skema klaisifikasi terdiri dari
content-based signatures (menguji payload dan packet
header), dan context-based signature (hanya
50
mengevaluasi packet header) untuk
mengidentifikasikan suatu alert.
o Analysis, dimana data akan dibandingkan dengan
knowledge base dengan menggunakan pattern-matching
analysis engine. Kemudian analysis engine mencari pola
yang diketahui sebagai serangan.
o Response, apabila cocok dengan pola serangan, analysis
engine akan mengirimkan peringatan (alert).
o Refinement, dilakukan dengan memperbaharui signature,
karena IDS dapat berjalan optimal dengan signature
terbaru
• Anomaly Detection
Metode anomaly detection atau profile-based detection
digunakan untuk mendeteksi adanya kejanggalan atau
aktifitas yang tidak normal. IPS membuat profile system
yang menandakan suatu situasi yang menyimpang dari
pola normal dan memberikan informasi tersebut ke output.
Perbedaan mendasar tentang metode ini dengan metode
analisis lainnya adalah pada anomaly-based detection
mengidentifikasikan seluruh aktifitas, baik yang diijinkan
maupun tidak. Pada metodologi ini, terdapat tiga katagori
utama, diantaranya behavioral, pola traffic dan protokol.
51
Pada behavior analysis melihat adanya kejanggalan
secara statistik, seperti hubungan dalam suatu paket dan
apa saja yang dikirimkan pada suatu jaringan. Sedangkan
pada analisis pola trafic untuk mengamati pola yang
specifik dalam lalu-lintas jaringan. Dan yang terakhir
adalah protocol analysis, dimana mengamati pelanggaran
protokol jaringan atau penyalahgunaan yang berdasarkan
pada perilaku RFC. Pada model analisis dalam konteks
anomaly detection terdapat empat tahapan.
o Preprocessing, merupakan proses pengumpulan data
berdasarkan perilaku normal pada jaringan dalam
waktu tertentu. Dalam hal ini data tersebut dibentuk ke
dalam format numerik dan akan digolongkan kedalam
statistical profile dengan algoritma yang berbeda
dalam knowledge base.
o Analysis, dimana data suatu kejadian dianalisis dengan
membandingkan isi dari profile vector dari data suatu
kejadian dengan knowledge base.
o Response, merupakan suatu tindakan yang dilakukan
berdasarkan hasil analisis.
52
o Refinement, dimana data record perlu diperbaharui.
Dalam hal ini perlu diketahui bahwa profile vector
history akan dihapus setelah beberapa hari.
Berikut ini merupakan tahapan bagaimana suatu informasi
atau paket data yang dilalui oleh IPS :
• Raw Packet Capture, internal information flow dimulai
dengan menangkap paket data mentah, kemudian
menyampaikannya ke komponen berikutnya dari suatu
system. Paket data mentah diambil melalui network
interface card (NIC) dan kemudian disimpan di memori,
sehingga paket tersebut dapat diproses dan dianalisis. Pada
umumnya IPS mempunyai dua cara untuk menangkap
paket data mentah. Pertama Promiscuous mode, yaitu NIC
menangkap semua paket yang melewati network media.
Yang kedua adalah Nonpromiscuous mode, yaitu NIC
hanya mengambil paket data mentah untuk alamat tertentu
dan mengabaikan data yang lain..
• Filtering, merupakan suatu tindakan untuk membatasi
paket yang ditangkap menurut logika tertentu berdasarkan
pada beberapa karakteristik, seperti tipe suatu paket, jarak
alama IP asal, dan lain-lain.
53
• Packet decoding. Paket kemudian dikirim ke
serangkaian decoder yang mendefinisikan paket pada data
link layer. Paket tersebut di-decode untuk menentukan
lebih lanjut apakah paket tersebut sebuah paket IPv4, atau
IPv6, serta alamat IP sumber dan tujuan, port sumber dan
tujuan dari TCP dan UDP, dan lain..
• Storage. Ketika setiap paket telah di-decode, biasanya
disimpan ke dalam hard disk atau ke dalam form suatu
struktur data, sehingga pada waktu yang bersamaan data
dibersihkan dari memori.
• Fragment Reassembly, merupakan suatu proses yang
terbilang cukup penting meskipun paket data telah di-
decode sebelumnya, karena paket yang telah ter-fragment
dapat menimbulkan masalah lain pada sistem IDS atau
IPS, dimana paket tersebut dapat digunakan untuk
menyerang sistem atau menghindari mekanisme deteksi.
Permasalahannya adalah ketika suatu paket fragmen dapat
saling tumpang tindih dengan paket fragmen lainnya,
dimana ketika paket tersebut dirakit kembali akan
menimpa paket yang telah dirakit sebelumnya. Selain itu
ukuran paket fragment yang tidak sesuai. Cara lainnya
adalah dengan menggabungkan beberapa fragment,
54
sehingga offset yang dihasilkan membuat program yang
besar untuk proses fragment-reassembly, yang
menyebabkan host penerima crash. Cara yang efektif
dalam menangani paket fragment adalah dengan
mengulang bagian pertama dari paket tersebut, yang mana
berisi informasi dalam packet header, alamat IP sumber
dan tujuan, tipe paket dan lain-lain.
• Stream Reassembly, mengambil data dari TCP stream
yang kemudian disusun kembali apabila data tidak
berurutan, sehingga paket data yang dikirim sama dengan
yang diterima. Ketika paket data yang tiba pada mesin IDS
maupun IPS tidak berurutan, maka paket data tersebut
tidak bisa dianalisis dengan baik, sehingga diperlukanlah
stream reassembly. Stream reassembly jg memfasilitasi
detection of out-of-sequence scanning methods.
• Stateful Inspection TCP Session, digunakan untuk
menghindari situasi dimana saat IPS menganalisis setiap
paket yang menjadi bagian dari sesi yang dimanipulasi.
• Firewalling, pada dasarnya digunakan untuk melindungi
IPS dari serangan ketika menganalisis paket, terutama
setelah menyelesaikan TCP stateful inspection sejak
penyerang dapat membuat system IPS dilumpuhkan.
55
Firewalling merupakan salah satu pilihan untuk
mengintegrasikan pertahanan IPS.
Istilah response dalam IPS mengacu pada suatu tindakan yang
diambil ketika dicurigai adanya kejanggalan aktifitas dalam
jaringan maupun serangan. Pada umumnya, terdapat tiga tipe yang
digunakan dalam menanggapi serangan, diantaranya :
• Automated Response, melakukan tanggapan secara
otamatis apabila mendeteksi adanya serangan. Akan tetapi
metode ini memiliki kelemahan diantaranya ketika terjadi
false positive, sehingga menyebabkan proses yang berjalan
untuk segera dihentikan. Ada bebarapa cara yang
digunakan. Pertama droping the connection, dimana akan
menginstruksikan firewall untuk menghentikan seluruh
komunikasi pada port. Yang kedua adalah teknik
throttling, yaitu untuk mencegah penggunaan port scan.
Teknik ini digunakan dengan cara menunda dalam
melakukan scanning dan ketika aktifitas meningkat maka
waktu tunda akan meningkat. Sedangkan yang ketiga
adalah shunning, merupakan proses identifikasi suatu
penyerang dan akan menangkal penyerangan pada sistem
jaringan akses atau servis tertentu. Tipe yang terakhir
adalah session sniping, yaitu dimana IPS akan mengakhiri
56
serangan dengan menggunakan paket TCP RESET
untuk mengakhiri koneksi dan mencegah serangan.
• Manual response, dimana mempercayakan sepenuhnya
kemampuan dari pengguna maupun administrator dalam
rangka menganalisis dan menanggapi suatu serangan.
Hybrid response, merupakan tipe response yang paling
umum digunakan karena hal ini terbilang cukup efektif
dalam menanggapi adanya serangan, yang mana
menggabungkan teknologi antara automated response dan
manual response.
2.1.8.4. False Alarm
IPS mendeteksi aktivitas yang dianggap sebagai ancaman,
kemudian memberikan peringatan akan ancaman tersebut kepada
administrator. Beberapa sistem IPS mengambil tindakan
sebagaimana mestinya secara otomatis, seperti blocking atau
menghentikan traffic berdasarkan ancaman tersebut. Terkadang IPS
tidak mendeteksinya dengan benar, disebut dengan false alarm.
False alarm dikelompokan dalam beberapa kategori, termasuk false
positive dan false negative.
57
Kategori Deskripsi
Reactionary Traffic
Alarm
Traffic yang disebabkan oleh kegiatan lain jaringan,
seringkali tidak berbahaya. Sebagai contoh
perangkat NIDS yang memicu alarm ICMP Flood
yang sebenarnya disebabkan oleh kesalahan
perlatan.
Equipment Related
Protocol
Alarm yang disebabkan oleh paket yang tidak
dikenali yang disebabkan oleh beberapa peralatan
jaringan. Load Balancer sering menjadi
penyebabnya.
Protocol Violation Alarm yang disebabkan oleh network traffic yang
tidak dikenal, seringkali disebabkan oleh
penulisan/codding software klien yang buruk.
True False Positive Alarm yang ditimbulkan oleh IDS tanpa alasan
yang jelas. Biasanya ditimbulkan karena bug dari
Software IDS.
Non-Malicious Alarm Disebabkan dari beberapa kejadian yang
sebenarnya tidak berbahaya.
Tabel 2.1 Kategori False Alarm
58
2.1.8.4.1. False Positive
Metode Anomaly Detection secara mendasar adalah
dengan membandingkan data yang lewat dengan data pada
keadaan normal. Traffic yang menuju sistem terkadang
ditandai sebagai ancaman ketika polanya tidak disimpan di
dalam rule IPS, sehingga menyebabkan alarm yang salah. Hal
ini menyebabkan false positive, yang rawan terjadi ketika
menggunakan metode anomaly detection. False positive selalu
terjadi dalam analisis anomali ketika tidak semua keadaan
normal didefinisikan secara akurat sebagai keadaan normal
yang sebenarnya. False positive hampir tidak dapat
dihilangkan sepenuhnya, namun dengan desain dan
implementasi yang tepat pada sebuah IPS false positive dapat
dikurangi.
2.1.8.4.2. False Negative
Kasus terburuk dari IPS adalah tidak bisa mendeteksi
serangan yang masuk secara efektif dan akurat, dan
membiarkan serangan masuk ke dalam jaringan. Atau IPS
mendeteksi penyerang yang masuk sebagai sebuah aktifitas
yang normal. Hal ini disebut sebagai false negative. Sebuah
IPS yang baik mampu untuk menghindari false negative,
59
sehingga tidak ada penyerang yang mampu masuk dan
merusak sistem.
Intrusion No Intrusion
Alert True Positive False Positive
No Alert False Negative True Negative
Tabel 2.2 Perbandingan Kondisi True-False
Alarm True False
Positive Aktifitas normal yang
diidentifikasi dengan benar
dan diberi izin akses
Aktifitas normal yang
salah diidentifikasi dan
tidak diberi izin akses
Negative Aktifitas serangan yang
diidentifikasi dengan benar
dan dilakukan blocking
Aktifitas serangan yang
salah diidentifikasi dan
tidak dilakukan blocking.
True: Kondisi dimana IPS bekerja secara benar
False: Kondisi dimana IPS bekerja secara salah
Positive: Aktifitas normal
Negative: Aktifitas tidak normal
Tabel 2.3 True-False Detection Alarm
60
2.2. Teori Khusus
2.2.1. Mekanisme Serangan Man In The Middle
Serangan Man-In-The-Middle (MITM), merupakan suatu tipe
serangan yang memanfaatkan kelemahan pada keamanan protokol IP.
Seperti yang telah kita ketahui bahwa, dalam koneksi jaringan TCP/IP
melibatkan suatu proses pengiriman, penerimaan dan persetujuan.
Konsep dasar dari serangan ini adalah penyerang harus berada di jaringan
antara dua mesin atau komputer yang saling berkomunikasi, sehingga
secara teknis memungkinkan bagi penyerang untuk melihat, bahkan
mampu mengontrol atau mengubah data yang dikirim antar dua komputer
tersebut Dalam melakukan serangan ini pun, mesin penyerang tidak harus
secara fisik terletak diantara dua komputer, namun rute paket yang
ditujukan bagi host lain harus diyakinkan untuk melalui mesin penyerang.
Berikut ini adalah ilustrasi secara umum bagaimana penyerang
melakukan serangan MITM. PC A adalah client dan PC B adalah server,
maka penyerang (PC X) harus menjadi “legitimate server” bagi “real
client” (PC A) dan juga sebagai “legitimate client” bagi “real server”
(PC B). Pada aktiftas normal, PC A dan PC B dapat mengirimkan data
tanpa harus melalui PC X. Namun pada aktifitas tidak normal, data dari
PC A yang seharusnya dikirim ke PC B harus melewati PC X terlebih
dahulu. PC A menganggap data yang diterima berasal dari PC B, begiu
61
juga sebaliknya. Serangan ini mengakibatkan keaslian dan kerahasiaan
data tidak terjamin.
Gambar 2.16 Ilustrasi MITM
Seperti yang telah disinggung sebelumnya bahwa studi ini hanya
fokus pada lingkup jaringan LAN. Dalam hal ini terdapat tiga teknik yang
biasa digunakan dalam melakukan serangan tersebut, diantaranya ARP
Spoofing, DNS Spoofing dan MAC Flooding.
• Address Resolution Protocol Spoofing
Pada dasarnya Address Resolution Protocol (ARP) dirancang
bertindak sebagai perantara antara alamat IP dan MAC atau dengan
kata lain ARP bertanggung jawab untuk mengelola hubungan antara
alamat Media Access Control (MAC) dan alamat IP pada perangkat
jaringan. Seperti yang kita ketahui, bahwa perangkat Ethernet
menggunakan alamat MAC untuk berkomunikasi. Informasi tentang
62
alamat MAC tersebut akan disimpan dalam RAM (Random Access
Memory) dan bersifat temporer dengan waktu dua menit. Ruang
simpan dalam RAM ini disebut ARP cache. Tujuan dari penyimpanan
tersebut adalah untuk membantu mempercepat transfer data sehingga
alamat MAC tidak harus diverifikasi setiap kali satu perangkat yang
ingin berkomunikasi dengan perangkat lain. Sebagai contoh, jika
ARP hanya menemukan nomor IP tetapi tidak menemukan MAC
address pasangannya, maka ARP akan mengirim request ke jaringan.
Prinsip dasar dari ARP adalah tidak boleh ada lebih dari satu nomor
IP memakai satu MAC address yang sama. Protokol ARP bersifat
stateless, yang berarti protocol ARP akan mengirim request MAC
address dan mengirimkan pemberitahuan kepada komputer anggota
jaringan jika terjadi ketidakberesan dalam pengalamatan, walaupun
tidak ada komputer di jaringan yang memintanya. Seain itu protokol
ARP juga bersifat non-routable, yang berarti hanya bekerja pada satu
segmen jaringan lokal.
Ancaman keamanan muncul ketika ada upaya manipulasi
terhadap pengalamatan alamat IP dan MAC. Ancaman tersebut
dikenal dengan istilah Address Resolution Protocol (ARP) spoofing
atau ARP poisoning atau ARP Poison Routing (APR). ARP Spoofing
memungkinkan penyerang untuk mengambil frame data pada Local
Area Network (LAN), memodifikasi, dan menghentikan traffic. Perlu
63
diketahui bahwa serangan ini hanya dapat digunakan pada jaringan
yang menggunakan protokol ARP dan tidak menggunakan metode
Address Resolution yang lain.
Prinsip kerja dari ARP spoofing ini adalah mengirimkan pesan
palsu kepada sebuah Ethernet LAN, yang bertujuan untuk
mengasosiasikan alamat MAC penyerang dengan alamat IP target
(contohnya default gateway). Lalu lintas (traffic) apapun yang
seharusnya ditujukan untuk alamat IP target akan dengan otomastis
dikirim kepada mesin penyerang, disini penyerang dapat memilih
untuk meneruskan traffic alamat yang sebenarnya atau memodifikasi
data sebelum diteruskan. Selain itu penyerang juga dapat menjalankan
serangan Denial of Service (DoS) kepada korban dengan
mengasosiasikan sebuah MAC yang tidak ada kepada default gateway
dari IP Address korban. Gambar dibawah ini adalah ilustrasi
terjadinya serangan ARP cache poisoning.
IP address MAC address
PC A 192.168.1.2 AA:AA:AA:AA:AA:AA
PC B 192.168.1.4 BB:BB:BB:BB:BB:BB
PC X 192.168.1.10 XX:XX:XX:XX:XX:XX
Tabel 2.4 ARP Kondisi Awal
64
• PC X mengirimkan suatu pesan ARP Reply ke PC A
mengatakan bahwa IP address 192.168.1.3
mempunyai MAC address XX:XX:XX:XX:XX:XX.
• PC X juga mengirimkan suatu pesan ARP Reply ke PC
B mengatakan bahwa IP address 192.168.1.2
mempunyai MAC address XX:XX:XX:XX:XX:XX.
Gambar 2.17 Proses ARP Chace Poisonning
• Pada saat PC A ingin mengirim suatu pesan ke PC B,
karena MAC address PC B dalam tabel ARP PC A
adalah XX:XX:XX:XX:XX:XX maka PC A akan
mengirimkan ke X, bukan ke PC B. X menerima pesan
ini, memprosesnya dan kemudian meneruskan ke PC
65
B. Begitu juga sebaliknya jika PC B ingin mengirim
suatu pesan ke komputer A.
Gambar 2.18 Pengiriman Paket Setelah ARP Poisonning
• Domain Name System Spoofing
Serangan DNS spoofing dapat didefinisikan sebagai usaha
memasukkan informasi palsu oleh orang yang tidak memiliki
kewenangan untuk memberikan informasi tersebut. Dengan
menggunakan teknik ini, penyerang dapat memasukkan informasi
alamat IP yang akan mengarahkan korban dari situs web atau tujuan
yang sah ke salah satu situs yang merupakan di bawah kendali
penyerang. DNS menanggapi queries pada host dengan mengandalkan
protokol UDP untuk meminta dan memperoleh informasi resolusi.
Setiap query DNS berbasis UDP yang berasal dari host juga akan
66
diberikan sebuah pengenal (ID) untuk membantu mengelola
beberapa tanggapan. Setiap query DNS server menyertakan ID query
yang sama dengan request. Jika ID pada response tidak sama dengan
ID request, maka host harus mengabaikan respon. DNS ID Spoofing
merupakan serangan yang berfokus pada memberikan kesalahan pada
informasi resolusi DNS ke permintaan host setelah mengamati ID
permintaan. Berikut ini adalah proses penyerangannya :
1. Host mengirim permintaan berbasis UDP ke server DNS dengan
ID 117.
2. Penyerang telah memposisikan sebuah komputer pada jaringan
untuk mengendus (sniffing) semua lalu lintas jaringan dan
merespon permintaan DNS.
3. Setelah mengidentifikasi permintaan DNS untuk situs tujuan
dengan ID 117, penyerang secara otomatis menjawab dengan
alamat IP 200.10.1.11 dengan menggunakan ID yang sama.
4. Beberapa sepersekian detik kemudian, server DNS yang
sebenarnya mengirimkan respon alamat IP yang sebenarnya, akan
tetapi diabaikan oleh komputer host karena telah menerima respon
dari mesin penyerang.
67
Gambar 2.19 DNS ID Spoofing
• MAC Flooding
Proses transmisi data pada perangkat Switch yaitu dengan
melihat MAC address yang ada pada data, dan meneruskannya hanya
kepada host penerima. Penyerang menggunakan teknik Mac Flooding
pada perangkat switch agar dapat melihat data yang sedang
ditransmisikan. Switch menggunakan Content Adressable Memory
(CAM) yang berisi informasi mengenai MAC address yang terhubung
dengan Switch. CAM table ini memliki kapasitas maksimum. Teknik
MAC flooding memanfaatkan kapasitas maksimum tersebut dengan
mengirimkan request dengan jumlah yang sangat besar, sehingga
CAM table mengalami kelebihan beban (overload). Ketika ini terjadi
Switch bertindak sebagi Hub, atau dengan kata lain perangkat switch
68
mengirimkan data tanpa melihat MAC Address namun
mengirimkannya ke semua host yang terhubung dengan Hub.
Akibatnya penyerang dapat melihat data yang sedang ditransmisikan
dengan mudah. Saat ini teknik serangan MAC Flooding biasanya
dicegah dengan menggunakan Switch yang mempunyai fitur Port
Security. Ketika MAC Flooding terdeteksi oleh Switch maka secara
otomatis Port Security akan menutup Port yang melakukan MAC
Flooding.
Pada saat serangan MAC flooding, perilaku switch berbeda,
dimana penyerang (PC X) "membanjiri" switch dengan paket-paket,
yang masing-masing dengan sumber alamat MAC yang berbeda.
Berikut ini adalah ilustrasi proses serangan MAC flooding.
Gambar 2.20 Proses MAC Flooding
69
Jika Content Addressable Memory (CAM) (memori di mana
alamat MAC yang diminta) sudah penuh, switch bekerja seperti hub,
sehingga jika PC A mengirimkan sebuah paket ke PC B, paket akan
diterima ke PC C juga.
Gambar 2.21 Proses Kirim Data Setelah MAC Flooding
2.2.2. Snort
Snort merupakan suatu piranti lunak open source network
intrusion detection dan prevention system yang di-release pada tahun
1998 oleh pendiri Sourcefire dan CTO Martin Roesch. Snort merupakan
aplikasi portable yang dapat dijalankan pada beberapa system aplikasi,
seperti x86 system Linux, FreeBSD, NetBSD, OpenBSD, Windows,
Sparc Solaris, x86 Mac OS X, PowerPC Mac OS X dan MkLinux, and
PA-RISC HP-UX.
70
Snort mampu melakukan analisis lalu lintas jaringan secara
real-time dan packet logging pada IP networks. Selain itu snort dapat
menganalisis protokol dan pencocokan serta pencarian suatu data yang
dicurigai sebagai serangan. Untuk mendukung hal tersebut maka
digunakanlah rules yang fleksibel untuk menguraikan lalu lintas jaringan
bahwa apakah suatu data perlu dilewati atau dikumpulkan. Rules
merupakan metodologi pendeteksian yang didasarkan pada suatu
kelemahan (vulnerability). Pada snort, pengguna bisa membuat rule
sendiri sesuai dengan kebutuhan dan lingkungan system yang ada.
Ada beberapa konsep yang harus dimengerti tentang fungsi utama
dari snort, diantaranya : sniffer mode, yang mana hanya membaca paket
dari suatu jaringan dan menampilkannya secara berkelanjutan pada suatu
konsole. Packet loger mode, yang mana akan mencatat paket ke dalam
disk. Network Intrusion Detection System (NIDS) mode, yang mana
mengijinkan snort untuk menganalisis network traffic untuk melaporkan
rule yang telah dibuat oleh pengguna dan melakukan tindakan sesuai
dengan apa yang dilihat. Inline mode, yang mana memperoleh paket dari
iptables sebagai ganti dari libpcap dan kemudian menyebabkan iptables
untuk drop atau melewati paket berdasarkan aturan snort yang
menggunakan rule inline-specific ( Snort 2.1 Intrussion Detection 2nd )
Arsitektur snort terdiri dari empat komponen dasar, yang mana
komponen tersebut bekerja bersama untuk mendeteksi serangan dan
71
menghasilkan output dalam format yang diperlukan dari system
pendeteksi. Komponen tersebut yaitu : sniffer, preprocessor, detection
engine dan output. Dalam hal ini, setiap komponen saling bekerjasama
dalam mendeteksi adanya percobaan serangan.
2.2.3. Backrack 3
Backtrack merupakan salah satu distro linux yang dikhususkan
untuk tes penetrasi. Tanpa instalasi apapun, analisis platform dimulai
secara langsung dari CD-Rom dan sepenuhnya dapat diakses dalam
hitungan menit. Backtrack berevolusi gabungan dari dua distribusi yaitu
WHAX (White Hat and Slax) dan Auditor Security Collection. Dengan
menggabungkan kekuatan ini, Backtrack telah memperoleh popularitas
besar-besaran pada tahun 2006 sebagai #1 Security Live Distribution oleh
insecure.org.( http://www.remote-exploit.org/backtrack.html). Saat ini
Backtrack menggunakan distro Slackware yang dianggap lebih modular
dan mudah untuk dikembangkan. Backtrack 3 memiliki lebih dari 300
tool untuk hacking, diantranya metasploit, Scanrand, Whireshrak, Pirana,
Driftnet, Snort dan juga lainnya
72
2.2.4. Windows Server 2003 Enterprise Edition
Windows Server 2003 Enterprise Edition adalah sebuah versi
Windows Server lebih handal dibandingkan dengan versi terdahulu, yang
ditujukan untuk menggantikan Windows 2000 Advanced Server dan
Windows NT 4.0 Enterprise Server yang telah lama beredar. Windows
Server 2003 Enterprise Edition menggandakan dukungan prosesor jika
dibandingkan dengan Windows Server 2003 Standard Edition, dari 4
hingga 8 prosesor sekaligus. Selain itu, Enterprise Edition juga
mendukung prosesor 64-bit, seperti IA-64 dan x64.
2.2.5. Bash Shell
Pada sistem operasi linux, shell berperan sebagai perantara antara
sistem operasi (kernel) dengan pemakai atau dengan kata lain shell
merupakan jembatan bagi pengguna untuk mengakses kernel. Sebagai
contoh, apabila shell akan mengakses suatu perangkat keras maka harus
melalui kernel. Namun meskipun sebagai interface antara pengguna dan
kernel, shell juga tetap menjadi interface aplikasi atau utilitas lainnya
terhadap kernel. Sekitar tahun 1983-1990, shell yang paling populer dan
banyak digunakan dalam lingkungan unix adalah c shell dan bourne shell,
hingga dikembangkannya bash. Bash atau Bourne Again SHell
merupakan pengembangan dari Bourne shell (sh) yang dibuat oleh Steve
Bourne. Bash kompatibel dengan shell sh yang bersama-sama
73
menggunakan fitur dari Korn shell (ksh) dan C shell (csh). Bash
merupakan perbaikan dari sh untuk mode interaktif dan penggunaan
pemrograman bash dikembangkan oleh Brian Fox dari Free Software
Foundation. Shell ini mempunyai lisensi GNU sehingga bebas
digunakan.
2.2.6. IPTables
IPTables merupakan suatu baris perintah program yang digunakan
untuk mengkonfigurasi Linux 2.4.x dan 2.6.x IPv4 sebagai ketentuan
packet filtering. Hal ini ditargetkan untuk administrator sistem.
(http://www.iptables.org/projects/iptables/index.html). Fitur yang dimiliki
IPTables:
1. Connection Tracking Capability yaitu kemampuan untuk inspeksi
paket serta bekerja dengan icmp dan udp sebagaimana koneksi TCP.
2. Menyederhanakan perilaku paket-paket dalam melakukan negosiasi
(input,output, dan forward).
3. Rate-Limited connection dan logging capability. Kita dapat
membatasi usaha-usaha koneksi sebagai tindakan preventif serangan
Syn flooding denial of services (DOS).
4. Kemampuan untuk memfilter flag-flag dan opsi tcp dan alamat MAC.
Kebijakan pada iptables dibuat berdasarkan sekumpulan peraturan
yang diberikan pada kernel untuk mengatur setiap paket yang datang.
74
Pada iptable ada istilah yang disebut dengan Ipchain yang merupakan
daftar aturan bawaan dalam Iptables. Ketiga chain tersebut yaitu :
1. INPUT, Mengatur paket data yang memasuki firewall dari arah
intranet maupun internet.
2. OUTPUT, Mengatur paket data yang keluar dari firewall ke arah
intranet maupun internet. Biasanya output tidak diset, karena bisa
membatasi kemampuan firewall itu sendiri.
3. FORWARD, Mengatur paket data yang melintasi firewall dari arah
internet ke intranet maupun sebaliknya. Policy forward paling banyak
dipakai saat ini untuk mengatur koneksi internet berdasarkan port,
mac address dan alamat IP Selain aturan (policy) firewall iptables
juga mempunyai parameter yang disebut dengan TARGET, yaitu
status yang menentukkan koneksi di iptables diizinkan lewat atau
tidak. TARGET ada tiga macam yaitu:
• ACCEPT, Akses diterima dan diizinkan melewati firewall
• REJECT, Akses ditolak, koneksi dari komputer klien yang
melewati firewall langsung terputus, biasanya terdapat pesan
"Connection Refused". Target Reject tidak menghabiskan
bandwidth internet karena akses langsung ditolak, hal ini berbeda
dengan DROP.
• DROP, Akses diterima tetapi paket data langsung dibuang oleh
kernel, sehingga pengguna tidak mengetahui kalau koneksinya
75
dibatasi oleh firewall, pengguna melihat seakan - akan server
yang dihubungi mengalami permasalahan teknis. Pada koneksi
internet yang sibuk dengan trafik tinggi Target Drop sebaiknya
jangan digunakan.
Selain sebagai Firewall, iptables juga bisa difungsikan untuk translasi
alamat dari satu alamat ke alamat IP yang lain atau yang biasa disebut
dengan Network Address Translation (NAT). Fungsi iptables tidak
hanya sampai disitu saja namun bisa juga melakukan translasi alamat
IP, iptables juga bisa melakukan NAT alamat Port aplikasi, bisa
disebut juga dengan Port Address Translation (PAT). PAT digunakan
untuk membangun beberapa server seperti mail, web, database
maupun datacenter yang diakses melalui internet hanya dengan satu
alamat IP publik. Prinsip dasar NAT di bagi menjadi dua bagian, yang
pertama adalah POSTROUTING, yaitu melakukan NAT paket data
yang keluar dari firewall, kebanyakan postrouting dipakai untuk
translasi alamat IP. Yang kedua adalah PREROUTING, untuk
melakukan NAT paket data yang memasuki firewall, kebanyakan
digunakan untuk transparency proxy server dan membangun beberapa
server dengan satu IP publik.