Anda di halaman 1dari 68

Network Security – Hari 1

Iwan Sofana
Objektif

 Mengenal model OSI dan TCP/IP


 Memahami protokol TCP, UDP, dan IP
 Isu security pada TCP/IP
 Memahami paket TCP, UDP, dan IP
 Menggunakan Wireshark untuk menganalisa
traffic TCP/IP
Latar Belakang

 Sejak dari awal, TCP/IP tidak didisain sebagai


sebuah protokol yang “secure”
 Sehingga fitur security pada TCP/IP bersifat
optional atau terkesan “tambal sulam”
 Semua perangkat berbasis TCP/IP dapat
dipandang “tidak secure”
 Sangat penting memahami isu security dan cara
kerja TCP/IP
OSI

 Model OSI 7 layer merupakan model referensi yang


digunakan untuk memahami cara kerja network
secara umum
 Model ini sangat penting untuk dipahami, khususnya
bagi mereka yang berkecimpung dalam dunia
network berbasis perangkat Cisco dan Mikrotik
 Cisco Academy mewajibkan para siswa untuk
memahami OSI layer dan kaitannya dengan Cisco
network device
OSI

 Dapat dibagi menjadi:



OS layer atau Upper layer

Network layer atau Media layer
 Komunikasi masing-masing layer:

Secara Vertikal, antar satu layer dengan layer di
atas/bawah, pada mesin yang sama

Secara Horisontal, antar satu layer dengan layer
yang sama, pada mesin yang berbeda
OSI Layer
Komunikasi Vertikal
Komunikasi Horisontal
OSI

 Data mengalir dari satu layer ke layer yang lain dan


mengalami “perubahan bentuk”

Data

Segment

Packet

Frame

Bit
 Disebut encapsulation (enkapsulasi) dan de-
encapsulation (de-enkapsulasi)
Perubahan Bentuk
Enkapsulasi

 ALH = Application
Layer Header
 PLH =
Presentation
Layer Header
 SLH = Session
Layer Header
 TLH = Transport
Layer Header
 NLH = Network
Layer Header
 DLH = Data Link
Layer Header
Enkapsulasi – de Enkapsulasi
OSI

 Beberapa perangkat network dapat dipetakan


dengan masing-masing OSI layer, khususnya Lower
Layer
 Perangkat umum, seperti: komputer, IP Phone, dan
sebagainya juga dapat dipetakan dengan OSI layer
 Perlu dipahami MODEL OSI BUKANLAH SEBUAH
PROTOKOL
OSI dan Device
Protokol

 Protokol adalah sekumpulan aturan yang digunakan


dalam komunikasi data
 Protokol mengatur bagaimana terjadinya hubungan
dan perpindahan data antara dua mesin
 Secara umum format protokol meliputi:

Format informasi

Pewaktuan (timing)

Urutan (sequencing)

Kontrol kesalahan (error control)
Protokol

 Sebagian besar protokol memiliki karakteristik sbb:



Mendeteksi apakah ada koneksi fisik atau tidak, yang
dilakukan oleh komputer atau mesin lain

Melakukan handshaking

Menjadi negosiator berbagai macam karakteristik koneksi

Mengatur bagaimana mengawali dan mengakhiri suatu
pesan

Menentukan format pesan

Melakukan error detection dan error correction saat
menemukan pesan yang rusak

Mengakhiri koneksi
TCP/IP

 Merupakan protokol standar jaringan Internet


 Pengembangan model DARPA dan dipandang
sebagai penyederhanaan model OSI
 Beberapa fungsi layer-layer TCP/IP dapat
disepadankan dengan layer-layer OSI
 Terdiri atas 4 layer, namun saat ini sudah direvisi
menjadi 5 layer
Contoh Aplikasi TCP/IP
TCP/IP

 TCP/IP memiliki beberapa karakteristik yang


menjadikannya unggul, antara lain:

Bersifat standar, terbuka dan tidak bergantung pada
perangkat keras atau sistem operasi tertentu

Bebas dari jaringan fisik tertentu, memungkinkan
integrasi berbagai jenis jaringan (ethernet, token ring,
dsb)

Mempunyai skema pengalamatan yang umum bagi
setiap device yang terhubung dengan jaringan

Menyediakan berbagai layanan untuk pengguna
TCP/IP

 Terdiri dari dua buah protokol, yaitu protokol TCP


(Transmission Control Protocol) dan protokol IP
(Internet Protocol)
 Protokol TCP mengatur koneksi dan transportasi
data
 Protokol IP mengatur pengalamatan (address) dan
routing data
 IP address dan MAC address ditangani via protokol
ARP/RARP
Transport Layer

 Mengatur koneksi antar aplikasi yang ada pada


masing-masing host
 Koneksi yang bersifat reliable menggunakan
protokol TCP
 Sedangkan koneksi yang non-reliable
menggunakan protokol UDP
 TCP dan UDP memerlukan nomor port untuk
aplikasi, dan menggunakan Network Layer untuk
mengakses network TCP/IP
TCP

 Protokol TCP memiliki karakteristik:



Connection oriented

Reliable

Byte stream service
TCP

 TCP bersifat connection oriented, artinya sebelum


proses transmisi data terjadi, dua aplikasi TCP
harus melakukan pertukaran kontrol informasi
(dikenal sebagai 3 way handshaking)
TCP

 TCP bersifat reliable karena memiliki fitur deteksi


kesalahan dan retransmisi apabila ada data yang
rusak, dikenal sebagai PAR (Positive
Acknowlegment with Re-Transmission)

Data yang dipertukarkan antara TCP module
disebut Segment atau Data Segment

Setiap segment berisi sebuah checksum yang
digunakan oleh recipient, untuk memverifikasi
apakah data dalam kondisi OK
TCP Header
TCP


Jika data segment yang dterima sudah OK, maka
receiver mengirim sebuah Positive
Acknowledgment ke sender

Jika data segment rusak, maka receiver akan
memusnahkan data segment

Setelah beberapa saat, sending TCP module
akan mere-transmit setiap segment yang Positive
Acknowledgment-nya tidak diterima
TCP

 Byte stream service artinya paket akan dikirimkan


ke tujuan secara berurutan (sequencing)

TCP akan memandang data yang dikirim sebagai
“continuous stream of bytes”, bukan sebagai
independent packet

TCP akan mengatur sequence bytes yang dikirim
atau diterima dengan memanfaatkan field
Sequence Number (SN) dan Acknowledgment
Number
UDP

 Protokol UDP memiliki karakteristik:



Connectionless oriented

Unreliable

Non sequencing datagram service
UDP

 Bersifat connectionless oriented, artinya saat


melakukan pengiriman data tidak dilakukan proses
handshaking
 Tidak ada sequencing datagaram dan tidak ada
garansi bahwa paket data (datagram) yang dikirim
akan tiba semuanya
 UDP tidak menyediakan fitur error detection dan
error corection, hanya ada checksum yang bersifat
opsional
UDP

 Untuk menghasilkan transmisi data yang reliable,


haruslah dibantu dan dilakukan di tingkat aplikasi.
Tidak bisa dikerjakan di level protokol UDP
 Pengiriman paket dilakukan atas dasar "best effort
basis"
 Karena “meniadakan” fitur handshaking dan error
detection, maka overhead UDP lebih ringan
dibandingkan TCP
 Secara umum pengiriman data via UDP jauh lebih
cepat dibandingkan TCP
UDP Header
IP

 Internet Protokol (IP) ada pada layer Internet


 Bersifat connectionless dan unreliable
 Saat ini banyak digunakan IP versi 4 (IPv4)
 Untuk mengatasi “lonjakan” permintaan IP address,
sudah disediakan IPv6 address
 Pada header IP ada field berisi Internet address (IP
address) asal and tujuan
IP Header
IP Address
Security TCP/IP

 TCP/IP tidak di-disain sebagai protokol yang secure


 Tidak ada mekanisme otentikasi atau enkripsi data
 Tidak ada jaminan bahwa data yang diterima atau
dikirim tidak akan “dicegat dan diganti” di tengah
jalan
 Tidak ada yang dapat mencegah penggunaan IP
address yang sama, di tempat lain pada saat yang
sama
 Cukup banyak paper, makalah, penelitian yang telah
mengupas isu security pada TCP/IP
https://www.researchgate.net/publication/237269201_Chapter_1_Security_Issues_in_the_TCPIP_Suite
Security TCP/IP - TCP

 Protokol TCP sering menjadi target serangan


 Beberapa komponen kritis pada TCP:

Source and Destination Port

TCP Flags

Initial Sequence Number (ISN)
Security TCP/IP – TCP Port
Security TCP/IP – TCP Port

 Port berjumlah 16 bit (atau 65536 port)


 Setiap TCP port terdiri atas source/destination port
 Merupakan alamat logical, bukan physical, dan
komponen pada TCP connection
 Mengidentifikasi service yang berjalan, misal:

HTTP menggunakan port 80

FTP mengggunakan port 21

SMTP menggunakan port 25

Silakan amati file /etc/services (Unix/Linux) atau
mengakses www.iana.org
Security TCP/IP – TCP Port

 Hanya sekitar 1023 port yang termasuk dalam


katagori well known port
 Membuka semua port akan memberikan peluang
serangan
 Menutup semua port akan menghentikan network
 Buka hanya port yang sesuai dengan servis yang
disediakan
 Attacker dapat melakukan port scanning untuk
menebak port yang terbuka
Security TCP/IP – TCP Flags
Security TCP/IP – TCP Flags

 Merupakan Control Bits (panjang 6 bit)


 Setiap flag berukuran 1 bit, yaitu:

SYN: Synchronize flag (Synchronize sequence
numbers)

ACK: Acknowledge flag (Acknowledgment field
significant)

PSH: Push flag (Push Function)

URG: Urgent flag (Urgent Pointer field significant)

RST: Reset flag (Reset the connection)

FIN: Finish flag (No more data from sender)

Security TCP/IP – ISN
Security TCP/IP – ISN

 Ingat kembali bahwa TCP menerapkan 3 Way


Connection Handshake
 Beberapa flags muncul dalam fase handshake
 Setiap flag akan diiringi dengan nomor urut
(sequence number atau SN)
 Nomor pertama yang muncul disebut Initial
Sequence Number atau ISN
 ISN ditentukan secara random, berukuran 32 bit
3 Way Con. Handshake
Security TCP/IP – ISN

 Paket berukuran besar, akan dipotong kecil-kecil,


setiap potongan diberi SN, kemudian dikirim ke
network
 Paket dikirim secara berurutan, namun tidak selalu
tiba secara berurutan, hal ini dipengaruhi oleh
kondisi network (kecepatan link, routing, dan
sebagainya)
 SN akan membantu proses penggabungan ulang
paket-paket di sisi penerima
Security TCP/IP – ISN

 Fase handshake dapat dimanipulasi oleh attacker,


dikenal dengan istilah SYN Spoofing Attack
 Attacker mencoba menebak ISN
 TCP session dapat di hijack, dapat dibuat lumpuh,
yang dikenal dengan sebutan DoS attack
 Attacker dapat mengakses server tanpa perlu
melakukan log in
SYN Spoofing Attack
Security TCP/IP – ISN

 Beberapa protokol selain TCP (pada TCP/IP stack)


dapat diserang juga
 Beberapa contoh serangan:

ICMP Spoofing

Ping Flood

HTTP Flood

VoIP Session Initiation Protocol (SIP) Flood

DNS Reflection Attack

dsb
DNS Reflection Attack
Mengamankan Network

 Untuk mengamankan network TCP/IP, telah


diterapkan berbagai teknik pengamanan, seperti:

Penggunaan firewall dan router

Implementasi private address untuk LAN

Pemakaian secure socket (SSL) pada aplikasi
Web

Menambah fitur otentikasi pada berbagai aplikasi
TCP/IP

Penerapan public/private key untuk transaksi data

Dan sebagainya
Menganalisa Traffic

 Untuk menganalisa traffic TCP/IP dapat digunakan


aplikasi packet shiffing, seperti Wireshark
 Wireshark bersifat open source dan tersedia di
lingkungan Linux, Windows, serta Mac
 Dapat digunakan untuk mengenali dan menganalisa
berbagai traffic dari berbagai protokol
 Salah satu tool yang berharga untuk menganalisa
network atau belajar network security
Workshop

 Instal Wireshark pada komputer. Wireshark versi


terbaru dapat di-download dari
https://www.wireshark.org/download.html
 Slide berikutnya menampilkan screen shoot dasar-
dasar penggunaan Wireshark
 Jika sudah memahaminya, silakan mencoba men-
capture paket TCP, UDP, dan IP
 Cobalah menganalisa hasil capture dan
membandingkannya dengan konsep TCP, UDP, IP
 Wireshark mempunyai fitur yang lengkap,
diantaranya adalah :

Multiplatform (Windows, Linux, Mac)

Dapat melakukan capture paket data jaringan secara real
time

Dapat menampilkan informasi protokol jaringan dari paket
data secara lengkap

Paket data dapat disimpan menjadi file dan nantinya dapat
dibuka kembali untuk analisis lebih lanjut

Filtering paket data jaringan

Pencarian paket data dengan kriteria spesifik

Menampilkan data statistik, dsb
1. Jalankan Wireshark (sebagai root atau Admin)
2. Pilih network interface
3. Klik Capture >>. Start
4. Menganalisa traffic, misal melihat address
5. Menyimpan hasil capture, klik Capture >> Stop

Lalu klik File >> Save

Anda mungkin juga menyukai