June 27, 2009

    Topology Misuse Case dengan Use Case dalam security

    Konsep misuse case pertama kali dikemukakan oleh Guttorn Sindre dan Andreas L. Opdahl. Biasanya proses pengembangan suatu system atau software menggunakan suatu siklus. Selama ini, penggunaan tool Use Case dapat memenuhi dalam desain kebutuhan sistem. Tetapi kebutuhan desain sistem berkembang dengan memperhatikan security-nya. Oleh karena itu, Misuse Case muncul untuk memenuhi kebutuhan tersebut.

    Use case menggambarkan fungsi-fungsi yang harus dapat dijalankan sistem. Misuse case mewakili langkah aksi jahat yang mungkin terjadi menyerang sistem. Misuse case diagram dibuat dengan merujuk use case diagram.

    Entiti dalam misuse case :

    1. Misuse case, lawan dari use case.
    2. Mis-actor atau misuser, lawan dari actor

    Relasi :

    include, extend, generalize, association, mitigate, threat, detect, prevent

    Lima langkah untuk mengidentifikasi security requirements dengan misuse case :

    1. Identify critical assets in the system
    2. define security goal for each assets
    3. identify threats to each of these security goals, by identifying the stakeholders that may want to cause harm to the system
    4. identify and analyze risks for the threats, using technique like risk assessment
    5. define security requirements for the risks


    Kelebihan misuse case :
    - tool untuk mendapatkan non-functional requirements (typical security req, platform req), mirip dengan tool untuk mencari functional req.
    - fokus pada security dari awal pengembangan software, shg bisa terhindar dari pengambilan keputusan dini
    - tool yang sangat baik untuk komunikasi antara pengembang dan stakeholder mengenai critical system solutions
    - misuse case dapat memicu rantai reaksi antara functional dan non-functional requirement. Suatu misuse case akan memicu adanya use case yang baru dan seterusnya.

    Contoh kasus yang dibahas adalah aplikasi 2-tier
    Aplikasi tentu saja bersifat client-server, dalam jaringan lokal.
    Sebenarnya kerentanan dalam aplikasi yang bersifat Thick Client dengan Web Application adalah sama, kecuali di web application ada Cross Site Scripting (XSS). Jadi gambaran misuse case pada contoh kasus ini juga dapat digunakan untuk melihat permasalahan di Web Application.
    Precondition :
    1. Sistem mempunyai superuser atau admin
    2. Sistem mempunyai beberapa level user sesuai dengan privilege-nya
    3. User dapat logon ke dalam sistem dalam jaringan

    Assumption :
    1. Setiap user dapat logon ke dalam sistem melalui jaringan (for all paths)
    2. Setiap user mempunyai username dan password, dengan level dan privilege tertentu
    Worst case threat (postcondition) :
    1. Misuser mendapatkan otoritas user lain
    2. Misuser dapat mengubah level privilege
    Capture guarantee (postcondition) :
    1. Misuser tidak mendapatkan otoritas user lain
    2. Misuser tidak dapat mengubah level privilege
    Stakeholder dan Threat :
    1. Sabotase pada sistem dapat menyebabkan kekacauan jalannya sistem
    2. Kerugian tidak ternilai jika data rahasia instansi dapat terbaca pihak yang tidak bertanggung jawab

    Gambar Use case dan Misuse case nya :
    Topology Misuse Case dengan Use Case

    Topology Misuse Case dengan Use Case dalam security

    Keterangan gambar :
    Use Case warna putih : mewakili use case sistem
    Use Case warna biru : mewakili misuse case
    Use Case warna hijau : mewakili security case

    Mengurangi resiko
    1. untuk two-tier application, migrasi menjadi 3-tier dengan :
    · tier 1 untuk user interface
    · tier 2 untuk application server yang bertugas menjalankan semua proses
    · tier 3 untuk database server
    2. traffic antara user interface – application server, dan antara application server – database server, dijaga kerahasiaannya dengan algoritma enkripsi dan dijaga integritasnya dengan misalnya MD5 atau SSL.
    3. lakukan validasi semua input user dari length, special characters dan code
    4. atur level autorisasi yang tepat untuk user
    5. lakukan audit sistem dan sediakan fitur log untuk semua transaksi termasuk aktivitas login
    6. aplikasi harus menghapus data di memory setelah selesai. Informasi penting seperti password user yang tersimpan di memory komputer, files, registry dan database, sebaiknya disimpan dalam format hash
    7. ketentuan menggunakan aturan strong password untuk user
    8. gunakan teknik strong authentication, verifikasi input user dilakukan di level application server
    9. session ID harus random dan unbreakable
    10. aplikasi harus dapat menangani error tanpa memperlihatkan informasi sistem yang penting
    database tidak dijalankan di default port
    11. lakukan konfigurasi seeting secure pada database, application server dan OS, jangan lupa untuk selalu update patch
    12. database hanya menerima koneksi dari application server.

    Referensi : gratisan
    _____, Misuse case, http://en.wikipedia.org/wiki/Misuse_case, 24 Desember 2008
    Arindam Mandal, 19 Januari 2005, Thick Client Application Security, http://www.securitydocs.com/library/2885, 24 Desember 2008
    Michelle Davidson, 12 Januari 2006, Top 10 Web Application Security Vulnerabilities, http://searchsoftwarequality.techtarget.com/generic/0,295582,sid92_gci1157415,00.html, 24 Desember 2008
    Guttorm Sindre, Andreas L. Opdahl, Capturing Security Requirements through Misuse Cases, http://folk.uio.no/nik/2001/21-sindre.pdf, 24 Desember 2008

    Terima Kasih Kunjunganya
    Judul: Topology Misuse Case dengan Use Case dalam security
    Ditulis oleh rew
    Rating Blog 5 dari 5
    Comments
    0 Comments

    0 komentar:

    Silahkan komentari: Topology Misuse Case dengan Use Case dalam security demi kemajuan blog gratistutorialebook.blogspot.com.

    Post a Comment