Bagaimana perusahaan besar melakukan kesalahan pemula yang meninggalkan celah keamanan? [Tutup]

15

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?

richard
sumber
Pertanyaan ini belum mengundang jawaban konstruktif berdasarkan fakta dan referensi: ini adalah daftar berbagai spekulasi tentang seberapa buruk perusahaan Sony. Lihat bilah samping pertanyaan terkait untuk beberapa pertanyaan tentang langkah-langkah untuk menangani injeksi SQL, QA, dan keamanan. (Permintaan maaf untuk menghapus penghitungan suara dekat: ada 3 suara tutup "tidak konstruktif" ketika saya secara tidak sengaja menutupnya karena alasan yang salah)
Komentator: komentar dimaksudkan untuk mencari klarifikasi, bukan untuk diskusi panjang. Jika Anda ingin mendiskusikan pertanyaan ini dengan orang lain, silakan gunakan obrolan . Lihat FAQ untuk informasi lebih lanjut.
4
@Ark Aneh, itu telah mengumpulkan beberapa jawaban konstruktif liar, yang mungkin sangat dekat dengan sasaran. Yang mengatakan, pertanyaan yang lebih baik adalah, "mengapa tidak ada undang-undang yang berlaku untuk menghukum perilaku sembrono dalam perusahaan besar seperti itu?"
Konrad Rudolph
3
Agak aneh bahwa pertanyaan ini ditutup kembali. Keras. Lagi.
richard

Jawaban:

24

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 ...

Mason Wheeler
sumber
3
Saya pikir Anda memukul kepala dengan birokrasi, tetapi ada juga masalah lain yang muncul darinya. Jika Anda memiliki pengembang cerdas yang menemukan masalah signifikan, diperlukan tindakan Allah untuk mendapatkan persetujuan untuk mengerjakan perbaikan, memeriksanya, dan memindahkannya ke produksi. Yang diperlukan hanyalah satu orang dalam birokrasi untuk berpikir bahwa risiko membuat perubahan (keterlambatan proyek lain, kesalahan produksi, dll.) Lebih besar daripada risiko tidak melakukan perubahan (siapa yang bisa meretas perusahaan sebesar ini?).
Mayo
18

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.

Philip
sumber
3
Pilihan saya untuk Anda sebagai CEO perusahaan !!!
Wajih
3
@Cheshire Itu bukan "akal sehat" ketika pertama kali dilakukan. Orang pada dasarnya tidak memikirkan keamanan; mereka harus belajar dan terus-menerus diingatkan bahwa ada brengsek di luar sana yang hanya ada untuk mengambil data Anda.
Michael Todd
3
@Michael Todd: Tapi ini bukan tahun 1996 lagi. Ini adalah akal sehat sekarang, dan tidak ada alasan untuk itu.
richard
1
@Cheshire Setuju. Dan berkembang dengan mempertimbangkan keamanan jauh lebih baik daripada menguji untuk itu sesudahnya.
Philip
1
@ Richard DesLonde: Jika itu masuk akal, saya pikir saya akan melihat lebih sedikit orang yang mengatakan untuk melakukannya dengan benar.
David Thornley
12

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.

vartec
sumber
4
+1 untuk outsourcing. Saya tidak memikirkan itu. Ketika Anda lepas pantai, para pengembang mengembangkan persis apa yang Anda spec keluar, tanpa pertanyaan, jadi mungkin keamanan tidak di spec.
richard
1
@ Richard DesLonde: Saya melihat Anda seorang yang optimis.
David Thornley
@ David Thornley: Tidak, baru saja berpengalaman. :-)
richard
2
@ Richard DesLonde: Dan semua proyek offshored Anda datang untuk melakukan semua yang dikatakan oleh spec? Tidak buruk.
David Thornley
1
@ David Thornley: LOL Sama sekali tidak. Itu bukan bagian yang saya tekankan. Anda pasti benar, itu agak terlalu optimis. :-)
richard
4

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.

Rein Henrichs
sumber
Saya pikir ini berbeda. Sony menghasilkan miliaran dolar, tetapi mereka tidak bisa mendapatkan hal-hal dasar ini dengan benar? Ada yang salah dengan itu. Dan itu bukan hanya Sony. Banyak perusahaan besar telah diretas oleh injeksi SQL baru-baru ini.
richard
1
Tidak, ini benar-benar tidak berbeda. Keputusan dibuat oleh orang, bukan oleh perusahaan.
Rein Henrichs
@ Richard: Mereka selalu memiliki catatan keamanan yang buruk. Ini adalah perusahaan yang sama yang menemukan rootkit Sony, ingat?
Mason Wheeler
2

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.

Jack M.
sumber
0

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.

Marcelo
sumber