Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1...

26
01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR KI 1391 IMPLEMENTASI APLIKASI ANTI-VIRUS BERBASIS PYTHON-FUSE DAN CLAMAV PADA SISTEM OPERASI UNIX Penyusun Tugas Akhir : Farchan Abdi Pahar (NRP : 5104 100 048) Dosen Pembimbing : Wahyu Suadi, S.Kom, MM, M.Kom. Bagus Jati Santoso, S.Kom

Transcript of Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1...

Page 1: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1

PRESENTASI TUGAS AKHIR – KI 1391

IMPLEMENTASI APLIKASI ANTI-VIRUS

BERBASIS PYTHON-FUSE DAN CLAMAV

PADA SISTEM OPERASI UNIX

Penyusun Tugas Akhir :

Farchan Abdi Pahar

(NRP : 5104 100 048)

Dosen Pembimbing :

Wahyu Suadi, S.Kom, MM, M.Kom.

Bagus Jati Santoso, S.Kom

Page 2: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 2

Duh..

Komputer aku

kok lemot ya??

Kena virus

yah??

Atau ga service

program yang

jalan di komp

kamu kebanyakan Kayaknya dua-

duanya deh..

Mana ada data

penting lagi

Mau install atau

tapi komputerku ga kuat..

soalnya service

di komputernya

itu jalan terus

Trus gmn ??

Pake ajaEnteng kok..

Open source

lagi..

Selain itu bisa di

implementasikan

menggunakan

PythonFUSE

Beneran..

Serius ???

LATAR BELAKANG

Jadi butuh

resource memory

cukup banyak

Emang berat sih..

Page 3: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 3

Bagaimana mengimplementasikan aplikasi anti-virus yang memanfaatkan library

ClamAV di lingkungan UNIX

Bagaimana mengkomunikasikan antara FUSE dan ClamAV daemon

1.

2.

Bagaimana merancang dan menerapkan algoritma dalam proses scanning dan

caching di dalam sistem3.

PERUMUSAN PERMASALAHAN

Page 4: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 4

Clam File System (ClamFS) : Aplikasi yang berfungsi sebagai

filesystem dimana memberikan fasilitas kepada penggunanya

berupa setiap pengaksesan file yang berada pada filesystem

tersebut akan di scan terlebih dahulu oleh daemon dari anti-virus

SOLUSI

Aplikasi ini berbasis PythonFUSE (Filesystem in Userspace) dan

menggunakan ClamAV sebagai anti-virus scanner-nya

Page 5: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 5

FUSE

Fuse merupakan sebuah kerangka filesystem pada area pengguna.

Terdiri dari sebuah modul kernel, sebuah library pada area

pengguna, dan sebuah utilitas untuk melakukan proses mount /

fusermount

Page 6: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 6

ClamFS

ARSITEKTUR SISTEM

Page 7: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 7

Check Timestamp

is Modified or not

Is Path

Exist on

Cache

Start

Scan File with

Clamd

Add/Update to

Cache

Check Status Block

on Cache

Is File

Modified

Return/Aborting

File Operation

Is File

Blocked

End

ALGORITMA OPERASI SCAN

no

yes

yes

no

no

yes

Page 8: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 8

Ketika fungsi open file dilakukan

KAPAN APLIKASI INI DILAKUKAN

Page 9: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 9

CACHE

Pembuatan cache disini ditujukan agar hasil dari setiap file yang

telah di-scan dapat disimpan dalam sebuah block memory.

Tujuannya adalah untuk meningkatkan performa, agar tidak perlu

terjadi pengecekan ganda terhadap satu file yang sudah pernah

ter-scan sebelumnya.

Page 10: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 10

CACHE

Path File Timestamp Block Status

Path absolute dari file yang diaksesWaktu terakhir file dibuat/dimodifikasiHasil scan dari clamd (terblok/tidak)

Page 11: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 11

OPERASI-OPERASI PADA CACHE

1.

4.

3.

2.

5.

Pencarian Path File dalam Cache

Penambahan Attribute File dalam Cache

Pengecekan Timestamp File dalam Cache

Update Attribute File dalam Cache

Pengecekan Block Status File dalam Cache

Page 12: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 12

(Path, timestamp, block status)A 1 T

Pencarian Path File dalam Cache

(C, 1, T)

B 2 T

C 3 T

… … …

Page 13: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 13

A 1 T

Penambahan Attribut File dalam Cache

(D, 1, T)

B 2 T

C 3 T

D 1 T

tidak ditemukan path yang cocok,

maka tambahkan attribut file dalam cache

Page 14: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 14

A 1 T

Pengecekan Timestamp File dalam Cache

(D, 1, T)

B 2 T

C 3 T

D 1 T

Cek kedua timestamp, apakah masih sama

atau sudah berubah

Page 15: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 15

A 1 T

Update Attribut File dalam Cache

(D, 4, T)

B 2 T

C 3 T

D 1 T

Set ftimestamp = timestamp

4

Fblock status = block status

Page 16: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 16

A 1 T

Pengecekan Block Status File dalam Cache

(C, 3, T)

B 2 T

C 3 F

D 1 T

if Block Status = False False

If Block Status = True Allowed

Page 17: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 17

Komunikasi Antara ClamFS dan Clamd

ClamFS Clamd

1. Get Absolute Path of File

4. Grab Respond from Clamd

3. Sending Command Protocol

2. Contact Clamd via Unix Socket

5. Check Respond OK or Not

Page 18: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 18

UJI COBA

1.

3.

2.

Uji coba baca file yang terinfeksi virus

Uji coba baca file yang sudah termodifikasi

Uji coba baca file yang sama sebanyak 2 kali

Page 19: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 19

UJI COBA

Log Filesystem saat ditemukan virus

Page 20: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 20

UJI COBA

Log Filesystem saat file yang ada di cache dimodifikasi

Page 21: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 21

UJI COBA

Log Filesystem saat pembacaan pertama

Log Filesystem saat pembacaan kedua

Page 22: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 22

KELEBIHAN

1.

2.

Program ini hanya melakukan operasi scan ketika dilakukan

fungsi open file. Sehingga kebutuhan akan resource memory

dapat berkurang.

Adanya fitur cache, yang bertujuan untuk menghindari

pengecekan ganda terhadap suatu file yang yang telah ter-scan.

Sehingga pengaksesan file dapat dilakukan dengan cepat tanpa

perlu khawatir akan adanya virus.

Page 23: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 23

KEKURANGAN

1.

2.

Proses update Anti-Virus dilakukan secara manual

Tampilan program masih berupa console

3. Daftar file yang telah di-scan tidak bisa dilihat

4. Tidak dapat melakukan proses scan secara keseluruhan

5.Operasi scan hanya dapat dilakukan dalam ruang lingkup

filesystem yang sama

Page 24: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 24

KESIMPULAN

1.

2.

3.

Implementasi aplikasi anti-virus yang memanfaatkan library

ClamAV di lingkungan UNIX dapat diterapkan

Penggunaan fitur cache pada aplikasi dapat meningkatkan waktu

yang dibutuhkan untuk mengeksekusi sebuah file.

Komunikasi antara filesystem yang dibangun dengan daemon

dari ClamAV dapat diimplementasikan.

Page 25: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 25

SARAN

1.

2.

Penyimpanan cache sebaiknya dilakukan dengan menggunakan

database agar daftar-daftar file yang telah di-scan dapat dilihat.

Disediakan interface yang lebih baik dan menarik, misal dengan

menambahkan fitur GUI untuk memudahkan user dalam

penggunaannya.

Page 26: Presentasi Tugas Akhir - digilib.its.ac.id · 01 Februari 2010 Presentasi Tugas Akhir - KI 1391 1 PRESENTASI TUGAS AKHIR ... Check Status Block on Cache Is File Modified Return/Aborting

01 Februari 2010 Presentasi Tugas Akhir - KI 1391 26

TERIMA KASIH