SDL
AGILE
Awalnya sebuah produk database di
dalam pengembangan yang dibentuk dalam sebuah team dengan waktu sekitar 4
minggu yang harus ditulis dengan bahasa C# dan ASP.NET. layanan windows mereka
dapat diproses dalam sebuah web aplication. layanan ini awalnya ditulis 3 tahun
lalu dengan sekitar 11rb kode C++ yang begitu kompleks.
PengInputan web aplikasi sebagian
ada yang tidak penting,karena tidak menawarkan dari sisi antar muka oleh admin
dari jarak jauh. Aplikasi ini juga
menggunakan kontrol activeX kecil yg di tulis dalam c++.
Backlog (umumnya mengacu dari
akumulasi dari waktu ke waktu ) produk yang kita kumpulkan dari 45 carita dari
si pengguna, 21 di antaranya adalah
menceritakan tentang prioritas yang tinggi, 10 pengguna menceritakan
tentang prioritas yang normal dan 14 adalah prioritas yang rendah. Selama fase
perencanaan, 10 cerita pengguna dipilih dalam langkah cepat, 3 prioritas dengan
prioritas tinggi, 3 prioritas lagi menengah, dan 4 ( sisanya ) adalah prioritas
rendah
Pada sesi ini, tim telah menambahkan
teknologi untuk masing" persyaratan untuk pembuatan SDL. produk yang
digunakan untuk manajemen dan menggunakan modul asli, tim juga bekerja dalam
me-managed code dalam sesi ini, sehingga tugas untuk mengambil langkah cepat untuk layanan online
berhasil di tambahkan.
Karena ini sebagai bantu loncatan
pertama dimana tim menggunakan proses SDL - Angile, cerita dari prioritas si
pengguna juga ditambahakan untuk
melengkapi beberapa persyaratan ( misal pelacakan dalam mendaftarkan proyek dalam
sistem keamanan, untuk menciptakan sebuah bentuk privasi ( khusus ), dan juga
untuk mengidentifikasi suatu privasi
respn orang, dan program keamanan.satu dari prioritas yang tinggi juga di tambahkan untuk mengubah dalam membangun
proses sebuah integrasi dalam permintaan SDL, dalam setiap pembangunan yang di
minta ( menggunakan SDL yang diminta, disusun dan penanda yang bnyk, dan
integrasi oleh peraturan keamanan FxCop ).
akhirnya, tim juga menambahkan dalam
prioritas tinggi untuk tugas yang kosong ( PR ) untuk penyelesaian dalam
langkah yang cepat. dalam langkah cepat ini tim memilih untuk menambahkan tugas
dan juga menjalankan rencana untuk sebuah anaslisa serangan antarmuka.
langkah cepat ini akhirnya dimulai,
dan dua orang tim mengambil tugas membangun model ancaman untuk fitur yang akan
di kembangkan ini. Masalah ini memiliki banyak masalah yaitu bahwa tidak ada
yang tahu bagaimana pembangunan sebuah model, jadi 2 tim ini melihat dan
membaca bab pemodelan ancaman di SDL buku ke 2 dan juga tentang seri Adam stack
tentang posting pemodelan ancaman. dalam informasi tersebut mereka mendapatkan
modal yang cukup untuk melakukan tugas pemodelan ancaman. setelah model ancaman
dibangun tim mengungkapkan kerentanan kritis database
berisi data yang sensitir ( nama
pengguna,informasi komputer, informasi pencari dan alamat IP) dan teryata bahwa
data tersebut tidak lepas dari ancaman. karena data yang sensitif, dan
bahwa si penyerang ( hacker ) atau orang
yang tidak berkepentingan bisa mengakses melalui potensi kerentanan SQL
injection.
Security Development lifecycle untuk
perkembangan Agile
Analisis
Mengaplikasikan kerja SDL, sebagai
batu loncatan
seperti slide sebelumnya memfokuskan
sesi permintaan / persyaratan khusus untuk SDL-Agile, di sesi ini kita berfokus
pada lembar kerja yg terkait dengan SDL, dan bagaimana diterapkan dalam bagian
Agile / kerangka sistem
Keamanan dalam pendidikan
di dalam anggota atau tim setidaknya
harus menyelesaikan satu pelatihan khusus dalam keamanana setiap tahun. jika
dalam presentase proyek hanya mencapai 20% dari anggota / tim yang tidak
mencapai / diluar sesuai persyaratan yang tidak di negosiasi ( di tawar ), maka
dinyatakan gagal ( karena konsukensi
gagal, maka produk tidak dapat di relasasikan ).sebaiknya konsultasikan
pemimpin anda untuk memilih daftar anggota khusus yang dapat memenuhi syarat
sebagai pelatihan SDL. Anda juga dapat berkonsultasi terhadap jaringan SDL
untuk pelatihan khursus agar dapat direkomendasikan.
selain itu, dalam berbagai hal yang
telah dijelaskan, sebagai penguji harus melakukan tugas yang berhubungan dengan
keamanan atau sistem SDL, yang seharusnya memperoleh pengetahuan yang relevan
sebelum melakukan tugas pada kegiatan
yang rumit. dalal hal ini, relevan yang dimaksud sebagai konsep yang berhubungan
dengan fitur yang telah dikembangkan seperti :
Aplikasi yang berbasis Web
kemudahan
dalam Cross-Site scripting (XSS)
kemudahan
dalam SQL Injection
Aplikasi Database :
kemudahan
SQL injection
Aplikasi C dan C++
Buffer
overflows
Integer
overflows
Dapat mengerti Semua Bahasa
Pemrograman
Input
Validation ( Memasukan Validasi )
Bahasa
yang sering / khsus ( PHP,Java,C# )
LOGICAL DESIGN
Alat dan Otomatisasi
Alat untuk mengotomatisasi kerja
dalam keamanan sangatlah penting sebagai tujuan keberhasilan untuk proses
security karena semakin anda dapat mengotomatisasi pekerjaan yang diperlukan untuk dapat memenuhi
persyaratan, maka kemanan juga menjadi lebih muga, dan jika dibantu dengan
Tools yang daat mengurangi upaya untuk berkembangnya usaha dari permintaan pembangunan yang berlebihan.
ketika dalam keamanan ikut terlibat, bukan tidak lagi Tools yang sebagai
pengganti manusia akan dapat memindai suatu keamanan dengan banyaknya kode
tanpa kenal lelah. tapi yang perlu di ingat adalah bahwa Tools hanya
menjalankan, bukan untuk membuat software produk yang dapat menjamin keamananya
dengan penuh.
Di dalam SDL-Agile juga perlu
memerlukan sebuah Tools, berikut untuk dapat dijalankan seminimal mungkin dan
merekomendasikan bahwa sistem ini akan beroperasi setiap hari dalam
pembangunanya dan juga pemrosesan, diantaranya adalah :
NET.Code :
CAT.NET
( berlaku untuk aplikasi ASP.NET saja )
FxCop
versi 1.35 atau lainya ( ini adalah peraturan standar dalam keamanan )
Native Code :
PREFast
( menganalisis di dalam Microsoft Visual Studio )
Model Ancaman : Landasan dari SDL
Pada point tertentu, SDL memiliki
berbagai model ancaman yang harus digunakan sebagai dasar untuk produk. apakah
ini merupakan produk baru atau sudah dalam pengembangan, model ancaman harus
dibangun sebagai bagian dari pekerjaan desain dalam pembuatan yang cepat.
proses pemodelan seharusnya dapat timeboxnya dan terbatas hanya bagian dari produk yang saat
ini sedang dalam pengembangan.
Model ancaman merupakan bagian yang
penting dalam mengamankan produk karena model
ancaman baik membantu / menganalisa
untuk :
Menentukan
masalah desain keamanan potensial.
Analisis
dalam serangan Drive dan komponen" yang paling beresiko
Pemrosesan
dalam pengujian Drive
Dalam setiap langkah, model ancaman
harus diperbarui untuk melakukan fitur terbaru atau penambahan' tertentu saja.
model ancaman juga harus memperbarui sebuah perubahan desain yang signifikan,
bahkan jika fungsi tersebut tetap sama.
Ancaman Pemodelan Perangkat SDL
Meskipun tidak secara resmi
diperlukan sebagai bagian SDL ( baik Agile atau SDL classic ) banyak tim
internal microsoft menggunakan SDL perangkat ancaman pemodelan dengan sukses
besar. Perangkat Ancaman Pemodelan dirancang khusus sebagai pengembang dan
arsitek yang belum tentu memiliki
keahlian keamanan.
Memulai Model ancaman untuk proyek
yang ada
Jika tim Agile mengadopsi SDL-Agile
seperti yang dijelaskan pada dokumen ini, sementara produk sedang dalam
pembangunan /proses, makan model ancaman perlu dibangun untuk produk saat
ini,tapi sebagai tim yang praktis. minimalis, tapi berguna, model ini dibangun
dengan menganalisis titik masuk yang beresiko tinggi dan juga data didalam
sistem. hal berikut ini harus diidentifikasi dan model ancaman yang dibangun
disekitar titik masuk di dalam data :
mendeteksi akhir dari jaringan yg digunakan dikonfirmasi dari titik
akhir lokal untuk proses yang lebih tinggi
Sensitif, data rahasia, atau pribadi yang diadakan di layanan data yang
digunakan di dalam aplikasi
Menggunakan sistem yang akurat untuk
menganalisis dan mengukur kode yang tidak menjamin adanya resiko di dalam bug
indikator penting dalam keamanan
yang dapat dilihat banyaknya bug adalah di dalam factor usia keamanan.
berdasarkan pengalaman atau pengembangan, semakin tua sistem ( jika tidak up to
date ), semakin tinggi jumlah bug yang
menggangu didalamnya. jika proyek anda memiliki sejumlah bug, anda harus
mencari ke mudahan dalam sistem yang memungkinkan. hal ini adalah sebuah tujuan
dalam keamanan. tujuan dari dorongan keamanan microsoft adalah untuk membawa
sistem yang up to date dalam waktu yang relatif terhadap lamanya sebuah proyek.
Perhatikan bahwa kemananan disini
untuk memperbaiki seberapa buruk bug yang ada di dalam sistem anda banyak bug
keamanan yang ditemukan dalam sistem dengan koneksi atau dalam kode yang
menangani data yang sensitif, bug ini
tidak hanya harus segera diperbaiki, tapi juga lonjakan untuk dapat menyisir
kode agar lebih teliti dalam menganalisa keamanan dalam menganalisis sebuah
bug.
Untuk contoh analisis yang dilakukan
selama pemasukan dari lonjakan meliputi :
All Code : Cari kegagalan validasi yang mengarah lamanya dalam pencarian
password dan penanganan key yang mengacu dalam lemahnya algoritma kriptografi.
Web Code :
mencari kerentanan yang disebabkan oleh pengguna masukan, seperti CSS
Kode Database : mencari kerentanan SQL
injection
Aman jika untuk Scripting kontrol ActiveX :
Tinjau lagi untuk C/C++ jika terjadi kebocoran informasi dan operasi yang berbahaya.
Tinjauan akhir terhadap keamanan
Akhir dari tinjauan keamanan
dilakukan dengan metode waterfall SDL yang diperlukan sebagau akhir dari setiap
proses cepat agile. namun, SDL agile dibatasi dalam ruang lingkup - penasihat
kamanan hanya perlu meninjau antara lain
:
-
Semua permintaan
yang begitu cepat haruslah segera diselesaikan, atau pengecualian persyaratan
yang telah diberikan.
-
Setidaknya satu
permintaan yang kosong memiliki kategori yang lengkap ( jika pengecualian tela
diberikan )
-
Tidak ada
persyaratan yang melebihi batas waktu ( atau pengecualian yang ditetapkan )
-
Tidak ada keamanan
bug yang terbuka dan jatuh diambang keparahan.
Beberapa tugas yang mungkin
memerlukan upaya manual sebagai penasihat keamanan untuk
memastikan bahwa mereka telah
selesai ( misal, model yang telah ditinjau), tetapi secara
umum, SDL-Agile jauh lebih ringan
dari pada SDL - Clasic,
Tidak ada komentar:
Posting Komentar