You are on page 1of 5

PERANCANGAN DAN IMPLEMENTASI MODUL OTENTIKASI

MENGGUNAKAN RANDOMISASI PASSWORD BERDASARKAN


LOOKUP TABLE

M. Affandes1, Novriyanto2
1,2
Jurusan Teknik Informatika Fakultas Sains dan Teknologi
Universitas Islam Negeri Sultan syarif kasim Riau
1
affandes@gmail.com, 2novri_pci@yahoo.com

ABSTRAK
Menu otentikasi berfungsi untuk memastikan seorang pengguna yang masuk pada suatu situs web
adalah pemilik data yang sebenarnya. Selain itu, otentikasi ini juga berguna sebagai tanda pengenal seseorang
pada suatu situs web.
Pada dunia internet juga terjadi pencurian identitas. Sehingga „pencuri‟ dapat mengakses informasi
orang lain. Hal ini akan sangat berbahaya apabila terjadi terhadap data-data penting yang harus diproteksi,
sehingga diperlukan cara yang benar-benar mampu mencegah tindakan pencurian atau setidaknya mencegah
pemanfaatan identitas digital tersebut. Untuk itu dirancang sebuah modul otentikasi yang mampu melakukan hal
tersebut yang disebut modAuth.
modAuth menggunakan sebuah lookup table yang diberi nama mCode dan diberikan kepada pengguna.
Masing-masing pengguna memiliki mCode yang berbeda-beda. Pada saat otentikasi, pengguna akan diminta
memasukkan kode-kode yang terdapat pada mCode-nya secara acak. Apabila kode-kode tersebut berhasil
diperoleh menggunakan aplikasi tertentu, tetap tidak akan bisa digunakan. Karena pada saat otentikasi
berikutnya, modAuth akan meminta kode-kode yang berbeda.

Kata Kunci : Keylogger, Login, mCode, modAuth, Password, Sniffer.

1 PENDAHULUAN 2 LANDASAN TEORI


Di dunia digital khususnya dunia internet,
kartu identitas tersebut dapat berupa suatu 2.1 Keylogger
rangkaian huruf dan atau angka yang berbeda-beda Keylogging adalah pencatatan penekanan
untuk setiap orang. Seiring berkembangnya tombol pada keyboard, pada umumnya dilakukan
teknologi saat ini, kartu identitas tersebut juga dapat secara tersembunyi sehingga orang tidak akan tahu
berupa sidik jari seseorang. Selain sidik jari, telah bahwa aktifitasnya sedang dipantau [10].
dikembangkan juga metode otentikasi Beberapa cara untuk mencegah keylogger
menggunakan kornea mata, yaitu dengan antara lain dengan menggunakan virtual keyboard.
melakukan scanning pada salah satu mata Dengan virtual keyboard, pengguna komputer tidak
seseorang untuk melakukan otentikasi. menggunakan keyboard untuk menuliskan
Namun, jika di situs web diterapkan model password, tetapi cukup menekan tombol keyboard
otentikasi menggunakan sidik jari atau kornea mata, yang ada pada layar monitor [10].
maka akan mempersulit seseorang untuk Selain itu, keylogger juga dapat dicegah
mengakses informasinya. Ini dikarenakan tidak dengan menuliskan password secara acak, namun
semua pengguna internet memiliki fingerprint cara ini cukup merepotkan [10].
scanner (pemindai sidik jari) atau cornea scanner
(pemindai kornea mata). Faktor harga dan distribusi 2.2 Sniffer
alat juga berpengaruh terhadap jumlah orang yang
menggunakannya. Itulah sebabnya model otentikasi Sniffer merupakan program yang
berupa rangkaian huruf dan atau angka ini masih memantau dan mengambil data pada jaringan
populer saat ini. Selain praktis dan cepat, model ini secara pasif) [3].
juga tidak memerlukan biaya untuk membeli alat Ada dua tipe dasar Ethernet environment,
pendukung. yaitu Shared Ethernet dan Switched Ethernet [1].
1. Pada Shared Ethernet Environment, semua host
terhubung ke jalur (bus) yang sama dan saling
berbagi bandwidth. Ini berarti sebuah paket aplikasi keamanan, dan MD5 juga umum
data yang ditujukan kepada salah satu host digunakan untuk melakukan pengujian integritas
dapat diterima oleh host lainnya. Namun dalam sebuah file [12].
kondisi normal, paket yang ditujukan untuk Berdasarkan Rivest (RFC1321) algoritma
komputer lain akan di abaikan oleh komputer MD5 dibagi menjadi 5 tahap [8], yaitu :
tersebut. 1. Append Padding Bits (Menambahkan bit
2. Sedangkan Switched Ethernet dapat mengelola tambahan)
tabel yang mengatur alamat MAC setiap 2. Append Length (Menambahkan informasi
komputer dan physical port pada switch ukuran pesan)
dimana MAC Address tersebut dihubungkan. 3. Initialize MD Buffer (Inisialisasi MD Buffer)
Sehingga sebuah paket akan dikirim hanya 4. Process Message in 16-Word Block (Proses
kepada komputer yang dituju dan tidak di- Pesan dalam Blok 16-Kata)
broadcast ke semua komputer pada jaringan 5. Output (Hasil)
tersebut.
2.5 Unified Model Language (UML)
UML adalah sebuah bahasa untuk
menentukan, visualisasi, kontruksi, dan
mendokumentasikan artifacts dari sistem software,
untuk memodelkan bisnis, dan sistem non-software
lainnya. UML merupakan sistem arsitektur yang
bekerja dalam OOAD dengan satu bahasa yang
Gambar 1. Cara Kerja Sniffer konsisten untuk menentukan, visualisasi,
mengkontruksi, dan mendokumentasikan artifact
2.3 Look Up Table yang terdapat dalam sistem [9]. Artifact adalah
Di bidang ilmu komputer, tabel lookup sepotong informasi yang digunakan atau dihasilkan
adalah sebuah struktur data, yang biasanya berupa dalam suatu proses rekayasa software. Artifact
array atau kumpulan array, sering digunakan untuk dapat berupa model, deskripsi atau software.
menggantikan perhitungan komputasi pada saat
operasi berjalan dengan operasi penyusunan array
2.6 Rational Unified Process (RUP)
yang sederhana. Secara luas, tabel lookup juga
digunakan untuk memvalidasi nilai input dengan Rational Unified Process adalah sebuah
cara mencocokkan nilai terhadap daftar yang valid Proses Rekayasa Perangkat Lunak. RUP
(atau tidak valid) dalam sebuah array, dan dalam menyediakan pendekatan disiplin untuk
beberapa bahasa pemrograman juga disertakan memberikan tugas dan tanggung jawab dalam
fungsi pointer (atau sejenis label) untuk memproses organisasi pengembang perangkat lunak. Tujuannya
pencocokan input [11].
Terdapat dua batasan yang fundamental untuk memastikan perangkat lunak yang berkualitas
pada saat mengkonstruksi sebuah lookup table tinggi dan sesuai kebutuhan penggunanya dalam
untuk suatu proses yang diperlukan. Pertama adalah anggaran dan jadwal yang dapat diprediksi
jumlah memori yang tersedia. Tidak bisa membuat [2][5][7].
suatu lookup table yang berukuran lebih besar dari
ruang yang disediakan. Kedua adalah waktu yang 2.7 PHP
dibutuhkan untuk menghitung nilai dari lookup
table pada instance pertama, meskipun proses ini PHP dikenal sebagai sebuah bahasa
hanya perlu dan biasanya dilakukan satu kali, jika scripting yang menyatu dengan tag-tag HTML,
proses tersebut membutuhkan waktu yang cukup dieksekusi di server dan digunakan untuk membuat
lama akan menyebabkan penggunaan lookup table halaman web dinamis. Versi pertama PHP dibuat
menjadi tidak tepat. Bagaimanapun tabel dapat oleh Rasmus Lerdorf pada tahun 1995, berupa
didefinisikan secara statik pada banyak kasus, ini sekumpulan script PERL yang digunakan oleh
dilakukan untuk menghindari pemrosesan tambahan
Rasmus Lerdorf untuk membuat halaman web yang
pada saat telah di-compile [11].
dinamis pada homepage pribadinya[4].
2.4 Message Diggest (MD5)
Dalam kriptografi, MD5 (Message-Digest 3 ANALISA DAN PERANCANGAN
algortihm 5) ialah fungsi hash kriptografik yang
digunakan secara luas dengan hash value 128-bit. 3.1 Gambaran Umum
Pada standar Internet (RFC 1321), MD5 telah Gambaran umum modul otentikasi yang
dimanfaatkan secara bermacam-macam pada dibuat adalah modul otentikasi yang digunakan
pada situs web yang memerlukan keamanan 2. Atau, sebaliknya. Jika situs web tersebut
terhadap pemanfaatan username dan password oleh menggunakan protokol HTTPS, tetapi
orang lain. Contoh situs web yang memerlukan pengguna tidak mengacak username dan
keamanan tersebut berupa situs web bank atau situs password pada saat di-input-kan, ini
web lainnya. Modul otentikasi yang akan dibuat dikarenakan kesulitannya pada saat mengacak
untuk selanjutnya akan disebut dengan modAuth password yang ditampilkan berupa tanda
(Modul Authentication). Ilustrasi terhadap model asteriks (*) pada saat diketik.
kerja modAuth secara umum dapat dilihat pada 3. Kondisi terbaik adalah pengguna menggunakan
gambar 3.1 dibawah ini. virtual keyboard pada saat memasukkan
username dan password ke situs web yang
telah menggunakan protokol HTTPS, atau.
4. Pengguna menggunakan token untuk
melakukan otentikasi.
Dari ilustrasi di atas bahwa kondisi (3)
masih memiliki kelemahan. Ini dikarenakan virtual
keyboard tidak menjadi bagian dari modul
otentikasi yang lama. Virtual keyboard merupakan
aplikasi tambahan yang terpisah, seperti OnScreen
Keyboard pada Windows XP atau aplikasi
keylogger lainnya.

3.4 Analisa Modul Baru


Kebutuhan yang diperhatikan dalam
Gambar 2. Model Kerja modAuth Secara Umum menganalisa modul baru adalah kebutuhan terhadap
Pada gambar 2 dapat dilihat bahwa modul yang dapat menjaga keamanan data
Pengguna merupakan orang yang berinteraksi pengguna tanpa perlu khawatir terhadap
dengan Interface. Interface merupakan situs web pemanfaatan menggunakan aplikasi keylogger dan
yang menggunakan modAuth sebagai modul aplikasi sniffer.
otentikasinya. Selain itu, ada beberapa kebutuhan lain
terhadap modul otentikasi yang baru, yaitu:
3.2 Model Kerja Modul Lama 1. Modul otentikasi yang langsung mengacak atau
memaksa pengguna untuk mengacak kode
Secara umum, model kerja modul yang diinputkan tanpa perlu melakukan
otentikasi yang digunakan, yaitu : pengacakan sendiri oleh pengguna. Sehingga
1. Pengguna memasukkan username dan kode acak tersebut tetap diinputkan oleh
password. Jika pengguna tidak menggunakan pengguna secara berurut.
virtual keyboard, dapat dimanfaatkan untuk 2. Modul otentikasi yang mengirimkan kode acak
mencatat apa yang sedang diketik oleh sehingga dapat mempersulit untuk
pengguna menggunakan aplikasi keylogger. mendapatkan kode sebenarnya jika berhasil
2. Data username dan password akan melewati didapatkan menggunakan aplikasi sniffer.
jaringan. Jika menggunakan protokol HTTPS,
maka data akan melewati jaringan akan di- 3.5 Perancangan Modul
encrypt. Namun jika menggunakan protokol
HTTP, maka data akan melewati jaringan tanpa
di-encrypt.
3. Selanjutnya data username dan password akan
dibandingkan ke database sehingga didapat
data pengguna tersebut.

3.3 Kelemahan Modul Lama


Beberapa kelemahan pada modul lama
dapat diilustrasikan sebagai berikut:
1. Pada saat pengguna memasukkan username
dan password secara acak pada modul lama,
data username dan password tersebut juga
akan tercatat sebagai kode acak pada aplikasi Gambar 3. Class Diagram modAuth
keylogger, namun tetap dapat dibaca oleh
aplikasi sniffer jika situs web tersebut tidak
menggunakan protokol HTTPS.
Gambar 7. Hasil Implementasi Interface Login
(Form Default)

Gambar 4. Component Diagram modAuth

Gambar 8. Hasil Implementasi Interface


Konfirmasi mCode

4.2 Pengujian

Gambar 5. Perancangan Form Login modAuth Simbol berarti data yang diinputkan
sebelumnya tidak bisa digunakan untuk login
berikutnya.

Tabel 1. Hasil Pengujian Menggunakan


aplikasi OverSpy

Taha Data yang diperoleh menggunakan Hasil


p Uji OverSpy
User Pass Label Nilai
name word mCode mCode
1 affan 1234 - X,M,e,6,x
2 affan 1234 - q,X,M,c,q
3 affan 1234 - w,c,A,F,5
4 affan 1234 - n,f,X,4,n
Gambar 6. Perancangan Form Konfirmasi
mCode modAuth 5 affan 1234 - F,n,6,m,J
6 affan 1234 - J,U,X,P,n
7 affan 1234 - i,c,c,V,F
4 IMPLEMENTASI DAN PENGUJIAN 8 affan 1234 - o,o,M,4,6
9 affan 1234 - 5,q,A,c,5
4.1 Implementasi 10 affan 1234 - T,T,X,m,i
Modul modAuth secara default akan
memunculkan form Login, dari form ini pengguna
akan dapat mengakses form-form lainnya. Berikut Dari tabel-tabel hasil pengujian di atas
ini penjelasan tentang form yang ada pada dapat disimpulkan bahwa setiap data yang
modAuth. diinputkan pada modAuth akan berbeda-beda setiap
kali melakukan otentikasi. Sehingga data tersebut
tidak bisa dimanfaatkan untuk otentikasi
selanjutnya.
Selain dari itu, dalam pengujian ini
ditemukan suatu kelemahan. Dari tabel 5.4 terlihat
jelas bahwa aplikasi sniffer mampu memperoleh
semua data pengguna, mulai dari username,
password (terenkripsi), label mCode sampai nilai
mCode (terenkripsi). Jika dilakukan monitoring [9] Suhendar, A., 2002, Teknologi Pemograman
secara terus-menerus terhadap suatu akun, Mobile Commerce, Bandung, Penerbit
kemungkinan akan dapat terbaca semua tabel Informatika.
mCode akun tersebut.
[10] “Keystroke logging”. Maret 2008 [Online]
Available
5 KESIMPULAN http://en.wikipedia.org/wiki/Keystroke_logg
ing, diakses 20 Juli 2009.
Kesimpulan dari hasil penelitian ini
adalah:
[11] ―Lookup table‖. [Online] Available
1. Modul Authentication (modAuth) telah berhasil
http://en.wikipedia.org/wiki/lookup_table,
dirancang serta diimplementasikan dalam
diakses 25 Oktober 2009.
bentuk sebuah modul berbasis web yang dapat
ditambahkan pada suatu situs web.
[12] ―MD5‖. [Online] Available
2. Berdasarkan pengujian terhadap konsep lookup
http://en.wikipedia.org/wiki/MD5, diakses
table dapat disimpulkan bahwa modAuth telah
20 Juli 2009.
mampu mencegah pengguna aplikasi keylogger
dan aplikasi sniffer untuk memanfaatkan
username dan password.
3. Di sisi lain terdapat suatu kelemahan yang
memungkinkan sniffer merekam semua tabel
mCode jika sniffer terus-menerus memantau
suatu akun saat melakukan otentikasi ke
modAuth.

DAFTAR PUSTAKA

[1] Dhar, Summit., 2002, Sniffers – Basic and


Detection, Reliance Infocomm.
[2] Jacobson Ivar, Booch Grady, and
Rumbaugh.Jim, 2002, Unified Software
Development Process, Addison-Wesley.

[3] Klevinsky, T.J., Laliberte Scott., 2002 Hack


I.T. – Security Through Penetration Testing,
Addison-Wesley.

[4] Azis M. Farid, 2001, Belajar Sendiri


Pemrograman PHP 4 Bagi Web
Programmer, Jakarta, PT Elex Media
Komputindo.

[5] Philippe Kruchten. A Rational Development


Process, “CrossTalk‖, vol 9 (7), STSC, Hill
AFB, UT, hal.11-16.

[6] Philippe Kruchten. Rational Unified


Process—An Introduction. Addison-Wesley,
1998.

[7] Rational Team, 2001, Rational Unified


Process : Best Practices for Software
Development Teams.

[8] Rivest, R, 1994, The MD5 Message-Digest


Algorithm [RFC1321]. MIT.

You might also like