Sony baru-baru ini diretas dengan injeksi SQL dan kata sandi pengguna mereka disimpan dalam teks biasa. Ini adalah kesalahan pemula. Dalam perusahaan sebesar itu, bagaimana ini bisa melewati QA? Bagaimana mereka tidak memiliki tim yang lebih baik daripada mengetahui lebih baik dari ini?
Ukuran perusahaan yang diretas membuat hal ini berbeda. Itu memengaruhi kita semua karena kita semua mungkin suatu hari menemukan diri kita dalam tim yang bertanggung jawab atas sesuatu seperti ini, dan kemudian kita mendapatkan kapak. Jadi apa saja faktor yang menyebabkan hal ini, dan bagaimana kita mencegahnya?
Jawaban:
Hal pertama yang terlintas dalam pikiran adalah, karena mereka cukup besar untuk menumbuhkan beberapa lapisan birokrasi. Ini berarti, antara lain, bahwa Anda tidak lagi memiliki coders yang benar-benar pintar yang bertanggung jawab atas proses perekrutan, yang berarti mereka kehilangan kemampuan mereka untuk menyingkirkan programmer potensial dan orang-orang QA yang tidak kompeten. Yang mengarah ke kode buruk yang ditulis dan membuatnya menjadi produksi, dan kita semua tahu apa yang terjadi selanjutnya ...
sumber
Karena programmer tidak diperintahkan untuk menguji untuk itu dan budaya perusahaan yang menghancurkan tidak memberi mereka cukup waktu untuk memiliki rasa etika profesional mereka masuk dan menuntut beberapa minggu lagi untuk menguji kerentanan keamanan. Atau untuk menegaskan bahwa mereka aman dari awal.
Karena bos tidak ingin menghabiskan beberapa minggu ekstra untuk menguji masalah keamanan untuk ... alasan apa pun. Bonus tambahan di akhir tahun. Muncul Johnson dari departemen berikutnya. Hak membual. Tugas kepada perusahaan. Kemalasan. Ketidakpercayaan terhadap saran bawahan.
Karena bos besar menuntut lebih banyak keuntungan dan mempromosikan Johnson lebih dari Bob karena angka-angkanya terlihat lebih baik daripada menuntut produk yang lebih baik. Karena kualitas dan keamanan adalah nilai yang sulit ditampilkan pada spreadsheet. Karena korporasi ada untuk menghasilkan uang.
Hal-hal seperti ini adalah masalah sistematis. Intinya adalah "karena mereka bodoh".
Sunting Programmer dapat menghindari menjadi kambing kurban dengan, setelah melihat kekurangan, membawa masalah kepada bos mereka. Dia akan melakukan hal yang benar dan membuat rencana untuk memperbaikinya, atau memberitahu Anda untuk mengabaikannya. Jika dia tidak memperbaikinya, buat itu resmi, tanyakan tentang hal itu melalui email. Gunakan kata kunci yang terkait dengan masalah ini, seperti "kerentanan", "injeksi", "pelanggaran keamanan" dalam kasus ini. Hal-hal yang diambil oleh pencarian email.
Ini melewati uang. Sekarang tanggung jawab bos Anda. Jika itu penting, seperti orang-orang akan mati ketika hal ini gagal, lanjutkan kepalanya dan bawa masalah itu kepada bosnya. Anda bisa dipecat hanya karena meloloskan uang, dan Anda masih bisa dipecat bahkan jika Anda meneruskannya, tetapi itu adalah hal yang tepat untuk dilakukan. Tidak benar benar memperbaiki masalah, tapi tutup.
sumber
Semakin besar korporasi, semakin jauh para pembuat keputusan dari tanggung jawab kehidupan nyata.
Mengetahui bagaimana perusahaan bekerja, desain situs mungkin diserahkan kepada beberapa perusahaan konsultan yang dipilih berdasarkan harga terendah per pengembang. Perusahaan itu pada gilirannya akan mempekerjakan sekelompok orang secara acak dengan kriteria yang sama, dengan rata-rata orang tetap di proyek selama tidak lebih dari 3 bulan sebelum diputar ke hal lain.
sumber
Bagaimana orang melakukan kesalahan? Melalui kemalasan, kurangnya pengetahuan, kurangnya keahlian, kebijaksanaan, kurangnya proses, dll. Bagaimana kita mencegah kesalahan? Melalui ketekunan, pengalaman, perlindungan, dll. Situasi ini tidak berbeda secara kategoris dari ribuan kesalahan kecil yang dibuat oleh setiap programmer; hanya berbeda skalanya.
Apa yang bisa kita pelajari dari ini? Tidak banyak.
sumber
Satu penjelasan yang mungkin adalah daftar prioritas miring. Banyak perusahaan tempat saya bekerja lebih mementingkan pengiriman produk daripada kualitas produk / kode yang mereka produksi. Efek ini berlipat ganda karena tidak hanya para programmer yang tergesa-gesa menyelesaikannya, tetapi juga departemen QA (jika mereka memilikinya). Saya juga memperhatikan bahwa sikap ini bertepatan dengan mendorong ke produk berikutnya sebelum yang sebelumnya selesai, memperparah masalah lebih jauh.
Satu penyebut yang umum di masing-masing perusahaan ini adalah manajemen non-teknis. Manajer Proyek, Manajer TI, dan Manajer Produk, pada dasarnya semua orang dengan suara dalam apa yang tim pengembangan bekerja, semuanya non-teknis dan tidak mengerti pentingnya menghasilkan kode yang berkualitas tinggi, aman, dan aman. Ini adalah sesuatu yang saya cari ketika saya wawancara dengan perusahaan sekarang. Siapa yang memegang pemerintahan pada suaka, narapidana atau dokter?
Saya tidak akan terkejut jika sesuatu yang serupa, diperparah oleh birokrasi yang mendalam, merupakan faktor yang berkontribusi pada Sony dan masalah keamanan perusahaan lainnya.
sumber
Orang-orang bekerja di perusahaan besar, dan orang-orang akan membuat kesalahan, karena itu karena ketidaktahuan, kemalasan, prosedur yang buruk, dokumentasi yang buruk, dll. Ukuran perusahaan hanya akan memengaruhi kesalahan karena ada lebih banyak sumber kesalahan atau kesalahan.
sumber