Multi Factor Authentication

Seiring dengan perkembangan teknologi informasi dan komunikasi, semua pekerjaan yang dilakukan oleh manusia perlahan-lahan terkomputerisasi. Penggunaan teknologi baru pada suatu perusahaan ataupun organisasi dapat membantu kinerja dan memberikan manfaat bagi perusahaan atau organisasi tersebut. Selain itu, penggunaan teknologi juga dapat memberikan dampak negatif apabila tidak terdapat kendali yang tepat. Sebagai contoh adalah perusahaan perbankan yang saat ini sudah menerapkan kemudahan akses melalui internet ataupun sms yang biasa disebut dengan e-banking dan sms-banking. Keamanan terhadap informasi seorang nasabah sangat diutamakan dalam usaha perbankan. Apabila kendali terhadap informasi nasabah yang rahasia tidak diterapkan dengan baik, seorang yang berniat jahat dapat mencuri informasi milik nasabah dan dapat mengakses segala informasi yang dimiliki nasabah.

Autentikasi merupakan cara untuk mengetahui apakah pengguna yang mengakses ke suatu sistem merupakan pengguna yang berhak dan sesuai atau tidak. Untuk memperkuat keamanan pada suatu sistem, autentikasi terhadap banyak faktor yang berhubungan dengan pengguna digunakan sehingga autentikasi tersebut tidak hanya password saja atau PIN saja. Autentikasi biasa digunakan pada sistem yang penggunanya mengakses sistem tersebut dari jauh, atau ketika seorang pengguna mengakses sebagai hak penuh, dan mengakses database yang berisi informasi rahasia. Dengan Autentikasi banyak faktor memverifikasi identitas pengguna dengan menggunakan dua dari tiga mekanisme berikut:

  1. Sesuatu yang diketahui pengguna, seperti password atau passphrase atau PIN
  2. Sesuatu yang dimiliki pengguna, seperti token atau sertifikat software
  3. Sesuatu yang berada di pengguna, seperti sidik jari atau retina

 

Ketika autentikasi banyak faktor diterapkan dengan benar, seorang penyerang akan lebih sulit untuk mengakses sistem dan mendapatkan informasi-informasi rahasia. Hal ini disebabkan karena seorang pengguna harus memktikan bahwa pengguna memiliki akses secara fisik kepada faktor kedua yang dimiliki oleh pengguna (contoh: paspor, token, kartu autentikasi) atau yang berada di diri pengguna (contoh: sidik jari, retina, kontur wajah) atau menggunakan kode yang berubah-ubah setiap kali pengguna ingin mengakses sebuah sistem.

Beberapa kombinasi faktor-faktor autentikasi yang biasa digunakan adalah:

  1. Token yang dapat membangkitkan angka acak yang digunakan sebagai PIN atau password
  2. Smartcard yang digunakan bersama dengan smartcard-reader dan PIN atau password
  3. Kode acak yang berubah-ubah setiap pengguna mengakses sistem yang dikirimkan lewat SMS dan digunakan bersama dengan PIN atau password
  4. Biometrik seperti sidik jari atau tekstur wajah yang digunakan bersamaan dengan PIN atau password
  5. Sertifikat software yang disimpan di dalam komputer pengguna atau perangkat media penyimpanan yang dapat diakses dengan menggunakan PIN atau password

 

Setiap kombinasi autentikasi banyak faktor memiliki kelebihan dan kekurangannya masing-masing. Penggunaannya harus disesuaikan dengan kebutuhan sistem yang akan digunakan. Autentikasi banyak faktor yang penerapannya tidak baik dapat menyebabkan masalah keamanan dan dapat menimbulkan kerentanan terhadap sistem. Autentikasi banyak faktor menjadi sangat efektif apabila salah satu faktornya terpisah secara fisik dari komputer tempat pengguna mengakses sistem, seperti menggunakan token. Ada beberapa hal yang harus diperhatikan untuk memaksimalkan efektifitas dari autentikasi banya faktor:

  1. Server tempat autentikasi tidak terhubung ke jaringan lain selain untuk autentikasi. Hal ini dapat dilakukan dengan:
    1. Mengaplikasikan semua saran keamanan dari produk yang dikeluarkan oleh vendor
    2. Mengimplementasikan atau membagi-bagi jaringan sesuai dengan ranah kerjanya untuk membatasi mesin dan pengguna yang di dalam jaringan yang dapat mengakses server tempat autentikasi
    3. Pengguna menggunakan password atau PIN yang sulit dan kompleks sebagai langkah keamanan apabila token atau informasi lainnya mengenai autentikasi dikopi, hilang, atau dicuri
    4. Jika tidak menggunakan autentikasi banyak faktor, PIN atau password pengguna yang digunakan untuk akses ke sistem dari jauh sebaiknya berbeda dengan password pengguna yang biasa untuk akses ke jaringan.
    5. Pengguna tidak menyimpan perangkat token dengan perangkat tempat pengguna melakukan akses ke sistem dari jauh.

 

Beberapa contoh teknik dan metoda autentikasi banyak faktor :

Autentikasi banyak faktor berdasarkan token dan waktu akses yang tersinkronisasi

Pengguna diberikan sebuah perangkat token yang memiliki layar dan menampilkan angka yang hanya berlaku dalam jangka waktu tertentu saja (seperti RSA SecurID dan Vasco token). Ketika pengguna ingin mengakses sistem, server autentikasi menyamakan waktu dari kedua perangkat, server dan perangkat pengguna yang digunakan untuk mengakses server, kemudian server autentikasi mengetahui kode apa yang akan keluar pada semua token yang saat itu ingin mengakses server.

DP_go3_2 SD520

Gambar 1. Salah satu contoh produk token satu tombol buatan vasco dan token buatan securID (sumber: http://www.vasco.com/Images/DP_go3_2.jpg dan http://www.tokenguard.com/images/tokens/SID900.gif)

Apabila pengguna mengautentikasi diri untuk masuk ke sistem dengan menggunakan username, PIN atau password, dan kode yang keluar dari token,  maka server autentikasi barulah dapat menyimpulkan apakah pengguna memiliki hak akses ke sistem atau tidak. Jika digunakan dengan cara yang benar, metode ini merupakan metode yang paling efektif untuk melakukan autentikasi banyak faktor. Karena apabila seorang penyerang sistem mengetahui kode apa yang dimasukkan oleh pengguna, kode tersebut sudah tidak berlaku sehingga informasi kode tersebut tidak berguna. Hal yang harus dilakukan untuk memaksimalkan keamanan dan efektifitas metode ini:

  1. Waktu berlakunya kode token diatur menjadi secepat mungkin
  2. Pengguna diberitahu untuk melapor apabila token hilang
  3. Pengguna harus mengetahui bahwa pengguna tidak boleh memberikan informasi tentang token mereka (seperti nomor seri token)

 

Autentikasi banyak faktor berdasarkan smartcard dan sertifikat

Pengguna menggunakan smartcard beserta readernya yang terhubung ke komputer ketika pengguna ingin mengakses sebuah sistem. Software yang terdapat pada komputer pengguna menyediakan PIN atau password untuk mengakses smartcard, kemudian software tersebut melakukan verifikasi terhadap pengguna dan menandatangani permintaan akses dengan kunci privat pengguna. Setelah itu permintaan akses yang sudah ditanda-tangani dicek oleh server autentikasi dan akan ditentukan apakah pengguna yang bersangkutan memiliki hak akses atau tidak.

gemalto-products

Gambar 2. Contoh smart card yang digunakan untuk keamanan beserta reader-nya (sumber: http://cardps.com/content/images/gemalto/gemalto-products.png)

Metoda autentikasi banyak faktor seperti ini memiliki kerentanan karena software yang menandatangani permintaan akses terdapat di komputer tempat pengguna ingin mengakses sistem. Jika penyerang dapat menguasai komputer pengguna maka software tersebut dapat diketahui data-datanya, dan ketika proses sedang berlangsung dapat dicegat dan penyerang mengirim permintaan akses palsu dan berusaha memiliki hak akses. Contoh serangan seperti ini telah terdokumentasikan pada laporan Mandiant M-Trends 2011. Hal yang harus dilakukan untuk memaksimalkan keamanan dan efektifitas adalah:

  1. Kunci dari Certification Authority dilindungi dengan baik, seperti tersimpan pada Hardware Security Module, dan backup kunci aman secara fisik dan tersimpan secara offline.
  2. Komputer yang digunakan pengguna untuk mengakses sistem dipastikan aman dan tidak rentan. Hal ini dapat dicapai dengan melakukan pembaharuan program anti-virus dan menggunakan firewall dan IDS,
  3. Pengguna mendapatkan informasi secara visual setiap kali terdapat permintaan akses yang mengharuskan pengguna memasukkan PIN atau password sehingga dapat mendeteksi permintaan akses yang tidak benar,
  4. Pengguna tidak membiarkan smartcard di dalam reader. Untuk membuat lebih aman maka dapat digunakan smartcard yang contactless,
  5. Kapasitas penyimpanan smartcard dibuat secukupnya sekecil mungkin sehingga aplikasi yang terdapat di smartcard tidak dapat menerobos keamanan sistem,
  6. Menggunakan smartcard yang telah terbukti aman dan pengguna diinstruksikan untuk melapor apabila smartcard yang dimiliki hilang,

 

Autentikasi banyak faktor berdasarkan SMS dan kode satu kali

Metode ini menggunakan media telepon seluler sebagai faktor kedua untuk melakukan autentikasi. Nomor telepon seorang pengguna telah dimiliki oleh sistem dan biasanya diminta ketika pengguna mendaftar ke sistem pertama kali. Ketika pengguna ingin mengakses sistem, sistem akan mengirim pesan berupa kode ke telepon seluler pengguna dan kode tersebut hanya berlaku dalam jangka waktu tertentu dan berubah-ubah setiap pengguna ingin melakukan akses ke sistem. Ketika pengguna ingin masuk ke sistem, sistem akan menanyakan username, password, beserta kode unik yang diberikan melalui pesan singkat dan kemudian sistem melakukan pengecekan apakah pengguna memiliki hak akses atau tidak.

sms-token

Gambar 3. Tampilan yang didapat pengguna ketika mendapat token melalui SMS (sumber: http://www2.safenet-inc.com/sas/img/sms-token.png)

Salah satu contoh produk layanan yang menyediakan autentikasi melalui SMS adalah SafeNet SMS token. Kelebihan menggunakan metode ini adalah metode ini menggunakan kode yang hanya berlaku dalam jangka waktu tertentu dan menggunakan faktor kedua yang telah dimiliki oleh pengguna sehingga dapat mengurangi biaya yang dikeluarkan oleh sistem. Akan tetapi terdapat beberapa kekurangan seperti:

  1. Jaringan telepon seluler tidak dapat dikendalikan oleh sistem sehingga apabila jaringan telepon seluler tidak berjalan dengan baik maka akan mempengaruhi ketersediaan layanan sistem.
  2. Apabila pengguna menggunakan telepon seluler untuk mengakses internet, maka pesan berisi kode yang diterima sudah tidak terbatasi aksesnya karena perangkat telepon seluler terhubung ke internet
  3. Jaringan telepon seluler tidak aman sehingga SMS dapat disadap. Akan tetapi jika kode yang dikirim ke telepon seluler sudah tidak berlaku, penyerang tidak dapat memanfaatkan kode untuk mengakses sistem

Hal yang harus diperhatikan untuk memaksimalkan keamanan dan efektifitas adalah:

  1. Waktu berlakunya kode yang dikirim ke telepon seluler diatur menjadi sekecil mungkin
  2. Pengguna diberitahu untuk melapor apabila telepon seluler mereka hilang atau dicuri, atau apabila pengguna mengganti nomor telepon

 

Autentikasi banyak faktor berdasarkan data biometrik pengguna

Mekanisme autentikasi banyak faktor seperti ini mensyaratkan pengguna untuk memasukkan PIN atau password dengan dilengkapi data biometrik pengguna seperti sidik jari atau pengenalan tekstur wajah yang akan dibandingkan dengan data yang terdapat pada server autentikasi. Jika data yang dimasukkan oleh pengguna valid, maka hak akses akan diberikan kepada pengguna. Jika tidak sesuai maka akan ditolak.

eikontouch700_thumb

Gambar 4. Fingerprint reader sebagai autentikasi biometrik (sumber: http://www.digitalpersona.com/uploadedImages/Biometrics/Hardware_Products/TouchChip_Family/USB_Silicon_Readers/eikontouch700_thumb.jpg)

Jika metode ini diterapkan dengan baik, maka metode ini merupakan metode yang paling aman dari semua metode autentikasi banyak faktor. Akan tetapi untuk mendapatkan teknologi biometrik yang baik dibutuhkan biaya yang tidak murah karena impelemtasi biometrik melibatkan identitas privasi seorang pengguna yang harus dijamin dan tidak boleh terjadi kesalahan ataupun pencurian identitas. Seperti halnya autentikasi yang berdasarkan smartcard, kerentanan pada metode ini disebabkan oleh software yang terpasang pada komputer pengguna. Apabila penyerang sistem dapat menguasai komputer maka teknik yang sama seperti pada smartcard dengan berpura-pura menjadi user yang sah dapat dilakukan. Efektifitas autentikasi berdasarkan teknologi biometrik ini sangat bergantung kepada teknologi biometrik yang digunakan dan software yang mengolah data pada komputer pengguna untuk mencegah terjadinya kesalahan negatif (menolak permintaan hak akses yang seharusnya hak aksesnya diterima) dan kesalahan positif (memperbolehkan permintaan hak akses yang seharusnya dilarang). Biaya penggunaan dan penerapan teknologi biometrik yang tidak murah membuat teknologi biometrik masih sulit untuk diterapkan. Hal-hal yang harus diperhatikan untuk memaksimalkan keamanan dan efektifitas dari metode ini adalah:

  1. Komputer yang digunakan pengguna untuk mengakses sistem dipastikan aman dan tidak rentan. Hal ini dapat dicapai dengan melakukan pembaharuan program anti-virus dan menggunakan firewall dan IDS.
  2. Pengguna mendapatkan informasi secara visual setiap kali terdapat permintaan akses yang mengharuskan pengguna memasukkan PIN atau password sehingga dapat mendeteksi permintaan akses yang tidak benar.
  3. Perangkat pembaca dan software biometrik yang baik harus digunakan untuk memperkecil resiko terjadinya kesalahan negatif dan kesalahan positif.

Metode autentikasi alternatif selain biometrik harus digunakan apabila ada seorang pengguna yang tidak dapat menggunakan metode biometrik.

 

Autentikasi banyak faktor berdasarkan sertifikat software

Ketika pengguna ingin mengautentikasikan diri dan melakukan akses ke sistem, sistem tersebut mengakses sertifikat software yang dimiliki pengguna yang tersimpan di dalam file di media penyimpanan yang dimiliki pengguna. Ketika file sertifikat ditemukan, pengguna diminta untuk memasukkan PIN atau password untuk mengakses database sertifikat. Apabila sukses, maka software yang terdapat pada komputer pengguna membantu pengguna untuk menandatangani permintaan akses dengan kunci privat milik pengguna. Server autentikasi kemudian melakukan verifikasi bahwa permintaan akses yang telah ditandatangani oleh pengguna adalah valid dan menentukan apakah pengguna memiliki hak akses ke sistem atau tidak. Contoh dari autentikasi menggunakan sertifikat terdapat pada sistem operasi telepon genggam android. Pada sistem operasi android, ketika seorang pengembang aplikasi membuat aplikasi, maka dibutuhkan sertifikat pada aplikasi yang dibuat agar dapat dipublikasikan dan dikomersialisasikan. Sertifikat yang terdapat pada aplikasi tersebut ditandatangani oleh para pengembang aplikasi dengan kunci privat mereka. Aplikasi pada sistem operasi android terdiri dari dua tipe yaitu debug dan release, aplikasi debug dapat dipasang di perangkat android pengguna apabila pengguna mengatur pengaturan dan mengizinkan agar aplikasi tersebut diinstall akan tetapi belum ditanda tangani oleh pengembang aplikasi, sedangkan aplikasi release merupakan aplikasi yang sudah siap untuk didistribusikan di google play (toko aplikasi online android). Apabila aplikasi android tidak ditandatangani maka aplikasi tersebut tidak dapat dipasang pada perangkat android pengguna. Autentikasi berdasarkan sertifikat software ini merupakan metode autentikasi banyak faktor yang paling sedikit diminati karena pada penggunaannya salah satu faktornya (yaitu software sertifikat) tidak terpisah dengan komputer tempat pengguna mengakses sistem sehingga seorang penyerang yang telah menguasai komputer pengguna dapat dengan mudah memanipulasi software sertifikat yang terdapat di komputer pengguna. Hal yang harus dilakukan untuk memaksimalkan  keamanan dan efektifitas metode ini adalah:

  1. Komputer yang digunakan pengguna untuk mengakses sistem dipastikan aman dan tidak rentan. Hal ini dapat dicapai dengan melakukan pembaharuan program anti-virus dan menggunakan firewall dan IDS.
  2. Pengguna mendapatkan informasi secara visual setiap kali terdapat permintaan akses yang mengharuskan pengguna memasukkan PIN atau password sehingga dapat mendeteksi permintaan akses yang tidak benar.
  3. Simpan sertifikat atau kunci di database sistem operasi daripada di sebuah file yang terdapat di hard disk.

Referensi

  1. (internet) http://www.asd.gov.au/publications/Top_35_Mitigations_Details_2012.htm
  2. (internet) http://www.asd.gov.au/publications/csocprotect/multi_factor_authentication.htm

 

Oleh :

Muhammad Abduh / 23213153

Retri Derry Febritiandar / 23213057