Difference between revisions of "PRAKTEK 4: Analisis Trafik Jaringan"
Onnowpurbo (talk | contribs) (Created page with " PRAKTEK 4: Analisis Trafik Jaringan Modul ini dirancang praktis dan membumi, seperti yang biasa dibutuhkan di keamanan jaringan nyata: membaca trafik, memahami apa yang benar...") |
Onnowpurbo (talk | contribs) |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
| + | Modul ini dirancang praktis dan membumi, seperti yang biasa dibutuhkan di keamanan jaringan nyata: membaca trafik, memahami apa yang benar-benar lewat di kabel, dan menyadari perbedaan fundamental antara komunikasi aman dan tidak aman. | ||
| − | |||
| − | |||
Semua praktik menggunakan Ubuntu Linux 24.04, open-source tools, tanpa software proprietary, dan reproducible di lab kampus maupun laptop pribadi. | Semua praktik menggunakan Ubuntu Linux 24.04, open-source tools, tanpa software proprietary, dan reproducible di lab kampus maupun laptop pribadi. | ||
| − | Tujuan | + | |
| + | ==Tujuan== | ||
Setelah modul ini, mahasiswa mampu: | Setelah modul ini, mahasiswa mampu: | ||
| − | Membaca dan memahami trafik jaringan mentah | + | * Membaca dan memahami trafik jaringan mentah |
| − | Mengidentifikasi packet, protocol, dan payload | + | * Mengidentifikasi packet, protocol, dan payload |
| − | Menemukan data sensitif yang bocor | + | * Menemukan data sensitif yang bocor |
| − | Membandingkan trafik tidak aman (HTTP) vs trafik aman (HTTPS/TLS) | + | * Membandingkan trafik tidak aman (HTTP) vs trafik aman (HTTPS/TLS) |
| − | Menarik kesimpulan keamanan berbasis bukti | + | * Menarik kesimpulan keamanan berbasis bukti |
| + | |||
Mindset penting: | Mindset penting: | ||
Keamanan jaringan bukan asumsi — tapi hasil observasi. | Keamanan jaringan bukan asumsi — tapi hasil observasi. | ||
| − | Konsep Dasar (Wajib Dipahami) | + | |
| − | Packet | + | ==Konsep Dasar (Wajib Dipahami)== |
| + | |||
| + | ===Packet=== | ||
Unit data terkecil di jaringan. | Unit data terkecil di jaringan. | ||
Satu request web → puluhan packet. | Satu request web → puluhan packet. | ||
| + | |||
Setiap packet berisi: | Setiap packet berisi: | ||
| − | Header (alamat, protokol) | + | * Header (alamat, protokol) |
| − | Payload (isi data) | + | * Payload (isi data) |
| − | Protocol | + | |
| + | ===Protocol=== | ||
Aturan komunikasi, contoh: | Aturan komunikasi, contoh: | ||
| − | HTTP → teks polos | + | * HTTP → teks polos |
| − | HTTPS (TLS) → terenkripsi | + | * HTTPS (TLS) → terenkripsi |
| − | DNS → pencarian nama | + | * DNS → pencarian nama |
| − | TCP/UDP → transport | + | * TCP/UDP → transport |
| − | Payload | + | ===Payload=== |
Bagian paling berbahaya jika tidak dienkripsi | Bagian paling berbahaya jika tidak dienkripsi | ||
| + | |||
Contoh payload: | Contoh payload: | ||
| − | Username | + | * Username |
| − | Password | + | * Password |
| − | Token login | + | * Token login |
| − | Cookie sesi | + | * Cookie sesi |
Jika payload terbaca, maka siapa pun di jaringan bisa membacanya | Jika payload terbaca, maka siapa pun di jaringan bisa membacanya | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | sudo apt update | + | ==Tools Utama== |
| − | sudo apt install wireshark -y | + | |
| + | ===Wireshark=== | ||
| + | * Network protocol analyzer | ||
| + | * Open source | ||
| + | * Digunakan oleh: | ||
| + | ** Network engineer | ||
| + | ** Security analyst | ||
| + | ** Forensic investigator | ||
| + | |||
| + | ==Persiapan Lingkungan (Ubuntu 24.04)== | ||
| + | |||
| + | ===Install Wireshark=== | ||
| + | |||
| + | sudo apt update | ||
| + | sudo apt install wireshark -y | ||
| + | |||
Saat instalasi: | Saat instalasi: | ||
| + | |||
Pilih Yes → allow non-root users capture packets | Pilih Yes → allow non-root users capture packets | ||
Tambahkan user ke group wireshark: | Tambahkan user ke group wireshark: | ||
| − | sudo usermod -aG wireshark $USER | + | |
| − | newgrp wireshark | + | sudo usermod -aG wireshark $USER |
| − | Cek Interface Jaringan | + | newgrp wireshark |
| − | ip a | + | |
| + | ===Cek Interface Jaringan=== | ||
| + | |||
| + | ip a | ||
| + | |||
Biasanya: | Biasanya: | ||
| − | eth0 (LAN) | + | |
| − | wlan0 (WiFi) | + | eth0 (LAN) |
| − | Praktik 1 — Capture Trafik HTTP (Tidak Aman) | + | wlan0 (WiFi) |
| + | |||
| + | ==Praktik 1 — Capture Trafik HTTP (Tidak Aman)== | ||
| + | |||
Tujuan | Tujuan | ||
| − | Melihat data sensitif terbaca jelas | + | * Melihat data sensitif terbaca jelas |
| − | Langkah 1 — Jalankan Wireshark | + | |
| + | ===Langkah 1 — Jalankan Wireshark=== | ||
| + | |||
| + | wireshark | ||
| − | |||
Pilih interface aktif → Start Capture | Pilih interface aktif → Start Capture | ||
| − | Langkah 2 — Akses Website HTTP | + | |
| + | ===Langkah 2 — Akses Website HTTP=== | ||
| + | |||
Gunakan terminal: | Gunakan terminal: | ||
| − | curl http://httpbin.org/get | + | |
| + | curl http://httpbin.org/get | ||
| + | |||
Atau buka browser: | Atau buka browser: | ||
| − | http://neverssl.com | + | |
| − | Langkah 3 — Filter HTTP di Wireshark | + | http://neverssl.com |
| + | |||
| + | ===Langkah 3 — Filter HTTP di Wireshark=== | ||
| + | |||
Di filter bar: | Di filter bar: | ||
| − | http | + | |
| + | http | ||
| + | |||
Klik salah satu packet → lihat: | Klik salah satu packet → lihat: | ||
| − | Request Method | + | * Request Method |
| − | Host | + | * Host |
| − | URI | + | * URI |
| − | Payload | + | * Payload |
| + | |||
Analisis | Analisis | ||
| + | |||
Perhatikan: | Perhatikan: | ||
| − | URL terbaca | + | * URL terbaca |
| − | Parameter GET terbaca | + | * Parameter GET terbaca |
| − | Header lengkap | + | * Header lengkap |
| + | |||
Kesimpulan sementara: | Kesimpulan sementara: | ||
| − | HTTP tidak melindungi isi komunikasi | + | HTTP tidak melindungi isi komunikasi |
| + | |||
| + | ==Praktik 2 — Simulasi Data Sensitif Bocor== | ||
| − | |||
Kirim Data Login Palsu (HTTP) | Kirim Data Login Palsu (HTTP) | ||
| − | curl -X POST http://httpbin.org/post \ | + | curl -X POST http://httpbin.org/post \ |
| − | -d "username=student&password=rahasia123" | + | -d "username=student&password=rahasia123" |
| + | |||
Di Wireshark: | Di Wireshark: | ||
| − | Expand HTML Form URL Encoded | + | * Expand HTML Form URL Encoded |
| − | Password terlihat jelas | + | * Password terlihat jelas |
| + | |||
Fakta Penting | Fakta Penting | ||
| + | |||
Jika ini: | Jika ini: | ||
| − | WiFi publik | + | * WiFi publik |
| − | Jaringan kampus | + | * Jaringan kampus |
| − | Jaringan kantor | + | * Jaringan kantor |
Password bisa dicuri tanpa hacking akun | Password bisa dicuri tanpa hacking akun | ||
| − | Praktik 3 — Capture Trafik HTTPS (Aman) | + | |
| + | ==Praktik 3 — Capture Trafik HTTPS (Aman)== | ||
| + | |||
Akses HTTPS | Akses HTTPS | ||
| − | curl https://httpbin.org/get | + | curl https://httpbin.org/get |
| + | |||
Filter: | Filter: | ||
| − | tls | + | |
| + | tls | ||
| + | |||
Atau: | Atau: | ||
| − | tcp.port == 443 | + | |
| + | tcp.port == 443 | ||
| + | |||
Apa yang Terlihat | Apa yang Terlihat | ||
| − | TLS Handshake | + | * TLS Handshake |
| − | Certificate exchange | + | * Certificate exchange |
| − | Encrypted Application Data | + | * Encrypted Application Data |
| + | |||
Payload tidak terbaca | Payload tidak terbaca | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| + | {| class="wikitable" | ||
| + | |+ Perbandingan HTTP vs HTTPS | ||
| + | |- | ||
| + | ! Aspek !! HTTP !! HTTPS | ||
| + | |- | ||
| + | | Payload || Terbaca ||Terenkripsi | ||
| + | |- | ||
| + | | Password || Bocor || Aman | ||
| + | |- | ||
| + | | Integrity || Tidak ada || Ada | ||
| + | |- | ||
| + | | Authentication || Tidak ada || Sertifikat | ||
| + | |} | ||
| + | ==Praktik 4 — Analisis Metadata HTTPS== | ||
| + | Walaupun isi terenkripsi, metadata tetap terlihat | ||
| + | Yang masih bisa dilihat: | ||
| + | * IP tujuan | ||
| + | * Domain (SNI) | ||
| + | * Waktu koneksi | ||
| + | * Ukuran data | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
Ini penting untuk: | Ini penting untuk: | ||
| − | Traffic analysis | + | * Traffic analysis |
| − | Censorship | + | * Censorship |
| − | Monitoring | + | * Monitoring |
| + | |||
Diskusi Keamanan | Diskusi Keamanan | ||
| − | HTTPS melindungi isi, bukan pola | + | * HTTPS melindungi isi, bukan pola |
| − | VPN menyembunyikan metadata sebagian | + | * VPN menyembunyikan metadata sebagian |
| − | Keamanan = layered decision | + | * Keamanan = layered decision |
| − | Praktik 5 — Capture & Analisis dengan Python (Advanced) | + | |
| + | ==Praktik 5 — Capture & Analisis dengan Python (Advanced)== | ||
| + | |||
Install Library | Install Library | ||
| − | sudo apt install python3-pip -y | + | sudo apt install python3-pip -y |
| − | pip install scapy | + | pip install scapy |
| + | |||
Script Capture Packet Sederhana | Script Capture Packet Sederhana | ||
| − | from scapy.all import sniff | + | from scapy.all import sniff |
| + | |||
| + | def analyze(packet): | ||
| + | if packet.haslayer("IP"): | ||
| + | print(packet["IP"].src, "->", packet["IP"].dst) | ||
| + | |||
| + | sniff(prn=analyze, count=10) | ||
| − | + | '''Catatan:''' | |
| − | |||
| − | |||
| − | |||
| − | |||
Python cocok untuk: | Python cocok untuk: | ||
| − | Automation | + | * Automation |
| − | Detection | + | * Detection |
| − | Logging | + | * Logging |
| + | |||
Bukan GUI inspection (Wireshark tetap utama) | Bukan GUI inspection (Wireshark tetap utama) | ||
| − | Output yang Wajib Dikumpulkan | + | |
| + | ==Output yang Wajib Dikumpulkan== | ||
| + | |||
Screenshot | Screenshot | ||
| − | HTTP payload terbaca | + | * HTTP payload terbaca |
| − | HTTPS payload terenkripsi | + | * HTTPS payload terenkripsi |
| − | Filter yang digunakan | + | * Filter yang digunakan |
| − | Laporan Singkat (1–2 halaman) | + | |
| + | ==Laporan Singkat (1–2 halaman)== | ||
Wajib menjawab: | Wajib menjawab: | ||
| − | Apa perbedaan HTTP & HTTPS dari hasil capture? | + | * Apa perbedaan HTTP & HTTPS dari hasil capture? |
| − | Data apa yang berisiko bocor? | + | * Data apa yang berisiko bocor? |
| − | Mengapa HTTPS lebih aman? | + | * Mengapa HTTPS lebih aman? |
| − | Apakah HTTPS sepenuhnya aman? Jelaskan. | + | * Apakah HTTPS sepenuhnya aman? Jelaskan. |
| − | |||
| − | |||
| − | |||
| − | |||
| + | ==Refleksi Penting untuk Mahasiswa== | ||
| + | Keamanan jaringan bukan teori kriptografi. | ||
| + | Ia terlihat jelas saat kamu membuka packet. | ||
==Pranala Menarik== | ==Pranala Menarik== | ||
* [[Keamanan Informasi: Kuliah]] | * [[Keamanan Informasi: Kuliah]] | ||
Latest revision as of 07:37, 23 January 2026
Modul ini dirancang praktis dan membumi, seperti yang biasa dibutuhkan di keamanan jaringan nyata: membaca trafik, memahami apa yang benar-benar lewat di kabel, dan menyadari perbedaan fundamental antara komunikasi aman dan tidak aman.
Semua praktik menggunakan Ubuntu Linux 24.04, open-source tools, tanpa software proprietary, dan reproducible di lab kampus maupun laptop pribadi.
Tujuan
Setelah modul ini, mahasiswa mampu:
- Membaca dan memahami trafik jaringan mentah
- Mengidentifikasi packet, protocol, dan payload
- Menemukan data sensitif yang bocor
- Membandingkan trafik tidak aman (HTTP) vs trafik aman (HTTPS/TLS)
- Menarik kesimpulan keamanan berbasis bukti
Mindset penting: Keamanan jaringan bukan asumsi — tapi hasil observasi.
Konsep Dasar (Wajib Dipahami)
Packet
Unit data terkecil di jaringan. Satu request web → puluhan packet.
Setiap packet berisi:
- Header (alamat, protokol)
- Payload (isi data)
Protocol
Aturan komunikasi, contoh:
- HTTP → teks polos
- HTTPS (TLS) → terenkripsi
- DNS → pencarian nama
- TCP/UDP → transport
Payload
Bagian paling berbahaya jika tidak dienkripsi
Contoh payload:
- Username
- Password
- Token login
- Cookie sesi
Jika payload terbaca, maka siapa pun di jaringan bisa membacanya
Tools Utama
Wireshark
- Network protocol analyzer
- Open source
- Digunakan oleh:
- Network engineer
- Security analyst
- Forensic investigator
Persiapan Lingkungan (Ubuntu 24.04)
Install Wireshark
sudo apt update sudo apt install wireshark -y
Saat instalasi:
Pilih Yes → allow non-root users capture packets Tambahkan user ke group wireshark:
sudo usermod -aG wireshark $USER newgrp wireshark
Cek Interface Jaringan
ip a
Biasanya:
eth0 (LAN) wlan0 (WiFi)
Praktik 1 — Capture Trafik HTTP (Tidak Aman)
Tujuan
- Melihat data sensitif terbaca jelas
Langkah 1 — Jalankan Wireshark
wireshark
Pilih interface aktif → Start Capture
Langkah 2 — Akses Website HTTP
Gunakan terminal:
curl http://httpbin.org/get
Atau buka browser:
http://neverssl.com
Langkah 3 — Filter HTTP di Wireshark
Di filter bar:
http
Klik salah satu packet → lihat:
- Request Method
- Host
- URI
- Payload
Analisis
Perhatikan:
- URL terbaca
- Parameter GET terbaca
- Header lengkap
Kesimpulan sementara:
HTTP tidak melindungi isi komunikasi
Praktik 2 — Simulasi Data Sensitif Bocor
Kirim Data Login Palsu (HTTP)
curl -X POST http://httpbin.org/post \ -d "username=student&password=rahasia123"
Di Wireshark:
- Expand HTML Form URL Encoded
- Password terlihat jelas
Fakta Penting
Jika ini:
- WiFi publik
- Jaringan kampus
- Jaringan kantor
Password bisa dicuri tanpa hacking akun
Praktik 3 — Capture Trafik HTTPS (Aman)
Akses HTTPS
curl https://httpbin.org/get
Filter:
tls
Atau:
tcp.port == 443
Apa yang Terlihat
- TLS Handshake
- Certificate exchange
- Encrypted Application Data
Payload tidak terbaca
| Aspek | HTTP | HTTPS |
|---|---|---|
| Payload | Terbaca | Terenkripsi |
| Password | Bocor | Aman |
| Integrity | Tidak ada | Ada |
| Authentication | Tidak ada | Sertifikat |
Praktik 4 — Analisis Metadata HTTPS
Walaupun isi terenkripsi, metadata tetap terlihat
Yang masih bisa dilihat:
- IP tujuan
- Domain (SNI)
- Waktu koneksi
- Ukuran data
Ini penting untuk:
- Traffic analysis
- Censorship
- Monitoring
Diskusi Keamanan
- HTTPS melindungi isi, bukan pola
- VPN menyembunyikan metadata sebagian
- Keamanan = layered decision
Praktik 5 — Capture & Analisis dengan Python (Advanced)
Install Library
sudo apt install python3-pip -y pip install scapy
Script Capture Packet Sederhana
from scapy.all import sniff
def analyze(packet):
if packet.haslayer("IP"):
print(packet["IP"].src, "->", packet["IP"].dst)
sniff(prn=analyze, count=10)
Catatan:
Python cocok untuk:
- Automation
- Detection
- Logging
Bukan GUI inspection (Wireshark tetap utama)
Output yang Wajib Dikumpulkan
Screenshot
- HTTP payload terbaca
- HTTPS payload terenkripsi
- Filter yang digunakan
Laporan Singkat (1–2 halaman)
Wajib menjawab:
- Apa perbedaan HTTP & HTTPS dari hasil capture?
- Data apa yang berisiko bocor?
- Mengapa HTTPS lebih aman?
- Apakah HTTPS sepenuhnya aman? Jelaskan.
Refleksi Penting untuk Mahasiswa
Keamanan jaringan bukan teori kriptografi. Ia terlihat jelas saat kamu membuka packet.