Anda di halaman 1dari 16

BAB II

FIREWALL

2.1 Firewall
Firewall 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 firewall diimplementasikan dalam sebuah mesin
terdedikasi, yang berjalan pada pintu gerbang (gateway) antara jaringan lokal dan
jaringan lainnya. Firewall umumnya juga digunakan untuk mengontrol akses terhadap
siapa saja yang memiliki akses terhadap jaringan pribadi dari pihak luar.

Gambar 2.1 Bagan Firewall


Seperti terlihat pada bagan di atas firewall terbagi kedalam dua jenis :

1. Personal Firewall
Personal Firewall didesain untuk melindungi sebuah komputer yang
terhubung ke jaringan dari akses yang tidak dikehendaki. Firewall jenis ini akhirakhir 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
2. 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.
2.2 Fungsi Firewall
Untuk mencegah serangan maupun ancaman seperti penjelasan diatas,
dapat digunakan firewall. Fungsi umum firewall adalah :
1. Mengatur dan mengontrol lalu lintas jaringan
2. Melakukan autentikasi terhadap akses
3. Melindungi sumber daya dalam jaringan privat
4. Mencatat semua kejadian, dan melaporkan kepada administrator
2.3 Protokol
Protokol adalah sebuah standar aturan yang mengatur alat-alat dalam
jaringan komputer sehingga dapat saling berkomunikasi satu sama lain, dapat
berhubungan satu sama lain dan dapat melakukan perpindahan data satu sama
lain. Protokol dapat diterapkan pada perangkat keras (hardware), perangkat lunak
(software) dan kombinasi keduanya.
Banyak hal yang dapat dilakukan oleh Protokol, misalnya :
3

1. Melakukan deteksi terhadap perangkat fisik


2. Melakukan metode handshaking
3. Begoisasi berbagai macam hubungan
4. Mengawali dan mengakhiri suatu pesan
5. Mengatur format pesan yang akan digunakan
6. Apa yang harus dilakukan apabila pesan yang dikirimkan tidak sempurna
7. Mengakhiri suatu koneksi
Agar protokol yang dibuat dapat digunakan di berbagai vendor, maka dibentuk
organisasi-organisasi untuk standarisasi protokol. Misalnya ANSI, ITU, dll.
1. Protokol TCP
Protokol TCP (Transmission Control Protocol) adalah protokol yang terdapat
pada layer transport pada OSI layer. Karakteristik TCP :
a. Connection Oriented
Sebelum data ditansmisikan antara dua host, terlebih dahulu harus dilakukan
perjanjian antara kedua host tersebut untuk membuat sesi koneksi.
Selanjutnya diteruskan dengan Three-way Handshake.
b. Full Duplex
Koneksi antara dua host terdiri atas dua jalur, yaitu jalur keluar dan jalur
masuk.
c. Reliable
Data yang telah diterima akan diurutkan sesuai dengan saat data dikirimkan
dan memberikan tanda kalau suatu paket telah diterima.
d. Byte Stream
TCP melihat data yang dikirimkan dan diterima melalui dua jalur masuk dan
jalur keluar TCP sebagai sebuah byte stream yang berdekatan (kontigu).
e. Memiliki Flow Control
Untuk mencegah kemacetan pada saat data ditransmisikan karena terlalu
banyak data yang dikirimkan.
f. Melakukan segmentasi terhadap data yang datang dari layer aplikasi (OSI
layer).
g. Mengirimkan paket secara one-to-one
TCP mengirimkan data satu persatu agar tidak terjadi kemacetan pada saat
data ditransmisikan. Ini nanti berkaitan dengan Three-way Handshake.
2. Protokol UDP

Seperti halnya TCP, UDP (User Datagram Protocol) juga terdapat pada layer
transport. Karakteristiknya :
a. Connectionless
Pengiriman pesan pada UDP dilakukan tanpa adanya perjanjian antara dua
host yang akan melakukan koneksi.
b. Unreliable
Data yang dikirimkan berupa datagram sehingga tidak memiliki nomor urut.
c. Menyediakan penghitungan checksum berukuran 16-bit terhadap seluruh
pesan UDP.
3. Protokol TCP/IP
TCP/IP (Transmission Control Protocol/Internet Protocol) adalah protokol di
internet yang menjadi standar komunikasi data digunakan untuk pertukaran data
dan merupakan protokol yang paling sering dipakai saat ini. Protokol ini tidak
dapat berdiri sendiri, karena itu protokol ini memerlukan protokol suite. Protokolprotokol utama dalam TCP/IP :
a. Protokol pada layer aplikasi
Bertugas untuk menyediakan akses kepada aplikasi terhadap layanan
TCP/IP. Contohnya: DHCP (Dynamic Host Control Protocol), FTP (File
Transfer Protocol), HTTP (Hypertext Transfer Protocol).
b. Protokol layer antar host
Berfungsi untuk membuat komunikasi menggunakan sesi koneksi yang
bersifat connection-oriented. Contohnya TCP dan UDP (User Datagram
Protocol).
c. Protokol layer internetwork
Bertugas untuk melakukan routing dan enskapsulasi paket data menjadi
paket IP jaringan. Contohnya: IP(Internet Protocol), ICMP (Internet
Control Message Protocol).
d. Protokol layer interface jaringan
Bertugas meletakkan frame-frame jaringan pada media jaringan yang
digunakan.
2.4 Cara Kerja Firewall

Firewall berada di antara kedua jaringan seperti internet dan komputer


sehingga firewall berfungsi sebagai pelindung. Tujuan utama adanya firewall
adalah untuk user yang tidak menginginkan lalu lintas jaringan yang berusaha
masuk ke komputer, namun tidak hanya itu yang bisa dilakukan firewall. Firewall
juga dapat menganalisis jaringan yang mencoba masuk ke komputer, dan dapat
melakukan apa yang harus dilakukan ketika jaringan tersebut masuk. Contohnya,
firewall bisa diatur untuk memblokir beberapa jenis jaringan yang mencoba keluar
atau mencatat log lalu lintas jaringan yang mencurigakan. Firewall bisa memiliki
berbagai aturan yang dapat di tambahkan atau hapus untuk menolak jaringan
tertentu. Contoh, hanya dapat mengakses alamat IP tertentu atau mengumpulkan
semua akses dari tempat lain untuk ke satu tempat yang aman terlebih dahulu.

Gambar 2.2 ilustrasi firewall


2.4.1

Packet Filter Firewall


Packet filtering firewall adalah salah satu jenis teknologi keamanan yang

digunakan untuk mengatur paket-paket apa saja yang diizinkan masuk ke dalam
sistem atau jaringan dan paket-paket apa saja yang diblokir. Packet filtering
umumnya digunakan untuk memblokir lalu lintas yang mencurigakan yang datang
dari alamat IP yang mencurigakan, nomor port TCP/UDP yang mencurigakan,
jenis protokol aplikasi yang mencurigakan, dan kriteria lainnya.
Bagian yang diperiksa dari paket data tersebut adalah bagian header yang
berisi informasi penting, yaitu:
1. IP address sumber

2. IP address tujuan
3. Protokol ( TCP/UDP/ICMP )
4. Port sumber dari TCP atau UDP
5. Port tujuan dari TCP atau UDP
6. Tipe pesan dari ICMP
7. Ukuran dari paket
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. Firewall hanya melakukan pengujian terhadap alamat IP atau


nama domain yang menjadi sumber paket dan akan menentukan apakah hendak
meneruskan atau menolak paket tersebut.

Gambar 2.3 contoh pengaturan akses (access control) dalam firewall


2.4.1.1 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 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.
Pada beberapa sistem, teknik pengamanan jaringan dapat hanya dilakukan
dengan memasang router filtering dan hanya pada lokasi tertentu saja pada
jaringan. Oleh karena itu, router yang berfungsi sebagai filter harus dapat
mengambil keputusan apakah paket berasal dari jaringan lokal atau berasal dari
luar (internet), kegiatan ini disebut source address forgery. Seperti yang telah
disebutkan sebelumnya, bahwa yang diperiksa dari sebuah paket data adalah
bagian header nya yang mengandung informasi penting tentang paket tersebut.
1. Protokol : informasi yang terdapat pada header ini tersusun atas byte-byte. Byte
ke 9 merupakan informasi tentang protokol yang digunakan.
2. Alamat IP Sumber : IP address sumber yang mengirimkan paket data tersebut
(berukuran 32 byte).
3. Alamat IP Tujuan : IP address tujuan paket tersebut dikirimkan (berukuran 32
byte).
4. Port Sumber (TCP/UDP) : port yang menjadi tempat keluarnya paket data
pengirim. Pada setiap akhir dari koneksi TCP atau UDP tersambung dengan
sebuah port, Walaupun port-port TCP terpisah dan cukup jauh dari port-port
UDP. Port-port yang mempunyai nomor dibawah 1024 diterbalikan karena
nomor-nomor ini telah didefinisikan secar khusus, sedangkan untuk port-port
yang bernomor diatas 1024 (inklusif) lebih dikenal dengan port ephermal.
Konfigurasi dari nomor pengalamatan ini diberikan sesuai dengan pilihan dari
vendor.

5. Port Tujuan : port yang menjadi saluran masuk paket data pada komputer
penerima paket data.
6. Status Koneksi : status koneksi memperitahkan apakah paket data yang
dikirimkan adalah paket pertama dari sesi di jaringan. Jika paket merupakan
paket pertama maka pada TCP header diberlakukan false atau 0 dan untuk
mencegah sebuah host untuk mengadakan koneksi dengan menolak atau
membuang paket yang mempunyai bit set false atau 0. Header pada paket
data tersebut kemudian diperiksa , dengan cara membandingkannya dengan
policy atau kebijakan yang telah dibuat oleh administrator jaringan. Apabila
ada salah satu kebijakan tadi dilanggar, maka paket data yang datang akan di
drop.

Gambar 2.4 Packet Filter Firewall pada OSI


Terdapat dua jenis paket filtering firewall, yaitu :
1. Paket Filtering Statis
Paket filtering statis ini akan menentukan apakah akan menerima atau
memblokir setiap paket berdasarkan informasi yang terdapat pada header paket
tersebut (seperti IP address sumber dan tujuan, port sumber dan tujuan, dll). Paket
filtering statis ini umumnya terdapat pada system operasi dan router yang
menggunakan table daftar pengaturan akses (access control list). IT manager
dapat mengelola keamanan jaringannya dengan membuat policy/kebijakan. Setiap
paket yang filter akan dibandingkan dengan setiap peraturan yang diterapkan di
dalam filter tersebut. Apabila hasil dari perbandingan ini tidak cocok, maka paket

tersebut di blok. Namun, apabila sesuai paket tersebuat akan diteruskan. Untuk
lebih jelas, perhatikan ilustrasi cara kerjanya pada gambar berikut.

Gambar 2.5 Cara kerja paket filtering statis


Dari gambar di atas dapat dilihat, pada saat paket data datang dengan
alamat IP 192.168.0.2 dengan port 25 dan protocol TCP melewati filter, terjadi
pengecekan terhadap paket data tersebut. Informasi yang terdapat pada paket data
kemudian dibandingkan dengan rule yang terdapat pada firewall. Rule pertama
adalah tolak semua paket yang berasal dari alamat 202.14.*.* yaitu alamat
yang memiliki IP depan 202.14, karena alamat sumber paket bukan merupakan
alamat IP dengan angka depan 202.14, maka paket diteruskan pada pemeriksaan
dengan rule berikutnya. Rule dua menyebutkan tolak semua paket yang berasal
dari port 25. Sesuai dengan rule, paket yang datang tadi berasal dari port 25
sehingga, paket data akan di drop atau tidak diteruskan. Begitu pun dengan rule
tiga. Umumnya perangkat yang memiliki fitur paket filtering, mengizinkan
seorang administrator untuk menerapkan dua jenis peraturan. Pertama, inbound
rule yaitu pemeriksaan terhadap paket yang akan masuk ke dalam jaringan lokal
dari internet, Kedua outbound rule yaitu pemeriksaan yang dilakukan terhadap
paket yang akan keluar dari jaringan lokal menuju internet.
2. Paket Filter Dinamis

10

Paket filtering dinamis bekerja seperti halnya paket filtering statis, tetapi
pemeriksaan jenis ini juga tetap menjaga informasi sesi yang mengizinkan mereka
untuk mengontrol aliran paket antara dua host secara dinamis, dengan cara
membuka dan menutup port komunikasi antara keduanya sesuai dengan
kebutuhan. Penyaringan seperti ini sering diimplementasikan di dalam firewall,
dimana firewall tersebut dapat digunakan untuk mengontrol aliran data masuk ke
jaringan lokal, maupun aliran data yang keluar dari jaringan lokal. Misalnya,
sebuah paket filtering dinamis dapat dikonfigurasikan sedemikian rupa sehingga
hanya lalu lintas inbound protokol Hypertext Transfer Protocol (HTTP) saja yang
diizinkan masuk ke jaringan lokal, sebagai respon dari request dari klient HTTP
yang berada pada jaringan local. Untuk itu, lalu lintas outbound yang melalui port
80 dengan protokol TCP akan diizinkan, sehingga request HTTP dari klient yang
berada pada jaringan lokal dapat diteruskan. Untuk lebih jelas perhatikan gambar
di bawah ini.

Gambar 2.6 Cara kerja paket filtering dinamis


Ketika sebuah request HTTP outbound datang melalui filter, filter ini akan
melakukan pemeriksaan terhadap paket tersebut untuk memperoleh informasi sesi
TCP dari request itu, kemudian filter akan membuka port 80 untuk lalu lintas
inbound sebagai respon terhadap requst tadi. Ketika respon HTTP datang, respon
tersebut akan melalui port 80 menuju ke dalam jaringan, dan kemudian filter akan

11

menutup port 80 untuk lalu lintas inbound. Namun, filtering jenis ini dapat di
tembus oleh hacker dengan membajak sesi dari paket data, sehingga paket data
yang dikirim oleh hacker tersebut adalah paket data yang diizinkan sesuai dengan
rule yang di tetapkan.
2.4.1.2 Keunggulan dan Kelemahan Paket Filtering Firewall
Metode paket filtering firewall ini memiliki beberapa keunggulan, yaitu :
1. Performa yang tinggi, karena melakukan pengecekan terhadap banyak faktor
(port, ip address, dll).
2. Dapat diterapkan pada perangkat jaringan biasa router atau switch tanpa
memerlukan perangkat tambahan.
3. Efektif
Disamping itu paket filtering firewall ini juga memiliki kelemahan yang
berkaitan dengan konfigurasi, yaitu :
1. Konfigurasi kompleks, agak sulit dalam mengkonfigurasi karena penguasaan
terhadap port, ip address, dll.
2. Mudah terjadi kesalahan dalam konfigurasi.
3. Susah untuk mengkonfig pada protokol yang dinamis (misalnya FTP)
4. Tidak dapat meng-filter berdasarkan content ( misalnya lampiran pada email,
javascript, ActiveX)
2.5

Pemfilteran Paket (Packet Filtering) untuk Memfilter Informasi yang


Masuk
Kegunaan utama dari firewall adalah pemfilteran lalu lintas informasi.

Khusus untuk filter informasi yang masuk, firewall menginspeksi paket data saat
masuk ke sistem dan mengecek apakah paket data tersebut memenuhi kriteria
firewall yang telah didefinisi oleh administrator agar firewall dapat memberi ijin
ataupun menolak paket data tersebut. Firewall akan menolak semua paket data
yang tidak memenuhi kriteria firewall. Ada 2 macam penerapan kebijakan kriteria
firewall

yaitu

menggunakan

daftar

ijin

(whitelist)

dan

daftar

tolak

(blacklist). Dengan menerapkan whitelist, firewall akan menolak semua paket data
yang tidak memenuhi kriteria dalam daftar tersebut dan hanya mengijinkan paket
data

yang

memenuhi

kriteria

dalam

12

daftar.

Sedangkan

dengan

menerapkan blacklist, firewall akan menerima semua paket data yang tidak
memenuhi kriteria dalam daftar tersebut dan menolak semua paket yang
memenuhi kriteria dalam daftar.
Berikut adalah atribut-atribut utama pada TCP/IP yang digunakan untuk
membuat kriteria pemfilteran paket:
1. Alamat IP sumber
2. Alamat IP tujuan
3. Protokol IP
4. Port TCP dan UDP sumber
5. Port TCP dan UDP tujuan
6. Antarmuka tempat datangnya paket (The interface where the packet arrives)
7. Antarmuka tempat tujuan paket (The interface where the packet is destined)
Pembuat aplikasi umumnya sudah merancang aplikasi buatannya agar
dapat berjalan melalui firewall jaringan dan firewall host. Khusus untuk firewall
host, biasanya apabila sebuah aplikasi akan terhubung dengan internet untuk
pertama kalinya maka akan ada pemberitahuan kepada pengguna (dengan akses
administrator) dan pengguna dapat menentukan apakah aplikasi tersebut diijinkan
atau ditolak untuk terhubung dengan internet.

13

Gambar 2.7 Kriteria Windows Firewall untuk Remote Desktop

Gambar 2.8 Kriteria ZoneAlarm untuk Remote Desktop


14

Kedua contoh gambar di atas adalah contoh dari penerapan kriteria pada
dua perangkat lunak firewall host (Windows Firewall dan ZoneAlarm) untuk
mengijinkan paket data Remote Desktop dapat melewati firewall. Pada contoh
kriteria firewall di atas digunakan filter atribut port TCP yang digunakan oleh
aplikasi Remote Desktop yaitu port 3389. Selain menggunakan port, biasanya
perangkat lunak firewall host yang ada saat ini dapat menggunakan atribut
aplikasi tanpa perlu mengetahui portnya seperti pada contoh gambar di bawah ini.

Gambar 2.9 Kriteria Windows Firewall untuk aplikasi Torrent


2.6

Contoh Perangkat Lunak Firewall Yang Dapat Digunakan


Banyak tersedia perangkat lunak firewall pihak ketiga yang dapat

dijadikan alternatif apabila perangkat lunak yang sudah ada (Windows Firewall)
dirasa tidak sesuai. Berbagai jenis proteksi yang disediakan cukup beragam
sehingga dapat dibagi menjadi dua kategori yaitu basic firewall dan firewall
dengan HIPS (Host Intrusion Prevention System).
Basic firewall merupakan firewall yang membatasi akses terhadap sistem
baik pembatasan dari luar ke dalam maupun pembatasan dari dalam ke luar

15

sistem. Sedangkan firewall dengan HIPS merupakan firewall yang secara aktif
melakukan pengawasan terhadap aktivitas-aktivitas mencurigakan pada sistem
sebelum malware mendapat kesempatan untuk mengambil alih komputer. HIPS
sendiri merupakan sebuah program yang bertujuan untuk mempertahankan
integritas sistem yang dilindungi dengan cara mencegah perubahan krusial pada
sistem dari sumber-sumber yang tidak diketahui. Umumnya HIPS memberi tahu
pengguna apabila akan ada perubahan pada sistem dan membutuhkan otorisasi
dari pengguna untuk melakukan perubahan tersebut.
Berikut ini contoh perangkat lunak basic firewall dan HIPS pihak ketiga
untuk Microsoft Windows adalah:
1. ZoneAlarm Free Firewall (basic firewall)
2. Comodo Firewall (HIPS)
2.7 Proteksi Terhadap SSH Dictionary Attacks dengan Menggunakan
Firewall untuk Memfilter Informasi yang Masuk
Salah satu contoh kegunaan dari filter informasi yang masuk oleh firewall
adalah mencegah SSH dictionary attacks yang merupakan salah satu bentuk
umum serangan pada jaringan internet. Komputer-komputer host yang telah
dikuasai oleh penyerang akan secara terus-menerus mencari komputer host lain di
internet

yang

membuka

port

22

(SSH

scanning)

yang

merupakan

port default SSH, dan ketika berhasil menemukan komputer yang membuka port
22 maka komputer yang telah dikuasai penyerang akan mencoba masuk (login)
menggunakan daftar berbagai kombinasi username dan password (dictionary of
usernames and passwords) yang sudah mereka miliki. Apabila penyerang dapat
masuk ke komputer yang membuka port 22 tersebut maka penyerang dapat
menggunakan komputer tersebut untuk melakukan serangan lebih lanjut seperti
melakukan SSH scanning, denial of service attacks, dan menyimpan konten ilegal.

16

Gambar 2.10 Ilustrasi SSH dictionary attacks


Berbagai

cara

dapat

dilakukan

untuk

mencegah

SSH dictionary

attacks namun salah satu cara yang dapat digunakan adalah dengan cara
menggunakan firewall untuk memfilter informasi yang masuk. Kriteria firewall
dapat diatur menggunakan port sumber informasi dan alamat sumber informasi
sehingga hanya alamat-alamat yang terpercaya saja yang bisa mengakses port
SSH yaitu port 22.

17