"Jika kamu mau, aku bisa mengenkripsi kata sandi."
Beberapa pengembang yang telah secara eksplisit diinstruksikan untuk menggunakan kriptografi telah menggunakan enkripsi kata sandi Base64Ketika informasi tentang kebocoran data lain muncul di media, selalu membingungkan mengapa perusahaan menyimpan kata sandi pengguna dalam teks yang jelas, tidak melindungi API, atau membuat kesalahan mendasar lainnya. Apakah pelanggaran aturan keselamatan seperti itu mungkin terjadi di zaman kita?
Sebuah studi baru dari University of Bonn (Jerman) menunjukkan bahwa pengembang freelance secara default mematuhi praktik yang sangat tidak aman, kecuali pelanggan membutuhkan lebih banyak.
Para peneliti telah mengundang 260 pengembang Java di Freelancer.com untuk mengembangkan sistem pendaftaran untuk jejaring sosial imajiner, yang seharusnya dilakukan oleh pelanggan. Dari jumlah tersebut, hanya 43 yang menyetujui pesanan yang mencakup penggunaan teknologi Java, JSF, Hibernate, dan PostgreSQL.
Setengah dari pengembang menerima 100 euro untuk pekerjaan itu, dan setengah - 200 euro. Setengah dari masing-masing dari dua kelompok diperintahkan untuk menggunakan penyimpanan kata sandi yang aman, sementara yang lain tidak.
Meskipun sampelnya jelas kecil, perbedaannya sangat signifikan sehingga menunjukkan beberapa kecenderungan umum. Berikut adalah beberapa hasil penelitian:
- Di antara mereka yang tidak diberi instruksi, 15 dari 18 menyimpan kata sandi dalam teks yang jelas
- Tiga dari mereka yang dituduh menggunakan penyimpanan aman juga menyimpan kata sandi mereka dalam teks yang jelas.
- Programmer yang mengenkripsi kata sandi menggunakan metode yang tidak aman: 31 programmer menggunakan metode seperti Base64, MD5, SHA-1, dll untuk enkripsi.
- Hanya 12 freelancer yang menggunakan metode aman seperti bcrypt dan PBKDF2.
8 orang menggunakan Base64 untuk enkripsi
10 - MD5
1 - SHA-1
3 - 3DES
3 - AES
5 - SHA-256
1 - HMAC / SHA1
5 - PBKDF2
7 - Bcrypt
Tabel di bawah ini (bertambah dengan klik) menunjukkan hasil lengkap untuk setiap peserta: berapa hari dia harus menyelesaikan tugas, berapa banyak waktu yang dihabiskannya untuk mengimplementasikan keamanan, dan algoritma enkripsi apa yang dia terapkan. Di bagian atas tabel, mereka yang telah diberi instruksi langsung untuk mengenkripsi informasi. Peserta yang berani adalah mereka yang pertama kali mengirim solusi yang tidak aman, tetapi kemudian menerima instruksi tambahan untuk mengimplementasikan penyimpanan kata sandi yang aman.

Sebagian besar programmer tidak dapat menerapkan metode keamanan dasar, dan 17 dari 43 kode yang disalin dari situs web acak.
Hanya 15 pengembang yang menggunakan garam - string data yang diteruskan ke fungsi hash bersama dengan kata sandi, yang sangat menyulitkan kekuatan kasar.
Tabel (dapat diklik) menunjukkan data demografis dari peserta penelitian. Seperti yang Anda lihat, ini terutama laki-laki, usia rata-rata adalah 30 tahun, dari 11 negara (dalam dua kasus, negara tidak ditunjukkan)Kelompok bergaji rendah dan bergaji tinggi bekerja pada tingkat kualitas yang sama.
Secara umum, penelitian ini agak menyedihkan. Dapat diasumsikan bahwa kesadaran keselamatan dasar di antara para freelancer sangat rendah. Dari 18 peserta yang menerima instruksi khusus untuk menggunakan kriptografi, tiga memutuskan untuk menggunakan Base64 dan mengklaim, misalnya: "[Saya] mengenkripsi semuanya sehingga kata sandi tidak terlihat" dan "Sangat sulit untuk mendekripsi itu."
Mungkin perilaku ini hanya khusus untuk freelancer, dan anggota staf tanpa instruksi segera mencoba membuat keputusan yang aman? Studi ini tidak memberikan jawaban untuk pertanyaan ini.

