Pertanyaan mengatakan itu semua. Kami sedang merancang sistem di mana keamanan sangat penting. Salah satu ide yang dimiliki seseorang adalah memaksa pengguna untuk mengganti kata sandi setiap 3 bulan. Menurut saya, ini lebih aman karena kata sandi sering diubah dan juga memaksa pengguna kami untuk mengingat pernah mengubah kata sandi dan membuatnya lebih mungkin bahwa mereka hanya akan menuliskannya di suatu tempat untuk membantu mengingat.
Dalam ide yang sama adalah sangat baik untuk memaksa pengguna menggunakan kata sandi yang sangat sulit ditebak. Paksa mereka menggunakan?% &% Dan huruf kecil besar. Saya tahu ini cukup merepotkan untuk membuat kata sandi seperti itu dan kemudian mengingatnya.
Sekali lagi kami tidak ingin ada yang menggunakan 12345.
Begitu. Apakah ada whitepaper tentang hal ini? Latihan yang bagus?
Saya berbicara tentang situs web yang dibuat dengan PHP. MySQL di lingkungan lampu jika itu mengubah apa pun.
sumber
Jawaban:
Saya pikir saya mungkin menjadi minoritas dalam hal ini (berdasarkan pengalaman saya yang terbatas dalam berurusan dengan departemen TI di sekolah dan tempat kerja), tetapi saya pikir wajib, kebijakan perubahan kata sandi berbasis waktu tidak berharga terbaik, dan berbahaya paling buruk. Orang-orang cenderung sangat buruk dalam memilih kata sandi yang baik dan merahasiakannya. Kebijakan kedaluwarsa kata sandi dirancang untuk mengurangi ini dengan membatasi jumlah waktu setiap kata sandi dapat di-crack / direkayasa sosial / dicuri; Namun, mereka gagal mencapai ini dalam praktiknya, terutama karena mereka memaksa pengguna untuk mempelajari kembali kata sandi mereka secara terus menerus. Dengan mempersulit pengguna untuk memasukkan kata sandi mereka ke memori, Anda akhirnya menyebabkan banyak dari mereka memilih kata sandi yang lebih lemah, dan / atau menuliskan kata sandi mereka di suatu tempat di mana mata yang mengintip dapat menemukannya.
Lebih lanjut, ketika dipaksa untuk mengubah kata sandi mereka secara teratur, banyak pengguna akan memilih kata sandi yang mengikuti pola yang sangat mudah dikenali, seperti
[base string][digit]
. Katakanlah seorang pengguna ingin menggunakan nama kucing mereka Fluffy sebagai kata sandi mereka. Mereka mungkin mulai dengan passwordfluffy
, kemudian mengubahnya untukfluffy1
,fluffy2
,fluffy3
dan sebagainya. Dalam hal ini, kebijakan tersebut tidak benar-benar membantu keamanan; bahkan jika pengguna memilih string dasar yang lebih aman daripadafluffy
, dan bahkan jika mereka menyimpan kata sandinya dengan aman, karakter akhiran tunggal yang berubah setiap beberapa bulan tidak banyak mengurangi mitigasi cracking atau serangan rekayasa sosial.Lihat juga: Kedaluwarsa Kata Sandi Dianggap Berbahaya , sebuah artikel pendek (tidak ditulis oleh saya) yang saya pikir memberikan pengantar yang baik untuk masalah ini.
sumber
fluffy1
harus memiliki hash yang sama sekali berbeda darifluffy2
. Cukup mudah untuk mencegah pengguna menggunakan kembali kata sandi yang sama persis , tetapi saya pikir hanya itu yang dapat Anda lakukan.Organisasi besar saya (15000+ pengguna) menerapkan "perubahan kata sandi" setiap 120 hari pada musim gugur 2009. Ini adalah sakit kepala TI yang sangat besar dan pemborosan sumber daya dukungan. Setiap kali 120 hari bergulir, kami memiliki ribuan pengguna yang dipaksa untuk mengubah kata sandi mereka .... yang banyak di antara mereka salah dan mengunci akun mereka .... atau lupa pada hari berikutnya. Helpdesk kami dibanjiri dengan panggilan kata sandi meskipun kami berusaha menjadikan sebanyak mungkin swalayan.
Jika Anda ingin pengguna / pelanggan membenci Anda .... dan staf TI garis depan Anda membakar Anda di setiap kesempatan mereka mendapatkan ... menerapkan perubahan kata sandi.
Kebijakan perubahan kata sandi adalah kotak centang di beberapa Manajer TI cara memesan di suatu tempat ... dan itu ditulis 15 tahun yang lalu. Tidak ada seorang pun di parit yang benar-benar menerapkan atau mendukung kebijakan akan pernah memberi tahu Anda itu ide yang baik.
Saya berdebat di sini untuk "pass phrase", bukan kata sandi .... banyak hal baik yang berhasil ... cahaya di ujung terowongan itu adalah kereta yang melaju. :)
Frasa sandi merupakan string panjang yang hampir tidak dapat dilewati yang sangat mudah diingat seperti, "MyCatIsFromSpainAndICallHimElGato". Atau mungkin satu baris dari puisi atau lagu.
Jika Anda ingin membuatnya sangat sulit untuk retak .... mengacaukan kasus ini, tambahkan beberapa tanda baca, ubah beberapa tanda menjadi ells, ohs menjadi nol, menjadi @, dll ... Tapi tetap ingat ... . Itulah kuncinya. Bahkan ada cara untuk mengambilnya sehingga mudah mengalir dari jari-jari Anda ke keyboard .... sehingga Anda tidak terpental di antara kedua tangan atau dengan SHIFT dan tanda baca aneh.
Begitu...
Mat
EDIT: 2011/08/24 XKCD setuju dan mengatakan itu lebih baik daripada aku.
sumber
Tidak. Pendapat pribadi saya adalah bahwa itu tidak perlu dan bahkan kontra-produktif . Saya mengoceh di blog saya, tetapi Anda dapat memburunya jika Anda tertarik.
Singkatnya, ada dua alasan:
1. Memaksa pengguna untuk terus mengubah kata sandi mereka mengarah ke kata sandi yang buruk.
Tidak akan ada kekurangan bukti anekdotal mengenai hal ini, tetapi masuk akal bahwa jika saya dipaksa untuk mengingat hal baru setiap x hari, saya akan membuat hal-hal itu mudah diingat, dan mungkin berhubungan satu sama lain.
Pengguna jauh lebih cenderung memilih kata sandi "tebak-tebakan" seperti "Jan2010" atau "Kata Sandi05" jika mereka tahu itu harus segera diubah. Menegakkan kebijakan ketat pada karakter cenderung hanya menghasilkan tanda seru tambahan atau nama yang dieja sepenuhnya daripada singkatan. Ada perbedaan besar antara kata sandi yang rumit secara teknis dan kata sandi yang tidak dapat ditebak.
2. Memaksa perubahan kata sandi biasa tidak mencegah serangan, itu hanya mengurangi risiko (dan tidak banyak)
Pikirkan tentang hal itu - jika kata sandi Anda ditebak atau ditemukan, berapa lama penyerang menggunakan informasi itu? Tempatkan diri Anda pada posisi penyerang. Anda baru saja menemukan kata sandi. Apakah Anda tidak masuk dan mengekstraksi setiap bit informasi yang Anda bisa langsung kalau-kalau ada yang tahu? Dalam waktu 30 hari, Anda sudah mendapatkan semua yang Anda inginkan.
Rekomendasi saya:
sumber
Dari sudut pandang pengguna, harus mengubah kata sandi saya sangat merepotkan. Saya benar-benar benci harus melakukannya, dan hanya akan dengan enggan menggunakan situs yang benar-benar saya butuhkan jika mereka meminta saya untuk mengubah kata sandi saya.
Ada juga beberapa diskusi tentang apakah ini benar-benar praktik yang baik, karena beberapa orang akhirnya harus menuliskan kata sandi mereka untuk mengingatnya.
Anda dapat mengimplementasikan salah satu widget yang menunjukkan kepada orang-orang seberapa kuat (atau lemah) kata sandi mereka saat mereka mengisinya - saya menemukan itu menjadi (agak) berguna, meskipun saya tidak tahu apakah mereka benar-benar menghasilkan lebih kuat kata sandi.
sumber
Sebagai pengguna lingkungan kebijakan kata sandi yang sangat ketat ("kata sandi yang sangat sulit ditebak" dan kata sandi yang berubah), pendapat saya adalah hanya kata sandi yang diperlukan. Meskipun perlu sedikit waktu bagi pengguna Anda untuk terbiasa dengannya (khususnya jika mereka adalah pengguna jenis 12345) mereka harus dapat mengingat dan mengetiknya dengan mudah dalam waktu seminggu.
Namun, saya dapat memprediksi pengguna akhir yang tidak nyaman jika Anda memiliki kata sandi yang kuat DAN memaksa mereka untuk berubah.
sumber
Dari sudut pandang administrasi TI, pilihan terbaik Anda adalah menyelidiki kemungkinan membiarkan aplikasi Anda menggunakan kemampuan sistem masuk tunggal skema otentikasi yang ada yang digunakan pelanggan Anda. Jelas Active Directory adalah pemain besar, tetapi jika aplikasi Anda bekerja dengan kebijakan yang telah dikonfigurasikan oleh TI di tempat, Anda tidak perlu khawatir tentang menciptakan kembali roda.
Karena begitu banyak perdebatan muncul tentang apakah perubahan kata sandi yang dipaksakan atau tidak adalah ide yang baik (meskipun saya pikir itu nomor dua dari pertanyaan utama Anda), saya pikir Anda dapat menikmati beberapa ide & tautan di sini . Untuk sebagian besar situasi, jika Anda tidak akan menerapkan kompleksitas kata sandi & mengubah jadwal, Anda mungkin juga tidak memiliki kata sandi sama sekali - tetapi cara penerapannya (pelatihan, dukungan manajemen, dll.) Lebih penting daripada yang bisa saya tekankan.
sumber
Mengganti kata sandi seringkali dapat menyebabkan pengguna menuliskannya. Itu bukan ide yang buruk menurut Bruce Schneier ( http://www.schneier.com/blog/archives/2005/06/write_down_your.html ).
Saya bahkan berpendapat bahwa memiliki keamanan yang menghalangi kegunaan dapat kadang-kadang menjadi hal yang baik, hanya karena mengingatkan pengguna untuk bertindak aman. Misalnya, di bank tempat saya bekerja, banyak tindakan keamanan yang dilakukan adalah teater keamanan (misalnya pengenalan wajah di pintu, tetapi petugas keamanan akan membuka pintu untuk Anda jika pengakuan gagal). Meskipun langkah-langkah itu tidak meningkatkan keamanan sendiri, mereka selalu ada untuk mengingatkan kita bahwa keamanan adalah tempat penting di tempat kerja, bahwa ada sejumlah penebangan dan pemeriksaan yang sedang berlangsung, dan bahwa jika Anda ketahuan melakukan sesuatu yang "tidak aman" Anda akan bermasalah.
Tentu saja, ini berlaku untuk keamanan bagi karyawan bank, itu mungkin tidak berlaku untuk pengguna situs web Anda ...
sumber
Anda harus memaksa pengguna Anda untuk berubah setiap n hari jika kebijakan keamanan Anda mengharuskannya. Saya bekerja untuk sebuah agen Negara, dan ini adalah persyaratan yang diberlakukan dari kantor Auditor Negara. Saya tidak bisa berbuat apa-apa, jadi saya harus memaksakan perubahan.
Jika Anda tidak terikat oleh peraturan untuk memaksa perubahan kata sandi, jangan paksa mereka. Pastikan bahwa kata sandi yang diatur memenuhi persyaratan kompleksitas minimum tertentu. Panjang truf kompleksitas untuk sebagian besar sistem kata sandi, jadi standar variabel adalah yang terbaik menurut saya. Seperti:
Skema kompleksitas bawaan untuk hal-hal seperti Active Directory tidak mendukung sistem berjenjang seperti ini. Jika Anda membangun lingkungan perubahan kata sandi Anda sendiri, Anda dapat melakukan hal-hal seperti ini. Karena setiap penggunaan tombol shift meningkatkan kemungkinan peristiwa besar, kata sandi yang panjang dengan beberapa karakter lebih mungkin untuk menyebabkan peristiwa login yang gagal, terutama selama tahap pembelajaran. Jika Anda memiliki sistem penguncian akun, ini bisa menjadi masalah besar. Untuk orang yang menggunakan baris ke-3 dari puisi favorit mereka (63 karakter!) Sebagai frasa sandi mereka, tidak harus h @ x0r itu membuat entri cepat dan efisien.
Jika teknologi atau lingkungan risiko berubah secara signifikan dan kata sandi Anda sekarang tidak serumit seharusnya, lakukan cara untuk mengakhiri kata sandi selama periode waktu tertentu. Orang-orang akan menggerutu tentang perlunya, terutama jika Anda belum pernah memaksakan perubahan sebelumnya, tetapi itu akan membantu Anda mempertahankan postur keamanan Anda.
sumber
Sulit menebak kata sandi adalah hal yang baik. Menegakkan tingkat kompleksitas yang mengakibatkan pengguna lupa kata sandi mereka atau harus menuliskannya adalah hal yang buruk, karena keamanan yang diperoleh dari kompleksitas sepenuhnya hilang dalam proses. Dalam dunia yang ideal (yang sayangnya bukan tempat kita tinggal) harus ada keseimbangan antara kompleksitas dan kegunaan. Tentu saja orang yang berbeda akan melihat titik keseimbangan itu di tempat yang berbeda.
Logika di balik mengubah kata sandi secara teratur dalam X hari sedikit hilang pada saya. Alasan saya biasanya mendengar ini adalah untuk membatasi kegunaan dari kata sandi yang dicuri, yang saya jawab bahwa kerusakan nyata hampir pasti akan dilakukan dalam beberapa jam pertama pula. misalnya Fred "berkenalan" dengan kata sandi Mary. Kecuali jika itu terjadi pada waktu yang hampir bersamaan ketika Mary mengubah kata sandi itu, apa bedanya jika itu diubah besok atau bulan depan? Apakah benar-benar mungkin Fred akan menunggu satu atau dua minggu lagi sebelum menggunakan kata sandi (dengan asumsi itu memang maksudnya sejak lama)?
Jelas mengubah kata sandi jika ada alasan atau kecurigaan bahwa hal itu diperlukan adalah masalah lain.
sumber
Jika aplikasi membutuhkan tingkat keamanan yang tinggi, sudahkah Anda mempertimbangkan untuk menggunakan sesuatu seperti token SecurID? Ini berarti pengguna mendapatkan kata sandi baru setiap 60 detik; Anda tidak perlu khawatir tentang mereka menggunakan menuliskan kata sandi. Namun, ini membutuhkan biaya. Seberapa aman solusinya?
sumber
Saya pikir informasi untuk pengguna itu penting. Jelaskan kepada mereka cara membuat kata sandi dan betapa pentingnya tidak menggunakan kata sandi yang sama dua kali. Cara mudah untuk membuat kata sandi adalah dengan mengambil kalimat dan mengambil huruf pertama di setiap kata dan menambahkan beberapa angka.
Ex. Saya suka memerintah dunia = Iltrw99
Jangan memaksa mereka untuk mengubah kata sandi itu hanya akan membingungkan mereka.
sumber
Meskipun saya tidak setuju dengan perubahan kata sandi setiap tiga bulan, ini adalah persyaratan jika perusahaan Anda diperdagangkan secara publik, dan itu adalah bagian dari kepatuhan SOX. Catatan: Sarbanes-Oxley menyebalkan.
sumber
Sesuatu yang belum pernah saya lihat disebutkan adalah akses eksternal ke sumber daya.
Saya cenderung setuju bahwa jika Anda memilih kebijakan kata sandi yang masuk akal, kecuali seseorang menuliskannya, tidak ada yang akan menebak kata sandi itu.
Namun katakanlah Anda memiliki webmail yang dapat diakses di luar, sekarang Anda berpotensi memiliki pengguna mengetikkan kredensial mereka pada "PC lama" dan IMO yang meningkatkan risiko data bisnis Anda yang ditimbulkan oleh spyware / malware / trojan dan sebagainya yang dapat mengendus / mencuri kata sandi tersebut .
sumber
Jika orang menuliskan kata sandi sederhana, apa yang membuat Anda berpikir mereka tidak akan menuliskan kata sandi yang besar atau kata sandi yang sangat rumit. Apa yang dilakukan oleh perubahan kata sandi tambahan adalah pembersihan ID pengguna tidak lagi digunakan secara otomatis, dan memungkinkan setiap pengguna untuk memiliki beberapa tanggung jawab dalam semua ini. Orang akan menjadi orang, mencari jalan mudah untuk mencapai sesuatu; kata sandi berulang dan kata sandi yang diubah secara bertahap dapat dideteksi dan ditolak. Persyaratan kompleksitas dapat ditentukan, perubahan kata sandi yang dipaksakan juga dapat membuka mata pengguna non-TI untuk tanggung jawab mereka dalam semua ini. Sebagian besar pengguna yang mengeluh tentang perubahan kata sandi adalah orang yang malas yang berpura-pura mengubah kata sandi mereka seperti operasi jantung terbuka. Hentikan rengekan, bertanggung jawab, dan berhenti berusaha untuk menemukan jalan yang mudah,
sumber