]> dia curi aplikasi client, dia decompile .jar (walopun dah di
obfuscated dan take time dikitlah) dah gitu dia "pelajari" dikit
> bikin simple logger yang dikirim ke email cracker dibagian authentikasinya, 
> trus build lagi jadiin jar, taro aplikasi .jarnya

gak bisa nih, kalau dijar signing. Kalau dah dibongkar dibuild lagi
dah ga signing lagi.

> ketempat asal curiannya..... tunggu beberapa waktu hingga ada yang make itu 
> sistem...

lah ini kan kelemahan di sisi jaringan dan server donk bukan di sisi aplikasi

> klo dah tau info datanya, baru bisa dibajak aplikasi curiannnya dimana2 
> (walopun awalnya aplikasi itu cuman bisa dipake di komputer tertentu). klo 
> yang dikompilasi dengan metoda jar signing, yach agak nambah waktu dikit lagi 
> lah...

Keamanan jaringan dan aplikasi itu ada requirementnya :

1. Confidentiality : Data sensitif harus dilindungi, ini kebutuhan
kenapa kita pake aplikasi diatas database :D
2. Integrity : data yang dikirim harus sama pas diterima dengan yang
dikirim : pake SSL atau TLS donk jangan plain text
3. Authentication : Memastikan user benar2 orang yang mengakses data,
kebutuhan ini diimplementasikan dalam beberapa lapis keamanan.
- pertama ditest tentang "what you know" biasanya ditampilkan layar
login yang harus diisi user dan password.
- Kedua ditest tentang "what you have" diimplementasikan dengan
teknologi token atau one-time-used-password dimana user dikasi token
trus server ngasih angka, user masukin angka ke token dan ditampilkan
angka (one-time-used-password) kemudian diinput di sistem untuk
dicocokin dengan server. Kalau institusinya gak sanggup beli token,
biasanya dikasi satu kertas penuh one-time-password dan diminta untuk
tidak menggunakan 1 password 2x, cukup praktis dan doable. Selain
dengan token biasanya diimplentasikan dengan kartu magnetig atau chip.
- Ketiga ditest tentang "who you are". Diimplementasikan dengan
biometric data seperti sidik jari atau periksa retina, atau setiap
orang dikasi certificate yang disembunyikan dalam chip kartu dan
terhubung dengan data kependudukan. Seperti MyKad di malaysia. Di
indonesia kan ktp kertas dilaminating, kalau di malaysia ada mykad
yaitu kartu berchip dimana informasi kependudukan ada di dalam chip
tersebut yang bisa dipastikan bahwa pemegang kartu ini adalah si A.
4. Authorization : user tertentu hanya bisa mengakses resource
tertentu juga, implementasinya ACL di dalam aplikasi
5. Non-Repudiation : user tidak bisa menyangkal kalau melakukan aksi
terhadap data dan melewati proses autentikasi bahwa yang melakukan
tersebut bukan dirinya. Ya dengan logging dan audit trail.

Dari semua kebutuhan keamanan aplikasi diatas + implementasinya bisa
dilihat bahwa sebenernya keamanan aplikasi itu sendiri tidak
bergantung terlalu banyak terhadap aplikasinya. Walaupun bisa dicrack
tapi kalau pemeriksaan terhadap autentikasi gagal ya sama aja gak bisa
masuk ke servernya. Walaupun aplikasinya pake java ME asal setiap
komunikasi menggunakan "session" ya servernya tetep aman. Protokol
menggunakan SSL / TLS. Trus jaringan difirewall. User mendaftarkan
Imei HPnya dst dst. ;)

Di jepang lebih beruntung dibanding di indonesia, soalnya di sana HP
itu ada chip yang bisa diisi informasi mengenai pemiliknya, sehingga
HP bisa digunakan untuk micropayment seperti flash BCA. Kalau saldonya
habis tinggal jalanin aplikasi Java ME, trus topup dari account bank,
muaantebb.

--


http://ifnu.artivisi.com
+62 856 9211 8687
regards

Kirim email ke