5
Network Forensic Aris Cahyadi Risdianto #1 # School of Electrical Engineering and Informatics, Institute of Technology Bandung Ganesa 10 th , Bandung, Indonesia 1 [email protected] Abstraksi— Dengan adanya perkembangan Internet di berbagai tempat seperti kantor, rumah, dan sebagainya, hal ini menunjukkan bahwa computing telah menjadi sesuatu yang network-centric dan data-data sangat tersedia diluar bukti-bukti yang berbentuk disk digital. Oleh karena ini untuk mendapatkan data-data tersebut diperlukan proses untuk menangkap, menyimpan dan menganalisa event-event yang ada dalam jaringan, bahkan lebih jauh lagi harus dapat digunakan untuk merekonstruksi event-event tersebut apabila dibutuhkan untuk investigasi suatu kasus atau masalah. Proses yang pro-active ini sering disebut dengan Network Forensic. Dalam paper ini akan dijelaskan tentang apa itu network forensic, dan bagaimana suatu proses network forensic dalam mengumpulkan data-data trafik, menganalisa dan kemungkinan untuk melakukan rekonstruksi. Sebagai studi kasus akan ditunjukkan bagaimana suatu network forensic tool dalam melakukan investigasi terhadap suatu koneksi TCP, dimana terdapat suatu nomor-nomor tertentu (TCP sequence number dan Acknowledgement number). Kata Kunci— Forensic, Internet, Network Forensic, TCP, sequence number, dan acknowledgement. I. PENDAHULUAN Α. Latar Belakang Tidak selamanya digital evidence yang ada dalam suatu disk atau memory komputer akan tersimpan secara aman untuk jangka waktu tertentu atau mungkin yang sangat lama. Bukti-bukti tersebut dapat dihilangkan dengan berbagai macam cara baik secara sengaja atau tidak sengaja. Oleh karena dibutuhkan suatu teknik atau mekanisme forensik baru untuk melakukan rekonstruksi suatu event atau data-data yang dihasilkan dari event tersebut, tanpa memerlukan disk atau memory yang ada dalam suatu host atau komputer. Β. Definisi Network forensics merupakan bagian dari digital forensics yang berhubungan dengan monitoring dan analisa dari trafik pada jaringan komputer dengan tujuan untuk information gathering, legal evidence dan intrusion detection. Proses ini secara umum lebih praktis dilakukan dengan mengumpulkan semua trafik dan menganalisa sebagian jika diperlukan. Proses ini sering disebut juga dengan reconstructive traffic analysis. C. Computer Forensic versus Network Forensic Network forensics dapat dilakukan sebagai investigasi terpisah atau bersama-sama dengan computer forensics analysis (dimana biasanya digunakan untuk menemukan hubungan antara beberapa perangkat digital atau merekonstruksi bagaimana kriminal tersebut dilakukan). Apabila dibandingkan dengan computer forensics, yang pada umumnya bukti tersimpan dalam suatu disk, network forensic data lebih volatile (tidak tersimpan), unpredictable (tidak bisa dipresiksi), dan dynamic information (informasinya sangat dinamis atau berubah-ubah). Trafik jaringan setelah ditransmisikan akan hilang dengan sendirinya, sehingga biasanya memerlukan suatu suatu pro-active investigation. Investigator biasanya hanya memiliki bahan-bahan untuk investigasi apabila packet filters, firewalls, dan intrusion detection systems telah sedemikian rupa dipersiapkan untuk menghadapi serangan terhadap sistem keamanan. D. Penempatan dan Tujuan dari Network Forensic Seperti kita ketahui bahwa firewalls and intrusion-detection systems (IDSs) merupakan perangkat jaringan yang sudah terpasang dengan baik untuk memberikan keamanan pada jaringan. Oleh karena itu apakah fungsi dan kegunaan dari network forensic, akankah mengganti perangkat-perangkat ini atau merupakan pelengkap? Network Forensic dapat bersinergi dengan beberapa perangkat IDS dan Firewall dalam dua cara, yaitu untuk menyediakan record dalam jangka panjang dari trafik jaringan dan memberikan analisa yang cepat dari permasalahan yang diidentifikasi dari kedua perangkat tersebut. Sebagai komplemen dari sistem keamanan yang sudah ada, network forensic harus mampu melakukan tiga hal sekaligus, yaitu harus mampu menangkap trafik (capture), menganalisa trafik sesuai dengan kebutuhan pengguna (analysis), dan harus mampu memberikan kemampuan kepada investigator untuk menemukan sesuatu yang berguna dan penting dari trafik yang dianalisa (discovery).

Network Forensic dengan TCPDUMP

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Network Forensic dengan TCPDUMP

Network ForensicAris Cahyadi Risdianto#1

#School of Electrical Engineering and Informatics, Institute of Technology BandungGanesa 10th, Bandung, [email protected]

Abstraksi— Dengan adanya perkembangan Internet di berbagai tempat seperti kantor, rumah, dan sebagainya, hal ini menunjukkan bahwa computing telah menjadi sesuatu yang network-centric dan data-data sangat tersedia diluar bukti-bukti yang berbentuk disk digital. Oleh karena ini untuk mendapatkan data-data tersebut diperlukan proses untuk menangkap, menyimpan dan menganalisa event-event yang ada dalam jaringan, bahkan lebih jauh lagi harus dapat digunakan untuk merekonstruksi event-event tersebut apabila dibutuhkan untuk investigasi suatu kasus atau masalah. Proses yang pro-active ini sering disebut dengan Network Forensic. Dalam paper ini akan dijelaskan tentang apa itu network forensic, dan bagaimana suatu proses network forensic dalam mengumpulkan data-data trafik, menganalisa dan kemungkinan untuk melakukan rekonstruksi. Sebagai studi kasus akan ditunjukkan bagaimana suatu network forensic tool dalam melakukan investigasi terhadap suatu koneksi TCP, dimana terdapat suatu nomor-nomor tertentu (TCP sequence number dan Acknowledgement number).

Kata Kunci— Forensic, Internet, Network Forensic, TCP, sequence number, dan acknowledgement.

I. PENDAHULUAN

Α. Latar Belakang

Tidak selamanya digital evidence yang ada dalam suatu disk atau memory komputer akan tersimpan secara aman untuk jangka waktu tertentu atau mungkin yang sangat lama. Bukti-bukti tersebut dapat dihilangkan dengan berbagai macam cara baik secara sengaja atau tidak sengaja. Oleh karena dibutuhkan suatu teknik atau mekanisme forensik baru untuk melakukan rekonstruksi suatu event atau data-data yang dihasilkan dari event tersebut, tanpa memerlukan disk atau memory yang ada dalam suatu host atau komputer.

Β. Definisi

Network forensics merupakan bagian dari digital forensics yang berhubungan dengan monitoring dan analisa dari trafik pada jaringan komputer dengan tujuan untuk information

gathering, legal evidence dan intrusion detection. Proses ini secara umum lebih praktis dilakukan dengan mengumpulkan semua trafik dan menganalisa sebagian jika diperlukan. Proses ini sering disebut juga dengan reconstructive traffic analysis.

C. Computer Forensic versus Network Forensic

Network forensics dapat dilakukan sebagai investigasi terpisah atau bersama-sama dengan computer forensics analysis (dimana biasanya digunakan untuk menemukan hubungan antara beberapa perangkat digital atau merekonstruksi bagaimana kriminal tersebut dilakukan). Apabila dibandingkan dengan computer forensics, yang pada umumnya bukti tersimpan dalam suatu disk, network forensic data lebih volatile (tidak tersimpan), unpredictable (tidak bisa dipresiksi), dan dynamic information (informasinya sangat dinamis atau berubah-ubah). Trafik jaringan setelah ditransmisikan akan hilang dengan sendirinya, sehingga biasanya memerlukan suatu suatu pro-active investigation. Investigator biasanya hanya memiliki bahan-bahan untuk investigasi apabila packet filters, firewalls, dan intrusion detection systems telah sedemikian rupa dipersiapkan untuk menghadapi serangan terhadap sistem keamanan.

D. Penempatan dan Tujuan dari Network Forensic

Seperti kita ketahui bahwa firewalls and intrusion-detection systems (IDSs) merupakan perangkat jaringan yang sudah terpasang dengan baik untuk memberikan keamanan pada jaringan. Oleh karena itu apakah fungsi dan kegunaan dari network forensic, akankah mengganti perangkat-perangkat ini atau merupakan pelengkap?

Network Forensic dapat bersinergi dengan beberapa perangkat IDS dan Firewall dalam dua cara, yaitu untuk menyediakan record dalam jangka panjang dari trafik jaringan dan memberikan analisa yang cepat dari permasalahan yang diidentifikasi dari kedua perangkat tersebut.

Sebagai komplemen dari sistem keamanan yang sudah ada, network forensic harus mampu melakukan tiga hal sekaligus, yaitu harus mampu menangkap trafik (capture), menganalisa trafik sesuai dengan kebutuhan pengguna (analysis), dan harus mampu memberikan kemampuan kepada investigator untuk menemukan sesuatu yang berguna dan penting dari trafik yang dianalisa (discovery).

Page 2: Network Forensic dengan TCPDUMP

Network forensics memiliki dua jenis kegunaaan. Pertama, yang berhubungan dengan keamanan, termasuk monitoring network untuk mengindentifikasi trafik yang anomalous dan percobaan intrusi terhadap sistem keamanan. Seorang attacker bisa saja memiliki kemampuan untuk menghapus semua log files dari host yang telah diserangnya, sehingga bukti yang bersifat network-based mungkin hanya satu-satunya bukti yang mampu digunakan sebagai bahan forensic analysis. Kedua, kegunaan dari network forensic yang berhubungan dengan penegakan hukum (law enforcement).

II. CAPTURE TRAFIK

Pertimbangan utama dalam melakukan network forensic dalam suatu jaringan adalah traffic relevance (keterkaitan trafik), data integrity (integritas dari data hasil capture), dan packet capture rate (kecepatan capture data). Selain itu sebelum melakukan traffic capture sebaiknya harus dimengerti terlebih dahulu mengenai arsitektur jaringannya, sehingga dapat diketahui dimana trafik yang akan dianalisa itu berada. Sebaiknya trafik yang diamati adalah trafik komunikasi yang berhubungan dengan pihak luar, bukan trafik yang berada internal di dalam jaringan. Jaringan utama (backbone) memiliki volume transaksi yang sangat besar sehingga susah untuk dicapture maupun disimpan untuk jangka waktu yang lama. Sehingga difokuskan didaerah akses pihak luar dengan pihak dalam seperti di daerah DMZ (de-militerized zone).

A. Performansi

Untuk mendapatkan network forensic yang efektif, diperlukan kemampuan sistem untuk memaintain data yang cukup lengkap dari trafik jaringan, termasuk harus dipastikan semua trafik yang dicapture harus mampu dikirim atau diproses oleh forensic enginer untuk menghindari paket loss. Selain itu kecepatan capture juga sangat penting, karena tidak seperti host pada umumnya yang bisa mengabaikan paket yang ternyata dialamatkan bukan untuknya, mesin forensic harus mampu mengcapture dan menyimpan trafik dalam network yang cukup saturasi untuk analisa selanjutnya. Salah satu kenyataan yang menyangkut integritas data dalam network forensic adalah bahwa mesin forensic tidak boleh berpartisipasi dari trafik yang sedang dimonitor. Sebagai contoh dalam suatu TCP session yang normal, apabila salah satu host tujuan tidak menerima paket, maka dapat dimungkinkan bahwa paket akan dikirim kembali. Namun mesin forensic tidak boleh memiliki kemampuan ini, untuk meminta paket untuk di kirim ulang, oleh karena itu mesin forensic harus sangat memiliki kemampuan sebagai eavesdropper.

Untuk melakukan hal ini semua maka dibutuhkan suatu resource yang handal pada mesin forensic. Untuk capture paket yang reliable dari jaringan diperlukan interfaces yang tidak memungkinkan adanya paket loss pada saat jaringan mendekati saturasi. Untuk penyimpanan data trafik kedalam suatu disk diperlukan sistem bus dan sistem storage yang mampu mengimbangi kecepatan dari jaringan itu sendiri. Kemudian ukuran besarnya storage akan menentukan berapa lama data yang akan disimpan agar nanti dapat direkonsruksi ulang apabila dibutuhkan.Dalam situasi khusus, capturing paket untuk forensic dapat diminimalisasi dengan menghilangkan beberapa informasi yang tidak dibutuhkan dengan menggunakan filter. Metode memberikan kemudahan dalam hal storage dan cost namun ada cost yang harus dibayar yaitu seperti lingkup yang kecil dalam melakukan analisa data hasil capture, dan filtering memerlukan proses overhead yang memungkinkan adanya paket lost.

B. Perangkat Lunak Capture

Perangkat lunak untuk capture yang sangat populer diantaranya adalah tcpdump dan ethereal (wireshark), yang memberikan kepada pengguna baik Unix ataupun Windows. Perangkat lunak sangat berguna untuk mengumpulkan trafik pada saat adanya sesuatu situasi atau event yang menarik dalam jaringan atau kabel. Format dari tcpdump telah dijadikan standard sebagai format penyimpanan file untul trafik yang dicapture dalam jaringan. Hal ini akan menyediakan kompatibilitas dari beberapa macam perangkat network forensic yang ada, ataupun memberikan kemampuan perangkat network forensic untuk menganalisa paket yang dicapture dengan menggunakan mesin standard dengan tcpdump. Network Forensic juga harus mampu untuk melakukan FIFO deletion atau rolling up oldest data untuk memaintain jumlah dari sisa storage yang akan digunakan.

III. ANALISA TRAFIK

Proses untuk melalukan archiving dari trafik yang dihasilkan oleh level pertama informasi forensik disebut sebagai traffic load over time.

A. Sessioning Trafik

Hampir semua tipe trafik dalam jaringan adalah two-way conversation. Namun pada saat capture dimungkinkan, paket yang tidak berhubungan akan muncul dalam trafik yang diperoleh. Network Forensic bertugas untuk mengorganisasi semua paket-paket tersebut kedalam sebuah transport-layer connection diantara beberapa mesin yang ada (sering disebut sebagai sessionizing). Ada beberapa macam cara yang digunakan untuk sessionizing ini, namun cara yang paling umum dan

Page 3: Network Forensic dengan TCPDUMP

terkenal adalah seperti yang digunakan dalam firewall atau IDS dimana berdasarakan dengan IP address, nomor port, dan signature data untuk masing-masing paket). Namun cara-cara kurang efektif untuk paket yang menggunakan port secara acak, paket yang terkodekan atau terenkripsi, dan bahkan paket yang memiliki signature pada lebih dari satu paket.Dengan melakukan sessionizing data, network forensic melihat koneksi layer per layer termasuk protokol dan kontennya. Dalam proses rekonstruksi paket, network forensic dapat melihat atau mengetahui paket yang mengalami retransmisi, atau adanya error dalam protokol transport layer. Apabila proses rekonstruksi paket berhasil maka akan terlihat pattern komunikasi yang komplit yang akan memberikan nilai lebih untuk keamanan dan kepentingan investigasi.

B. Pemecahan (Parsing) Protokol dan AnalisaSebelumnya analisa protokol dilakukan dengan cara manual “by hand”, yaitu setelah paket dicapture maka akan dicari trafik yang bersangkutan dengan menggunakan string-string khusus. Seperti untuk HTTP digunakan string “get”, FTP digunakan string “quit”, dan lain sebagainya.Pendekatan yang cukup efisien untuk melakukan hal ini adalah analisa expert-system dalam trafik yang sudah ter-sessionizing, yang memungkinkan untuk menganalisa dari setiap layer jaringan. Expert-system menggunakan berbagai macam fitur-fitur yang telah diketahui secara umum dalam trafik untuk mengindentifikasi informasi-informasi yang diinginkan. Tidak hanya itu expert-system juga harus mampu mengkorelasikan antara koneksi satu dengan koneksi yang lainnya.

Expert-system network traffic analysis harus memiliki kemampuan untuk mengembangkan konsep model layer-7 ISO kedalam sebuah data stream. Dengan mengatur modul-modul ke dalam graph yang sesuai, maka sistem akan menemukan layer mana yang sesuai dengan konten

yang bersangkutan. Dengan demikian, proses analisa forensik dapat melakukan pencarian dan memahami data yang tadinya sangat tidak berguna untuk level paket sniffer.

C. Mengatasi Data Yang TerenkripsiDalam lingkungan dengan tingkat keamanan yang cukup tinggi, tidak diperlukan lagi penggunaan protokol yang tidak dapat dimonitor atau diaudit. Namun dalam khusus, akan diperlukan review terhadap suatu transaksi, yang dapat dilakukan dengan cara menghilangkan enkripsi konten di salah satu sisi endpoint. Namun hal ini sangat jarang sekali dilakukan.Suatu perangkat Network Forensic harus mendukung permintaan ini dengan secara non-intrusive dan dengan security impact yang sangat kecil. Untuk melakukan hal ini setiap mesin server atau klien harus memodifikasi perangkat lunak keamanannya dengan melengkapi key yang dimiliki oleh si perangkat Network forensic. Sehingga setiap kali server atau klien melakukan enkripsi pada konten dengan key tertentu, mesin forensic akan melakukan dekripsi dan mampu untuk memonitor konten tersebut.

IV. STUDI KASUS : PACKET FORENSIC DENGAN TCP

Seperti kita ketahui bahwa packet analyzer seperti tcpdump atau wireshark telah melakukan pekerjaan yang bagus untuk membagi-bagi paket berdasarkan level protokolnya. Namun mesin forensic dibutuhkan untuk memahami betul bagaimana hubungan untuk antar paket satu dengan yang lain berdasarkan packet metric-nya. Packet metric seperti TCP sequence dan acknowledge number merupakan contoh yang bagus untuk kasus ini, dimana adanya paket yang hilang bisa diperoleh dengan memperhatikan aforementioned TCP packet metrics.

Berikut akan dijelaskan bagaimana perangkat Network Forensic akan melakukan paket forensic berdasarkan TCP.

Apabila TCP/IP three-way handshake telah selesai, maka akan dilanjutkan dengan beberapa langkah. Paket yang dikirimkan selanjutnya akan memiliki nomor acknowledgement pada paket tersebut. Nomor ini yang dikirim akan dijadikan sebagai nomor urutan TCP yang diharapkan.

Nomor yang digaris bawahi disebut dengan “Initial Sequence Number” atau ISN. Nomor ini selalu ada disetiap paket TCP SYN, dan merupakan langkap pertama dalam TCP three-way

Page 4: Network Forensic dengan TCPDUMP

handshake. Dapat diketahui bahwa paket diatas merupakan paket SYN, berdasarkan pada kode TCP-nya “S” atau nilai hexadecimal-nya yaitu 02.

Kemudian langkah kedua dari handshaking adalah SYN/ACK. Seperti dilihat bahwa dalam paket ini memiliki nomor sebesar ISN+1 (seperti yang digaris bawahi). Selain itu terlihat juga bahwa TCP sequence-nya adalah 727167800 (juga yang digaris bawahi).

Paket diatas merupakan langkah terakhir dalam TCP/IP three-way handshaking. ACK diperlihat dengan tanda “.”, setelah nomor port 25.

Sebuah konsep kunci untuk yang harus diingat di sini adalah bahwa nomor "ack" yang diberikan adalah urutan TCP yang diharapkan berikutnya dari alamat IP lainnya. Maka, perlu dicatat bahwa memiliki nomor TCP urutan sini yang sesuai dengan nomor "ack" paket, yang tercantum dua paket di atas. Paket di atas ini hanya merupakan penerimaan dari sebuah paket, dan tidak seperti pada paket pengiriman data, maka kurang adanya nomor urut TCP, karena mengirim data akan memerlukan nomor urutan TCP. Kita bisa melihat bahwa di atas. Seperti paket ini adalah mengirim data, ia memiliki kedua nomor TCP urutan dan "ack" nomor juga.

Dalam paket ini alamat 192.168 merupakan penerimaan dari paket di atasnya. Itulah mengapa tidak ada nomor urutan TCP sana. Perhatikan nomor urut TCP dari paket di atas yang satu ini, dan nomor TCP urutan berada di sebelah kanan. Paket ini dikenal melalui nomor "ack" paket. Pada intinya, paket ini mengatakan bahwa telah menerima data, dan siap untuk memprosesnya.

Pertama sekali, dalam paket ini kita memiliki kedua nomor urutan TCP dan nomor "ack". Oleh karena itu diketahui bahwa paket ini adalah mengkonfirmasi penerimaan data, dan juga mengirim sesuatu sebagai balasan. Dalam hal ini, nomor urut TCP didasarkan pada nomor "ack" dengan melihat dua paket di atas kami. Hal ini juga persis seperti yang diharapkan. Tetapi ingat, nomor "ack" paket adalah nomor urutan TCP berikutnya yang diharapkan dari alamat IP yang lain. Oleh karena dimiliki nomor "ack" yang sama diulang lagi di sini. Hal ini merupakan hal yang normal, dan ini nomor "ack" sekali lagi diharapkan berikutnya nomor urutan TCP dari alamat IP lainnya (dalam hal ini 10.10.10.10).

Paket ini merupakan paket konfirmasi yang seperti ditunjukkan oleh "ack". Tidak ada nomor urut TCP disini karena tidak ada data yang dikirim. Pada dasarnya 10.10.10.10 hanya berkata, "terima kasih 192.168.1.1, saya telah menerima data Anda."

Dalam paket ini kita memiliki kedua nomor urutan TCP dan nomor "ack". Untuk memperjelas, sekali lagi ini nomor urut TCP paket didasarkan pada nomor "ack" dari paket dua paket di atas yang paket ini. Hal ini sangat masuk akal, karena paket di atas hanya merupakan konfirmasi penerimaan data, dan bahwa nomor "ack" juga terlihat di sini dalam paket ini lagi. Oleh karena dapat diketahui bahwa betapa sulitnya untuk benar-benar membajak sesi menggunakan TCP sequence number prediction (yaitu dengan mempresiksi kemungkinan nomor-nomor urutan yang mungkin dikirimkan oleh pengirim).

Sekali lagi, paket diatas hanya merupakan konfirmasi penerimaan data. Diatas digunakan untuk melihat "S" untuk menunjukkan sebuah paket SYN dan "P" untuk paket PSH. Perlu diingat bahwa "ACK" dinotasikan hanya sebagai sebuah "." Dalam hal ini, "." langsung ditunjukkan pada bagian setelah alamat nomor port tujuan.

Page 5: Network Forensic dengan TCPDUMP

V. KESIMPULAN

Network Forensic dapat dijadikan sebagai bukti-bukti yang dapat melengkapi computer forensic maupun menambah kemampuan kepada sistem keamanan jaringan yang ada. Dari paparan diatas terlihat bahwa menggunakan perangkat forensik yang baik untuk mengcapture dan menganalisa, akan diperoleh nomor-nomor ID yang menunujukkan bahwa informasi atau data-data yang sangat berkaitan antara satu dengan yang lainnya, meskipun data tersebut dikirimkan secara terpisah atau menggunakan koneksi yang berbeda.

REFERENCES

[1] English Wikipedia, “Network Forensic”, 2011.[2] Vicka Corey, Charles Peterman, Sybil Shearin, Michael S. Greenberg,

and James Van Bokkelen, "Network Forensic Analysis", Sandstorm Enterprises, “On the Wire” IEEE Internet Computing, 2002.

[3] Don Parker and Mike Sues, “Packet Forensic using TCP”, Symantec, Security Focus, 2010.