Onno W. Purbo
Computer Network Research Group ITB
Internet sebagai jaringan data public sangat diragukan
keamanannya untuk transaksi dagang / bisnis. Bagaimana usaha yang dilakukan
untuk menjamin keamanan data yang dikirimkan melalui jaringan public Internet
akan dicoba diterangkan pada kesempatan ini. Bentuk tulisan ini akan
mendasarkan dirinya untuk menjawab beberapa pertanyaan yang sering muncul.
Beberapa cerita tambahan tentang ketahanan sistem security RSA juga akan dicoba
dikembangkan & mungkin dapat menjadi masukan sejauh mana ketahanan sistem
ini. Informasi tentang security sebetulnya cukup mudah di peroleh di Internet
seperti di http://www.netscape.com, http://www.rsa.com atau melalui berbagai
search engine di Internet menggunakan keyword yang berkaitan dengan
network security.
Web sebagai media aplikasi untuk dunia bisnis di Internet
merupakan tool yang paling menarik karena kemampuan multimedia &
interaktifnya. Perkembangan yang pesat dari Web server ternyata cukup pesat,
hal ini dapat kita lihat dengan jelas dari grafik pertumbuhan Web server di
Internet yang di publikasikan oleh WebCrawler salah satu search engine yang
besar di Internet. Berbagai pertanyaan yang seringkali muncul ke permukaan pada
saat kita dihadapkan pada kenyataan untuk melakukan bisnis di Internet melalui
Netscape Navigator atau Micro$oft Explorer antara lain adalah:
- Mengapa perlu security features?
- Apa saja resiko minimal yang harus di tanggung oleh pengguna Internet?
- Bagaimana caranya teknologi security mengamankan browser dari resiko ini?
- Sampai sejauh mana security feature yang ada di browser dapat membantu kita bertahan terhadap resiko yang ada?
- Bagaimana caranya kita dapat melihat level security dari dokumen yang saat ini kita lihat.
- Bagaimana caranya kita mengetahui bahwa Navigator yang kita gunakan sedang beroperasi pada encrypted mode?
- Apakah dibutuhkan semacam metoda sertifikasi / authentikasi untuk menggunakan Internet secara aman?
- Apakah mungkin / cukup aman mengirimkan informasi personal melalui Internet, seperti nomor kartu kredit?
- Apakah dengan mengaktifkan security features maka kita akan menambahkan limitasi untuk mengakses berbagai site di Internet?
Baiklah mari kita lihat jawaban dari masing-masing
pertanyaan yang seringkali muncul satu per satu.
Mengapa perlu security features?
Security merupakan prasyarat dasar karena pada dasarnya
Internet adalah sebuah jaringan yang tidak aman. Jutaan komputer membentuk
public network Internet dimana komunikasi dapat di dengarkan di tengah jalan.
Pada saat data bergerak dari pengirim ke penerima, pasti melalui beberapa
koneksi (router dll) sebelum mencapai tujuan akhirnya. Artinya komputer lain di
luar dua komputer yang saling berkomunikasi tersebut sangat mungkin untuk akses
data tersebut. Oleh karenanya, security merupakan prasyarat mutlak jika kita
ingin data kita selamat melalui jaringan publik tersebut.
Resiko apa saja yang harus di tanggung oleh pengguna
Internet?
Pada dasarnya pada saat data dikirim melalui Internet akan
terbuka pada tiga (3) macam resiko keamanan, yaitu:
- Eavesdropping - komputer antara mendengarkan pembicaraan dari dua komputer yang sedang berbicara secara private.
- Manipulation - komputer antara akan mengganti informasi dalam data yang dikirimkan.
- Impersonation - sebuah komputer akan berpura-pura menjadi komputer lain (misalnya menjadi komputer tempat melakukan transaksi dagang).
Sebetulnya situasi ini sama persis dengan kondisi kita pada
saat melakukan pembelian mail order melalui telepon. Ketiga resiko di atas akan
terjadi pada saat melakukan transaksi mail order.
Bagaimana caranya teknologi security mengamankan browser
dari resiko ini?
Pada saat ini ada banyak sekali pengembangan perangkat
keamanan komputer maupun yang dapat dijalankan di jaringan komputer. Salah satu
yang cukup pesat berkembang antara lain adalah Secure Socket Layer (SSL) yang
dikembangkan oleh Netscape. SSL pada dasarnya sebuah set aturan yang
memberitahukan step yang harus dilalui untuk meningkatkan tingkat keamanan
komunikasi. Aturan SSL ini di disain untuk melakukan:
- Encryption, untuk mengatasi eavesdropping
- Data integrity, untuk mengatasi manipulation
- Authentication, untuk mengatasi impersonation
Perlu dipahami bahwa SSL hanya akan memproteksi data kita
pada saat transmisi saja. Hal ini yang disebut network security. Protokol SSL
sama sekali tidak akan memproteksi data - sebelum maupun sesudah dilakukan
komunikasi. Artinya kita harus percaya penuh bahwa penjual / merchant tidak
memberikan nomor kartu kredit yang kita miliki ke orang lain.
Sampai sejauh mana security feature yang ada di browser
dapat membantu kita bertahan terhadap resiko yang ada?
Internet pada dasarnya adalah jaringan yang tidak aman.
Sebetulnya tidak ada teknik security di dunia ini yang berani mengklaim sebagai
teknik yang tidak bisa di tembus / paling aman. Untuk itu perlu digiatkan para
pengguna Internet untuk menjamin keamanannya untuk melakukan beberapa hal di
bawah ini:
- Selalu menggunakan versi terakhir dari software yang digunakan. Umumnya vendor software akan mengeluarkan versi terbaru untuk memperbaiki berbagai lubang security / bug yang ada.
- Sedapat mungkin gunakan versi security tertinggi. Saat ini pengguna Netscape di US & Canada dapat menggunakan software Netscape yang mempunyai 128-bit key yang akan memberikan keamanan jauh lebih tinggi daripada 40-bit key yang saat ini boleh di export keluar US. Regulasi di US sedang diperjuangkan untuk di ubah untuk memungkinkan penggunaan jumlah bit key yang tinggi.
Cara setting system security?
Pada dasarnya sebuah sistem security akan terbagi dalam dua
hal besar, yaitu:
- Cipher suite adalah algoritma kryptografi yang digunakan untuk sebuah komunikasi; umumnya digunakan beberapa algoritma sekaligus. SSL menggunakan sebuah algoritma untuk verifikasi identitas, sebuah untuk enkripsi data yang di transaksikan, dan sebuah algoritma lagi untuk message integrity.
- Sertifikasi digunakan untuk binding sebuah (client atau server) ke public key. Sebuah sertifikatpada dasarnya sebuah data file dengan beberapa buah informasi di dalamnya. Informasi ini berisi:
- “Nama” yang menjelaskan pemegang sertifikat.
- Public key dari pemegang sertifikat.
- Autoritas sertifikat tersebut, yang akan memberikan informasi seperti, serial number, expiration date, dan sidik jari digital.
Bagaimana caranya kita mengetahui browse yang kita
operasikan sedang dalam keadaan aman?
Jika kita menggunakan Netscape maka di URL yang dituju
haruslah https:// bukan http:// jadi ada huruf “s” sesudah http. Di samping itu
di pojok kiri bawah, gambar kunci tersambung - tidak terpisah seperti pada saat
operasi biasa dilakukan.
Apakah sertifikasi diperlukan untuk menggunakan Internet
secara aman?
Sertikat diperlukan oleh minimal salah satu unit / komputer
yang berkomunikasi menggunakan SSL. Sejak tahun 1996, umumnya sertifikasi
dilakukan oleh server, yang akan mengautentikasi identitas & menerima
informasi dari pengunjung yang datang ke site mereka dalam lingkungan
komunikasi yang terproteksi. Pola ini banyak digunakan oleh berbagai sites yang
menjual barang di Internet. Saat ini semakin banyak user individual yang
mempunyai personal sertifikasi terutama untuk mengirimkan mail secara aman
maupun untuk keperluan autentikasi.
Bagaimana dengan pengiriman informasi yang sifatnya pribadi
seperti nomor kartu kredit?
Kita dapat mengirimkan nomor kartu kredit jika
pada saat itu security diaktifkan di brwoser (https) maupun di server. Dengan
menggunakan jalur komunikasi yang telah diaktifkan security-nya maka akan
dikurangi resiko fraud dll pada saat informasi di transmisikan melalui
Internet.
Satu hal yang harus kita jaga adalah kita harus percaya
penuh pada penerima informasi finansial tersebut. Teknologi security hanya akan
mengamankan jalur komunikasi akan tetapi tidak akan mengamanan kita pada orang-orang
yang sembrono di balik server sana.
Apakah security features akan membatasi kemungkinan bagi
kita mengakses site Internet?
Sama sekali tidak, bahkan kita masih tetap bisa menerima
mail & news baik yang di encrypt maupun tidak secara transparan.
Mudah-mudahan sedikit jawaban dari Frequently Asked
Questions (FAQ) di atas akan memberikan sedikit gambaran tentang usaha
yang sedang berlangsung untuk mengamankan Internet bagi dunia usaha. Selanjutnya
akan kita perdalam lebih lanjut beberapa hal yang berkaitan dengan pengembangan
protokol security itu sendiri. Usaha pengembangan protocol security sejalan
dengan berbagai usaha untuk men-challenge / membobol protocol tersebut yang
merupakan sayembara Internasional.
Secure Socket Layer
Netscape telah merancang & menspesifikasikan protokol
untuk menjamin security data antara protocol layer aplikasi (seperti HTTP,
Telnet, NNTP atau FTP) dengan TCP/IP. Protokol security itu di sebut, Secure
Socket Layer (SSL), yang memberikan enkripsi data, autentikasi server, message
integrity dan option untuk autentikasi client pada saat hubungan TCP/IP
berlangsung.
SSL pada dasarnya sebuah protocol yang non-proprietary &
open. MD5 dan RC4, dua dari komponen kriptografi (yang sangat baik) dari SSL,
di disain oleh Ron Rivest dari RSA Laboratories .
SSL sudah dimasukan ke W3 Consortium (W3C) working group on security untuk
dilihat kemungkinannya sebagai standard security pada World Wide Web browser
& server di Internet. Versi terakhir dari protocol SSL sudah dimasukan ke
Internet Engineering Task Force (IETF) dan tersedia
di Internet sebagai Internet Draft. Kita bahkan dapat dengan mudah
berpartisipasi dalam pengembangan protocol ini dengan cara subscribe ke mailing
list IETF untuk keperluan tersebut. Caranya:
- kirim mail ke ietf-tls-request@w3.org
- pada subject tulis “subscribe”
Selain itu juga mailing list ssl-talk@netscape.com yang
dapat di subscribe melalui cara:
- kirim mail ke ssl-talk-request@netscape.com
- pada subject tulis “subscribe”
Untuk mempelajari lebih lanjut dari SSL dapat diperoleh
dengan mendatangi site-site berikut:
- http://home.netscape.com/eng/ssl3/index.html - yang menerangkan secara detail dari Secure Socket Layer versi 3.
- http://home.netscape.com/info/security-doc.html - dokumentasi dari Netscape tentang aspek security.
- http://home.netscape.com/assist/security/ssl/protocol.html - Secure Socket Layer.
- http://home.netscape.com/assist/security/ssl/howitworks.html - bagaimana SSL bekerja.
- http://www.consensus.com/security/ssl-talk-faq.html - Frequently Asked Questions (FAQ) tentang SSL.
RSA
RSA yang bermarkas di Redwood City, California
merupakan salah satu lembaga penelitian bidang
security yang cukup besar khususnya dalam bidang enkripsi data. Public key RSA
merupakan salah satu algoritma yang digunakan oleh SSL Netscape. Saat ini RSA
Lab sedang mengembangkan yang disebut sebagai:
Public-Key
Cryptographics Standards (PKCS)
yang dikembangkan sejak tahun 1991 bersama Apple, Digital,
Lotus, Microsoft, MIT, Northern Telecom, Novell dan Sun. Standard yng
dikembangkan meliputi beberapa hal seperti RSA encryption, Diffie-Hellman key
agreement, password-based encryption, extended-certificate syntax,
cryptographic message syntax, private-key information syntax, dan certification
request syntax. Detail artikel tentang berbagai standard ini dapat dengan mudah
di ambil dari Homepage RSA di http://www.rsa.com/.
Untuk melakukan diseminasi informasi maupun interaksi dengan
para ahli / penggemar dunia kriptograpfi beberapa mailing list telah dibuat
oleh RSA yang diatur melalui majordomo@rsa.com. Adapun mailing list tersebut
adalah:
pkcs-tng@rsa.com - PKCS The Next Generation.
cryptoki@rsa.com - Cryptographic Token Interface Standard.
pica@rsa.com - Platform-Independent Cryptography API.
Pretty Good Privacy (PGP)
PGP merupakan salah satu protocol untuk security yang banyak
digunakan di Internet selain SSL. Sebetulnya PGP jauh lebih sulit di bobol
daripada SSL. Hal ini disebabkan panjang dari key yang digunakan di PGP jauh
lebih panjang dari SSL sehingga pembobolan secara paksa sangat sulit dilakukan,
meskipun dengan beberapa juta komputer secara parallel. Diskusi tentang hal ini
banyak dilakukan di newsgroup sci.crypt dan alt.security.pgp - tampaknya
konsensus yang ada menunjukan bahwa PGP - Pretty Good.
Sekedar gambaran untuk membobol PGP dengan 1024-bit key PGP
message akan membutuhkan sekitar 300,000,000,000 MIPS year. Jadi sebetulnya
dibutuhkan banyak waktu & uang untuk melakukan penjebolan itu. Untuk
melihat detail dari penyerangan ke PGP dapat dilihat pada FAQ yang berlokasi di
http://axion.physics.ubc.ca/pgp-attack.html.
Software PGP versi Internasional yang di koordinir oleh
Ståle Schumacher dapat diperoleh dengan mudah dari
Internet pada alamat:
http://www.ifi.uio.no/pgp/download.shtml
ftp://ftp.ifi.uio.no/pub/pgp/
ftp://ftp.encomix.es/pub/pgp/
ftp://ftp.ox.ac.uk/pub/crypto/pgp/
Atau melalui E-mail dengan mengirimkan mail ke
pgp@hypnotech.com dengan perintah GET PGP di Subject.
Tempat untuk mencari lebih lanjut berbagai informasi tentang
PGP dapat dilakukan melalui Internet:
http://www.ifi.uio.no/pgp/
http://www.prairienet.org/~jalicqui/pgpfaq.txt
ftp://ftp.uu.net/usenet/news.answers/pgp-faq/where-is-PGP.Z
http://world.std.com/~franl/pgp/pgp-passphrase-faq.html
http://axion.physics.ubc.ca/pgp-attack.html
ftp://net-dist.mit.edu/pub/PGP/PGP_FAQ
http://world.std.com/~franl/pgp/pgp.html
http://www.mit.edu:8001/people/warlord/pgp-faq.html
Usaha Pembobolan Sistem Security.
Seperti kita ketahui bersama bahwa tidak ada satupun sistem
di dunia ini yang sempurna. Oleh karena itu, usaha untuk membobol sistem
security yang dikembangkan bahkan akhir-akhir ini di sayembarakan di Internet
untuk menguji sampai sejauh mana tingkat kesulitan untuk menembus sistem
security tersebut. Hasil dari usaha pembobolan tersebut biasanya menjadi umpan
balik bagi para perancang protocol security untuk kemudian diperbaiki. Ada
baiknya penulisan dilakukan secara kronologis.
14 Juli 1996: Hal Finney melakukan posting dari SSL
challenge: sebuah record dari “secure” Netscape sesion yang di enkrip
menggunakan algoritma RC4-128-EXPORT-40.
15 Agustus 1996: Dua kelompok berhasil memecahkan SSL
challenge tersebut. Kelompok yang pertama adalah David Byers
dan Eric Young , bekerjasama
dengan Adam Back berhasil memecahkannya pada pukul
10:43. Dua jam kemudian, Damien Doligez
berhasil memecahkan pada pukul 12:23. Menarik untuk dilihat lamanya waktu untuk
menguasai ilmu untuk memecahkan challenge tersebut dibutuhkan waktu hampir
bulan.
Menurut Damien, untuk memecahkan SSL dengan 40-bit key
dibutuhkan sekitar 40 buah high end Pentium PC yang di kaitkan dalam sebuah
jaringan komputer sehingga dapat dipecahkan secara parallel untuk memperkuat
kemampuan komputasinya. Perlu diketahui bahwa Damien menggunakan sekitar 120 komputer
secara parallel untuk memecahkannya. Waktu yang dibutuhkan untuk memecahkan
challenge tersebut dengan kekuatan 120 komputer adalah sekitar 8 hari (estimasi
maksimum akan dibutuhkan waktu 15 hari).
17 Agustus 1996: Netscape mengirimkan responds resmi mereka.
Walaupun sebagian besar orang kurang setuju (karena underestimate) dengan angka
US$10,000 untuk biaya pembobolan algoritma RC4-128 di SSL mereka.
Sejak saat ini mulai ada usaha-usaha dari para cyberpunk
untuk bersatu & membentuk sebuah jaringan “key cracking ring” untuk melihat
seberapa cepat kita kita dapat membongkar sesion yang di enkrip dengan
menggunakan banyak mesin di Internet secara parallel dari ring tersebut.
19 August 1996: Hal Finney kembali melakukan posting dari
SSL challenge yang kedua kepada para cyberpunk untuk "key cracking
ring". Kegiatan ini di koordinir oleh Adam Back dan Piete Brooks.
24 Agustus 1996: “Key cracking ring” yang merupakan kumpulan
komputer yang bekerja secara parallel melalui jaringan Internet mulai bekerja
pada challenge tanggal 19 Agustus yang dilakukan pada pukul 18:00 GMT. Dalam
waktu kurang dari 32 jam hasilnya diperoleh!
17 September 1996: Ian Goldberg dan David Wagner berhasil
membobol pseudo-random number generator dari Netscape Navigator 1.1. Mereka
berhasil masuk ke session key dalam waktu beberapa jam dari sebuah workstation.
Seperti kita lihat di atas bahwa untuk memecahkan sebuah
secure session SSL dengan 40-bit key ternyata membutuhkan waktu yang lama
(berhari-hari) dengan kekuatan 120 komputer melakukan komputasi secara
parallel. Hal ini menunjukan betapa sulitnya untuk memecahkan sebuah secure
session. Dengan adanya usaha Netscape untuk mengexport versi SSL yang lebih
aman dengan 128-bit key maka akan semakin sulit untuk menembus proteksi yang
akan ada.
Summary
Pada dasarnya berbagai algoritma security yang dikembangkan
untuk mengamankan transmisi data melalui jaringan komputer public Internet
sebetulnya mampu untuk mengamankan saluran transmisi sehingga cukup aman. Untuk
membobol sebuah session yang telah di amankan, dibutuhkan banyak waktu &
komputer yang bekerja secara parallel.
Kita semua berharap agar pemerintah Amerika Serikat akan
melunakan peraturan export mereka supaya program security yang kuat dapat di export
dengan mudah ke luar Amerika Serikat & akhirny akan meningkatkan keamanan
transmisi data melalui Internet sehingga akan menambah semangat dunia usaha
untuk berusaha di Internet.
Sekedar tambahan berbagai Newsgroup di Internet yang
membahas tentang berbagai hal yang berkaitan dengan security antara lain
adalah:
alt.anonymous
alt.anonymous.messages
alt.privacy.clipper
alt.security
alt.security.pgp
alt.security.ripem
alt.security.keydist
alt.society.civil-liberty
comp.compression
comp.org.eff.news
comp.org.eff.talk
comp.patents
comp.risks
comp.society.privacy
comp.security.announce
misc.legal.computing
sci.crypt
sci.math
talk.politics.crypto
Mudah-mudahan tulisan yang cukup panjang ini dapat
memberikan gambaran secara garis besar tentang usaha yang sedang berjalan untuk
mengamankan Internet bagi dunia usaha. Juga diharapkan dapat menjadi acuan awal
bagi rekan-rekan yang ingin mendalami lebih lanjut masalah keamanan / security
di Internet.