Network Security
Firewall
1
Pengertian Firewall
2
Firewall adalah sebuah software atau hardware atau kombinasi
k d i t it di i t k h k tid k
keduanya maupun sistem itu sendiri untuk mencegah akses yang tidak berhak ke suatu jaringan sehingga ada suatu mekanisme yang
bertujuan untuk melindungi, baik dengan menyaring, membatasi atau bahkan menolak suatu hubungan/kegiatan (dari luar kedalam atau dari g g (
dalam ke luar) suatu segmen pada jaringan pribadi dengan jaringan luar
yang bukan merupakan ruang lingkupnya berdasarkan aturan-aturan yang ditetapkan.
Segmen tersebut dapat merupakan sebuah jaringan workstation Segmen tersebut dapat merupakan sebuah jaringan workstation, server,router, atau local area network (LAN) maupun wireless.
Konsep Firewall
3
Tujuan untuk melindungi, dengan :
M i hubungan /kegiatan suatu segmen pada
Menyaring membatasi menolak
S t b t d t k b h k t ti t t
hubungan /kegiatan suatu segmen pada jaringan pribadi dengan jaringan luar yang bukan merupakan ruang lingkupnya
Segmen tersebut dapat merupakan sebuah workstation, server, router, atau
Konfigurasi Sederhana
4
pc (jaringan local) <==> firewall <==> internet (jaringan lain)
p (j
g
)
(j
g
)
Boleh lewat mbak ? Nih surat-suratnya
Anak kecil ga boleh keluar.. sudah malam keluar.. sudah malam
Karakteristik Firewall
5
Seluruh hubungan/kegiatan dari dalam ke luar , harus
melewati firewall
melewati firewall.
Hal ini dapat dilakukan dengan cara memblok/membatasi baik
secara fisik semua akses terhadap jaringan Lokal, kecuali melewati firewall. Banyak sekali bentuk jaringan yang memungkinkan.y j g y g g
Hanya Kegiatan yang terdaftar/dikenal yang dapat
melewati/melakukan hubungan,
hal ini dapat dilakukan dengan mengatur policy pada konfigurasi
k l k l k k li j i fi ll d di ilih
keamanan lokal. Banyak sekali jenis firewall yang dapat dipilih sekaligus berbagai jenis policy yang ditawarkan.
Firewall itu sendiri haruslah kebal atau relatif kuat
terhadap serangan/kelemahan
terhadap serangan/kelemahan.
hal ini berarti penggunaan sistem yang dapat dipercaya dan dengan
Teknik Yang Digunakan
6
Service control (kendali terhadap layanan)
berdasarkan tipe-tipe layanan yang digunakan di Internet dan boleh diakses berdasarkan tipe tipe layanan yang digunakan di Internet dan boleh diakses
baik untuk kedalam ataupun keluar firewall. Biasanya firewall akan mencek no IP Address dan juga nomor port yang di gunakan baik pada protokol TCP dan UDP, bahkan bisa dilengkapi software untuk proxy yang akan menerima dan menterjemahkan setiap permintaan akan suatu layanan sebelum
iji k B hk bi j di ft d it di i ti mengijinkannya. Bahkan bisa jadi software pada server itu sendiri , seperti layanan untuk web ataupun untuk mail.
Direction Control (kendali terhadap arah)
berdasarkan arah dari berbagai permintaan (request) terhadap layanan yang
k dik li d diiji k l i fi ll akan dikenali dan diijinkan melewati firewall. User control (kendali terhadap pengguna)
berdasarkan pengguna/user untuk dapat menjalankan suatu layanan, artinya
ada user yang dapat dan ada yang tidak dapat menjalankan suatu servis,hal ini y g p y g p j , di karenakan user tersebut tidak di ijinkan untuk melewati firewall. Biasanya digunakan untuk membatasi user dari jaringan lokal untuk mengakses keluar, tetapi bisa juga diterapkan untuk membatasi terhadap pengguna dari luar. Behavior Control (kendali terhadap perlakuan)p p
berdasarkan seberapa banyak layanan itu telah digunakan. Misal, firewall dapat
EEPIS Secure Network
Tipe Firewall
8
Rule Based
Packet Filtering
Application Level
pp
I. Rules Based Firewall
9
Rule Firewall dibuat agar sesuai dengan aturan
yang telah dibuat.
Rule berdasarkan pada:
R
i
b
d fil
(Wh
i
)
Routing based filters (Who – siapa)
Pengirim dan penerima berasal dari mana ?
Mau ke mana ?
Tidak peduli mau ngapain di sana
Content based filters (What – mau apa)
(
p )
No port TCP/IP dan layanan
Apa yang akan kamu lakukan di sana ?
Tidak semudah yang nomer 1, sebab kadang-kadang bisa ditipu Tidak semudah yang nomer 1, sebab kadang kadang bisa ditipu
Dua pendekatan aturan
10
Default allow
Mengijinkan semua lewat kecuali yang terdaftar
Default deny
II. Packet Filtering
11
Packet Filtering diaplikasikan dengan cara mengatur semua
packet IP baik yang menuju melewati atau akan dituju oleh
packet IP baik yang menuju, melewati atau akan dituju oleh
packet tersebut.
pada tipe ini packet tersebut akan diatur apakah akan di
terima dan diteruskan atau di tolak
terima dan diteruskan , atau di tolak.
penyaringan packet ini di konfigurasikan untuk menyaring
packet yang akan di transfer secara dua arah (baik dari
atau ke jaringan lokal)
atau ke jaringan lokal).
Biasa dikenal sebagai packet inspection
PACKET FILTERING
12Contohnya: packet bertujuan ke server kita menggunakan IP 202.159.121.38 dengan port 80 (atribut yang dimiliki paket tsb)
( y g p )
An abbreviated packet…
Source SrcPort Destination DestPort 204.210.251.1 8104 128.146.2.205 31337
A Cisco packet filter
Packet Filtering Example
13
1. If source IP address = 10.*.*.*, DENY [private IP address range] 2 If source IP address 172 16 * * to 172 31 * * DENY [private IP 2. If source IP address = 172.16.*.* to 172.31.*.*, DENY [private IP
address range]
3. If source IP address = 192.168.*.*, DENY [private IP address range] 4. If source IP address = 60.40.*.*, DENY [firm’s internal address range]
4 4 , [f g ]
5. If source IP address = 1.2.3.4, DENY [black-holed address of attacker] 6. If TCP SYN=1 AND FIN=1, DENY [crafted attack packet], [ f p ]
7. If destination IP address = 60.47.3.9 AND TCP destination port=80 OR 443, PASS [connection to a public webserver]
8. If ICMP Type = 0, PASS [allow incoming echo reply messages] 9. If TCP destination port = 20, DENY [FTP data connection]
10. If TCP destination port = 21, DENY [FTP supervisory control
connection] connection]
Packet Filtering Example
14
11. If TCP destination port = 23, DENY [Telnet data connection] 12 If TCP destination port 135 through 139 DENY [NetBIOS 12. If TCP destination port = 135 through 139, DENY [NetBIOS
connection for clients]
13. If TCP destination port = 513, DENY [UNIX rlogin without
password]
14. If TCP destination port = 514, DENY [UNIX rsh launch shell without
login]
15. If TCP destination port = 22, DENY [SSH for secure login, but some
versions are insecure] versions are insecure]
16. If UDP destination port=69, DENY [Trivial File Transfer Protocol;
no login necessary]
17. If TCP SYN=1 AND ACK=0, DENY [attempt to open a connection
f th t id ] from the outside]
18. If TCP RST=1, DENY [do not allow outgoing resets; used in host
scanning]
Packet Filtering Example
15
DENY ALL
Rule yang terakhir
Men-drop semua paket yang tidak diijinkan oleh rule
p
p
y g
j
sebelumnya
Dalam ACL sebelumnya, rule 9-18 tidak diperlukan karena
D
All k
bl k
Packet Filtering
16
Kelebihan dari tipe ini adalah mudah untuk di
Kelebihan dari tipe ini adalah mudah untuk di
implementasikan, transparan untuk pemakai,
lebih cepat
Kelemahannya :
Kelemahannya :
Cukup rumitnya untuk menyetting paket yang akan
difilter secara tepat, serta lemah dalam hal authentikasi
M d h j di i k fi
i
Mudah terjadi miskonfigurasi
Sukar melakukan konfigurasi terhadap protokol yang
dinamis
Tidak dapat menangani
content-based filtering (remove
Packet Filtering
17
Serangan yang mungkin terjadi
g
y g
g
j
IP address spoofing :
intruder (penyusup) dari luar dapat melakukan ini dengan cara
menyertakan/menggunakan ip address jaringan lokal yang telah diijinkan untuk melalui firewall
diijinkan untuk melalui firewall.
Source routing attacks :
tipe ini tidak menganalisa informasi routing sumber IP, sehingga
memungkinkan untuk membypass firewall.
Ti F k
Tiny Fragment attacks :
intruder (penyusup) membagi IP kedalam bagian-bagian (fragment) yang
lebih kecil dan memaksa terbaginya informasi mengenai TCP header. Serangan jenis ini di design untuk menipu aturan penyaringan yang b t k d i f i d i TCP h d P b h
bergantung kepada informasi dari TCP header. Penyerang berharap hanya bagian (fragment) pertama saja yang akan di periksa dan sisanya akan bisa lewat dengan bebas. Hal ini dapat di tanggulangi dengan cara menolak semua packet dengan protokol TCP dan memiliki Offset = 1 pada IP fragment (bagian IP)
III.Aplication Level Gateway (Proxy Firewall)
p
y (
y
)
Mekanismenya tidak hanya berdasarkan
18
y
y
sumber, tujuan dan atribut paket, tetapi juga
bisa mencapai isi paket tersebut
Application Level
19
Application-level Gateway yang biasa juga di kenal sebagai proxy
server yang berfungsi untuk memperkuat/menyalurkan arus aplikasi server yang berfungsi untuk memperkuat/menyalurkan arus aplikasi. Tipe ini akan mengatur semua hubungan yang menggunakan layer aplikasi ,baik itu FTP, HTTP, GOPHER dll.
Cara kerjanya adalah apabila ada pengguna yang menggunakan salah
satu aplikasi semisal FTP untuk mengakses secara remote maka satu aplikasi semisal 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 terhadap aplikasi tersebut yang terdapat pada remote host, dan
menyalurkan data diantara kedua titik. Apabila data tersebut tidak sesuai maka firewall tidak akan meneruskan data tersebut atau menolaknya. Lebih jauh lagi, pada tipe ini Firewall dapat di
konfigurasikan untuk hanya mendukung beberapa aplikasi saja dan konfigurasikan untuk hanya mendukung beberapa aplikasi saja dan menolak aplikasi lainnya untuk melewati firewall.
20
FIREWALL
FIREWALL
Iptables
netfilter/iptables terdiri dari 3 tabel: filter, nat, mangle
21
Perintah 'iptables' digunakan untuk mengelola,
memaintain, menginspeksi rule-rule IP packet filter
dalam kernel linu
dalam kernel linux.
Rule di chain :
1. ACCEPT
1. ACCEPT
Menerima paket dan diproses lebih lanjut oleh kernel.
2. DROP
l k
k
b
h
k l
Menolak paket tanpa pemberitahuan sama sekali.
3. REJECT
Mengembalikan paket ke asalnya dengan pesan
Mengembalikan paket ke asalnya dengan pesan
Tabel pada IPTABLES
filter:
Tabel default yang digunakan oleh iptables. Terdapat 3
Tabel default yang digunakan oleh iptables. Terdapat 3
chain : INPUT, FORWARD, OUTPUT
mangle:
Digunakan untuk merubah paket atau untuk keperluan QoS
g
p
p
Q
(Quality of Service), yaitu:
1. TOS (Type of Service), bagaimana paket diroutekan
2. TTL (Time to Live)
Tabel pada IPTABLES
nat:nat:
Fungsi utama dari NAT adalah untuk melakukan translasi alamat dari satu alamat ke alamat IP yang lain, biasanya dipakai pada internet gateway (POSTROUTING) Selain melakukan translasi alamat IP gateway (POSTROUTING). Selain 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 membangun beberapa server seperti mail, web, database maupun
datacenter yang diakses melalui internet hanya dengan satu alamat IP publik (PREROUTING).
iptables
Terdapat 3 kumpulan aturan yang disebut chain,
24
p 3
p
y g
,
yaitu :
1. INPUT
Paket-paket yang diarahkan ke mesin firewall
2. FORWARD
Paket-paket yang diteruskan melewati firewall
3. OUTPUT
Paket-paket yang menuju jaringan eksternal dan
meninggalkan firewall
Contoh iptables
Untuk menambah daftar
28
#iptables –t filter -A FORWARD -s 192.168.56.100/32 -j DROP
#iptables -A FORWARD -s 192 168 56 100/32 -j DROP #iptables A FORWARD s 192.168.56.100/32 j DROP
Untuk melihat daftar
#iptables -nL
Untuk menghapus daftar
#iptables -D FORWARD -s 192.168.56.100/32 -j DROP
Untuk menghapus semua daftar
Untuk menghapus semua daftar
#iptables -F
Untuk menyimpan iptables
Contoh iptables
Untuk mendrop service ssh
29
#iptables -A FORWARD -p tcp --dport 22 -j DROP
Untuk mendrop icmp (ping) -> semuanya
#iptables -A FORWARD -p icmp -j DROP
Drop icmp dari jaringan 192.168.56.0
#iptables -A FORWARD -s 192.168.56.0/24 -p icmp -j DROP
Drop semuanya kecuali dari IP tertentu
Drop semuanya kecuali dari IP tertentu
#iptables -A FORWARD -s ! 192.168.56.100 -p icmp -j DROP
Drop ke port 80 (http)
Penggunaan IPTABLES
1. Membatasi akses port aplikasi P2P (Limewire, GnuTella & Bearshare)
# iptables -A FORWARD -p tcp --dport 6340:6350 -j REJECT
30
p p p p j
# iptables -A FORWARD –p udp --dport 6340:6350 -j REJECT -p tcp (koneksi menggunakan protokol TCP)
-p udp (koneksi menggunakan protokol UDP)p udp (koneksi menggunakan protokol UDP)
-dport 6340:6350 (melarang akses port 6340 sampai dengan 6350) 2. Membatasi koneksi satu alamat IP
# iptables -A FORWARD -s 192.168.1.99 -d 0/0 -j REJECT # iptables A FORWARD s 192.168.1.99 d 0/0 j REJECT -d 0/0 berarti ke semua tujuan
3. Membatasi koneksi berdasarkan range IP
# iptables -A FORWARD -m iprange --src-range 192.168.1.100-# iptables A FORWARD m iprange src range 192.168.1.100 192.168.1.150 -d 0/0 -j REJECT
4. Membatasi koneksi internet berdasarkan MAC Address
# iptables -A FORWARD -m mac --mac-source 00:30:18:AC:14:41 p -d 0/0 -j REJECT