Selasa, 02 November 2010

UAS IT SECURITY

1.Bila Saudara bekerja di sebuah perusahaan kecil yang memiliki web server dan database server yang harus dijadikan satu dalam sebuah server, langkah-langkah apa yang Saudara lakukan untuk mengamankan database yang terdapat di database server tersebut.

Jawab :
a.Sistem operasi dipatch dengan versi yang terakhir.
b.Pengamanan jaringan melalui firewall yang dipasang pada setiap database server dan web server
c.Enkripsi Data Antara Web Server dan Database Server
d.Database server harus dikonfigurasi dengan benar, baik database enginenya maupun infrastrukturnya
e.Pemberian otoritas user harus sesuai dengan kebutuhan aplikasi
f.Sebaiknya password database tidak diberikan kepada user
g.Hanya diperbolehkan untuk mengakses data yang diperlukan saja
h.Jangan menggunakan user root, system atau selevelnya pada aplikasi untuk mengakses database server
i.Jangan pernah user root atau selevelnya tanpa password
j.Perlunya pendidikan mengenai keamanan administrator jaringan, database administrator dan web programmer
k.Pastikan bahwa web programmer/ web developmer dan DBA telah melaksanakan tugasnya dengan baik


2.Bila diketahui sebuah nomor kartu kredit

5402 7031 1869 0553
Berapakah nomor kartu kredit sebelum nomer tersebut? Jelaskan perhitungannya !
Jawab :
Langkah 1 :
Pengecekan digit/validasi kartu dengan mengkalikan semua angka pada digit ganjil dengan “2” lalu :
- Jika hasilnya Lebih dari 9 maka KURANGI HASILNYA dengan “9”.
- Jika hasilnya Kurang dari 9, biarkan saja.
Setelah itu JUMLAHKAN SEMUANYA.
Digit 1 : 5 ; 5x2 = 10 {Lebih dari 9}, jadi 10 – 9 = 1
Digit 3 : 0 ; 0x2 = 0 {Biarkan saja, karena KURANG DARI 9}
Digit 5 : 7 ; 7x2 = 14 {Lebih dari 9}, jadi 14 – 9 = 5
Digit 7 : 3 ; 3x2 = 6 {Biarkan saja, karena KURANG DARI 9}
Digit 9 : 1 ; 1x2 = 2 {Biarkan saja, karena KURANG DARI 9}
Digit 11 : 6 ; 6x2 = 12 { Lebih dari 9}, jadi 12 – 9 = 3}
Digit 13 : 0 ; 0x2 = 0 { Biarkan saja, karena KURANG DARI 9}
Digit 15 : 5 ; 5x2 = 10 { Lebih dari 9}, jadi 10 – 9 = 1}
Lalu jumlahkan :
1 + 0 + 5 + 6 + 2 + 3 + 0 + 1 = 18

Langkah 2 :
Jumlahkan digit yang ada di posisi Genap pada data No. Kartu Kredit 5402 7031 1869 0553
Digit 2 : 4
Digit 4 : 2
Digit 6 : 0
Digit 8 : 1
Digit 10 : 8
Digit 12 : 9
Digit 14 : 5
Digit 16 : 3
--------------- +
Jumlah : 32

Langkah 3 :
Jumlahkan hasil Langkah 1 dengan Langkah 2
18 + 32 = 50
Karena 50 HABIS DIBAGI dengan “10” , maka KARTU KREDIT TERSEBUT VALID.

Langkah 4 :
Menghitung nomor kartu kredit sebelum nomor 5402 7031 1869 0553.
Dari 16 angka tersebut, jika 6 digit tersebut diawali dengan 5, berarti kartu kredit tersebut berjenis MasterCard. 6 digit pertamanya merupakan “entissuer idifier“, yaitu kode jenis kartu kredit tersebut.
Berikutnya, 1 digit terakhir dari 16 digit angka di kartu kredit tersebut berfungsi sebagai “check digit“, yang fungsinya hanya untuk validasi pengecekan nomor kartu kredit tersebut.
Karena 6 digit awal dan 1 digit terakhir tersebut sudah memiliki arti, berarti tinggal tersisa 9 digit di tengah yang berfungsi sebagai “account number“.
Ke-9 digit tersebut adalah 311869055.
Selanjutnya account number sebelumnya adalah 311869055 – 1 (dengan asumsi pengurangan 1 untuk account number sebelumnya) = 311869054.
Maka nomor kartu sebelumnya adalah 5402 7031 1869 054...., namun cek digit ke-16 harus dihitung agar nomor kartu kredit tersebut valid.
Langkah 5 :
Pengecekan digit/validasi kartu dengan mengkalikan semua angka pada digit ganjil dengan “2” lalu :
- Jika hasilnya Lebih dari 9 maka KURANGI HASILNYA dengan “9”.
- Jika hasilnya Kurang dari 9, biarkan saja.
Setelah itu JUMLAHKAN SEMUANYA.
Digit 1 : 5 ; 5x2 = 10 {Lebih dari 9}, jadi 10 – 9 = 1
Digit 3 : 0 ; 0x2 = 0 {Biarkan saja, karena KURANG DARI 9}
Digit 5 : 7 ; 7x2 = 14 {Lebih dari 9}, jadi 14 – 9 = 5
Digit 7 : 3 ; 3x2 = 6 {Biarkan saja, karena KURANG DARI 9}
Digit 9 : 1 ; 1x2 = 2 {Biarkan saja, karena KURANG DARI 9}
Digit 11 : 6 ; 6x2 = 12 { Lebih dari 9}, jadi 12 – 9 = 3}
Digit 13 : 0 ; 0x2 = 0 { Biarkan saja, karena KURANG DARI 9}
Digit 15 : 4 ; 4x2 = 8 { Biarkan saja, karena KURANG DARI 9}
Lalu jumlahkan :
1 + 0 + 5 + 6 + 2 + 3 + 0 + 8 = 25

Langkah 6 :
Jumlahkan digit yang ada di posisi Genap pada data No. Kartu Kredit 5402 7031 1869 054...(tambahkan digit 16 dengan angka 6 agar jumlahnya 35).
Digit 2 : 4
Digit 4 : 2
Digit 6 : 0
Digit 8 : 1
Digit 10 : 8
Digit 12 : 9
Digit 14 : 5
Digit 16 : 6
--------------- +
Jumlah : 35

Langkah 7 :
Jumlahkan hasil Langkah 1 dengan Langkah 2
25 + 35 = 60
Karena 50 HABIS DIBAGI dengan “10” , maka NOMOR KARTU KREDIT SEBELUMNYA DARI 5402 7031 1869 0553 YANG VALID YAITU 5402 7031 1869 0546.


3.Bila diketahui serangkaian karakter ABCDAPQQPAABBBA. Buatlah langkah-langkah untuk membentuk pohon Huffman dari rangkaian karakter tersebut.
Jawab :
Pada karakter ABCDAPQQPAABBBA dalam kode ASCII membutuhkan representasi 15 × 8 bit = 120 bit (15 byte), dengan rincian sebagai berikut:
A = 01000001
B = 01000010
C = 01000011
D = 01000100
A = 01000001
P = 01010000
Q = 01010001
Q = 01010001
P = 01010000
A = 01000001
A = 01000001
B = 01000010
B = 01000010
B = 01000010
A = 01000001


Pada karakter ABCDAPQQPAABBBA = 15, frekwensi kemunculan karakter :
A = 5
B = 4
C = 1
D = 1
P = 2
Q =2

Tabel Kode Huffman untuk Karakter “ABCDPQ”
Karakter String Biner Huffman
A 0
B 10
C 11110
D 11111
P 110
Q 1110

Dengan menggunakan kode Huffman ini, karakter “ABCDAPQQPAABBBA” direpresentasikan menjadi rangkaian bit : 0 10 11110 11111 0 110 1110 1110 110 0 0 10 10 10 0.
Jadi, jumlah bit yang dibutuhkan hanya 37 bit.

4.Kriteria perusahaan yang bagaimana yang mengharuskan menerapkan Data Recovery Center secara penuh (Hot DRP).
Jawab :
Hot DRP memiliki persyaratan sebagai berikut :
a.Fasilitas alternatif yang memiliki sarana sama seperti data center yang sebenarnya.
b.Sistem dengan aplikasi, link komunikasi yang sama sudah terpasang dan tersedia di lokasi DRC
c.Data dibackup menggunakan koneksi live antara data center dan lokasi DRC
d.Operasional bisnis akan berjalan pada saat itu juga
e.Untuk aplikasi yang critical (fungsi-fungsi ini tidak bisa bekerja kecuali digantikan oleh fungsi yang serupa. Tidak bisa digantikan dengan metode manual)
f.Namun biayanya sangat mahal.
Kriteria perusahaan yang menerapkan Hot DRP :
a.Perusahaan yang memerlukan transaksi online setiap saat seperti perbankan, bursa efek, operator telekomunikasi, kurir, pembelian produk/jasa online.
b.Perusahaan yang mendefinisikan operational risk sebagai potensi seluruh gangguan dalam proses operasional suat organisasi atau perusahaan yang menyebabkan future losses atau terjadinya fluktuasi pendapatan di masa yang akan datang. Gangguan dimaksud dapat berupa kesalahan accounting dan trading, legal settlement, kegagalan sistem dan natural disaster.
c.Perusahaaan yang menetapkan Recovery Time Objection (RTO) atau target waktu yang ditetapkan dalam proses pemulihan kegiatan operasional dan sistem untuk memastikan kesinambungan kegiatan operasional apabila terjadi gangguan (disaster) dengan fault tolerant tidak ada pengaruh terhadap end user jika system mengalami down sehinga diperlukan program replikasi dalam system design.
d.Perusahaan yang melakukan transaksi dengan high value diantaranya adalah transaksi pemerintah, transaksi pasar uang antar bank (money market), transaksi perdagangan valuta asing (foreign exchange), transaksi pasar modal (securities) dan transaksi dengan nominal besar yang ditetapkan oleh Bank Indonesia. Saat ini, besarnya nominal transaksi yang dapat dikategorikan sebagai high value adalah transaksi sebesar 100 juta rupiah ke atas. Selain itu transaksi retail yang bersifat urgent diantaranya transaksi hasil kliring dan transaksi atas kepentingan nasabah.


5.Kerberos dianggap sebagai metode otentikasi yang baik. Analisa cara kerja Kerberos dan carilah kira-kira kelemahan apa yang terdapat pada Kerberos.
Jawab :
Cara kerja Kerberos :
a.Client membuat request kepada Authentication Server, meminta untuk mengotentikasi dirinya terhadap server
b.Request diberi digital signature oleh client yang dienkripsi dengan menggunakan private key client (digitally signed client request)‏

Client meng-enkripsi digitally signed request menggunakan public key dari server Kerberos

Client mengirimkan digitally signed and encrypted request ke server Kerberos
Server Kerberos men-dekripsi request menggunakan private key-nya dan meng-otentifikasi pengirim request dengan cara mem-verifikasi digital signature pengirim menggunakan public key pengirim request
Server Kerberos memiliki database yang berisi seluruh public keys dari authorized users sehingga server Kerberos tidak perlu mengandalkan pengirim ataupun pihak ketiga untuk memverifikasi public key pengirim
Jika server Kerberos tidak memiliki public key pengirim request di dalam database-nya, maka digital signature tidak dapat diverifikasi
Demikian juga bila server Kerberos tidak memiliki public key pengirim request maka pengirim bukanlah seorang authorized user jaringan, sehingga request-nya akan ditolak

Jika server Kerberos telah menerima request dan mengotentifikasi identitas pengirim request, maka server memverifikasi bahwa client memiliki otorisasi untuk mengakses sumber daya jaringan yang diminta
Jika Kerberos telah menentukan bahwa client memiliki otoritas untuk mengakses server payroll, maka server Kerberos akan mengirimkan session ticket yang sama baik kepada client maupun ke server payroll
Untuk mengirimkan session ticket kepada client, server Kerberos meng-enkripsi-nya
menggunakan public key dari cleint
Untuk mengirimkan session ticket ke server payroll, server Kerberos menggunakan public key server payroll
Ketika menerima encrypted session ticket, baik client maupun server payroll akan mendekripsi-nya menggunakan private keys masing-masing
Session ticket bisa di-tandatangani pula oleh server Kerberos untuk mencegah adanya ticket palsu yang dikirimkan ke client maupun ke sumber daya jaringan

Client kemudian mengirimkan copy dari ticket-nya ke server payroll
Sebelum mengirimkan ticket, client mengenkripsi ticket menggunakan public key server payroll

Ketika menerima ticket yang di-enkripsi dari client, server akan mendekripsi ticket menggunakan private key server
Server payroll kemudian membandingkan ticket yang diterima dari client dengan ticket yang berasal dari server Kerberosserver
Jika ticket sesuai (match) maka client akan diperbolehkan untuk terhubung ke server
Jika ticket tidak sesuai maka client akan ditolak
Setelah koneksi terbentuk, sistem dapat meng-enkripsi komunikasi menggunakan session key atau public key dari client atau tidak menggunakan enkripsi sama sekali

Analisis cara kerja dan kelemahan kerberos :
a.Clock synchronization service yang aman
Kerberos menggunakan time-stamp untuk mengetahui apakah authenticator yang dikirimkan masih baru (bukan replay attack). Untuk itu dibutuhkan sinkronisasi waktu di seluruh jaringan. Program sinkronisasi waktu yang digunakan umumnya adalah ntpd. Namun, seperti halnya service lain di jaringan, service ini juga memerlukan otentikasi. Jika tidak, maka dapat terjadi lubang keamanan dalam bentuk replay attack.
b.Trojan horse attack
Terjadi jika workstation sudah tidak aman lagi. Jika penyerang memodifikasi program dimana user memasukkan username dan passwordnya, maka penyerang dapat memperoleh informasi yang cukup untuk melakukan impersonation attack pada sistem ini. Oleh karena itu, Kerberos menuntut jalur yang aman antara user dan workstation.
c.Kerberizing” application program / client / server
Program-program aplikasi yang menggunakan otentikasi Kerberos harus diubah source code-nya (di-kerberized) sehingga dapat berkomunikasi dengan library-library Kerberos. Hal ini menjadi masalah sehubungan ukuran dan desain dari program aplikasi, khususnya pada program yang source code-nya tidak dipubikasikan. Tidak hanya program, semua client / server dalam jaringan tersebut harus dikerberized. Pilihannya hanya satu: di-kerberized atau tidak digunakan sama sekali. Jumlah server Kerberos terlalu banyak. Untuk departemen yang memiliki jaringan yang kecil, penggunaan server Kerberos tidak efektif. Akan lebih baik jika beberapa jaringan departemen kecil digabung dalam satu server Kerberos. Hal ini akan mempermudah pengamanan fisik dari server Kerberos (jumlah server Kerberos akan lebih sedikit sehingga pengamanan lebih mudah). Namun, tidak semua departemen akan mengizinkan, karena tiap departemen memiliki otoritas dan regulasi sendiri-sendiri atas jaringannya.
Kerberizing seluruh service yang digunakan. Kerberizing menjadi syarat agar sistem otentikasi ini dapat bekerja denga baik. Jika ada service jaringan yang belum di-kerberized, maka perlu usaha tambahan untuk memodifikasi source codenya.
d.Instalasi program tambahan di setiap workstation
Instalasi program Kerberos akan menyita banyak waktu, dikarenakan jumlah workstation yang sangat banyak dan tersebar. Tetapi dengan koordinasi yang baik hal ini dapat dilakukan compatibility dari protokol Kerberos dengan operating system yang ada. Jaringan ITB merupakan heteroculture network. Workstationworkstation yang ada mempunyai operating system (OS) yang bervariasi, misalkan UNIX, Linux, Window 98, Window 2000, Window XP, FreeBSD, dsb. Oleh karena itu, harus dicek apakah Kerberos untuk OS tertentu compatible dengan Kerberos untuk OS lain.
e.Kerberos tidak membuat ketetapan untuk keamanan host, dengan asumsi bahwa Kerberos dijalankan pada host yang dapat dipercaya pada jaringan yang terbuka. Dengan demikian apabila keamanan host disalah gunakan, Kerberos tidak dapat menjamin hal ini. Selain itu apabila attacker dapat mencuri seluruh tiket yang disimpan maka dia dapat menyalahgunakan tiket tersebut, walaupun hanya sampai batas kadaluarsanya.
f.Kerberos menggunakan password sebagai dasar untuk mencegah pencurian. Apabila karena kelalaian user, password tersebut jatuh kepada pihak yang yang tidak berwenang hal ini dapat disalahgunakan dan sangat berbahaya jika penyusup dapat meyakinkan rlogin bahwa dia adalah pemakai yang berhak. Oleh sebab itu pengaturan policy menjadi hal yang sangat penting agar password dapat diatur sedemikian rupa sehingga tidak mudah untuk dipecahkan serta diberikan masa kadaluarsa yang pendek. Namun demikian pengaturan password yang terlalu rumit justru akan menjadi kelemahan lain yang disebabkan karena Kerberos mengharuskan untuk selalu memasukan password pada saat ingin memperoleh layanan baru.
g.Pada Kerberos 4, masa berlakunya authenticator normalnya lima menit. Pada saat itu attacker memiliki kesempatan untuk mengintipnya. Untuk Kerberos 5 hal ini telah dapat diatasi melalui pembatasan authenticator yang hanya dapat digunakan satu kali serta melalui aplikasi pre-autentikasi.
h.Kelemahan lain dari Kerberos adalah apabila setiap principal dalam jumlah yang besar harus melakukan autentikasi langsung ke KDC, sehingga menyebabkan efek bottleneck. Pemecahannya adalah melalui pengaturan flag agar autentikasi tertentu dapat dilakukan hanya sampai realm tanpa harus ke KDC.

Tidak ada komentar:

Posting Komentar