Hacks Internet: serangan kekerasan dan bagaimana untuk menghentikannya
Serangan kuasa kasar, yang juga dikenali sebagai carian utama yang lengkap, pada dasarnya adalah permainan meneka dan boleh dilaksanakan terhadap sebarang jenis sistem pengesahan.
Kekunci enkripsi sangat terdedah kepada serangan kekerasan, kerana tidak ada cara mudah untuk mengehadkan bilangan tekaan penyerang boleh membuatnya retak. Oleh itu, ia adalah mungkin untuk terus memasukan setiap kata laluan yang mungkin sehingga yang betul terjadi.
Kod pasaran mudah
Panjang kata laluan dan kerumitan menjadikan kita dapat mengira berapa banyak yang ditebak yang diperlukan untuk memecahkannya.
Sebagai contoh, kod pintu empat angka biasa akan mempunyai 10,000 kombinasi yang berbeza, dari 0000 hingga 9999. Mudah untuk mengira bahawa jika kata laluan dimasukkan secara rawak, kod pintu yang betul mempunyai peluang 50% untuk ditebak dalam 5,000 percubaan.
Walaupun ia mungkin suram untuk memasukkan begitu banyak kunci yang berbeza untuk manusia, kita boleh membina lengan robot kecil untuk melakukannya untuk kita, atau bahkan mencari cara untuk memasukkan kod secara elektronik. Jika ia mengambil lengan robot kecil kami satu saat untuk memasuki kod, kami boleh membuka pintu sedemikian dalam masa 167 minit-kurang daripada tiga jam.
Mengehadkan bilangan petikan yang dibenarkan untuk kata laluan.
Membuat sistem lebih selamat dengan mengehadkan bilangan tekaan
Terdapat beberapa cara untuk menjadikan pintu yang disebutkan di atas lebih selamat. Sebagai contoh, kita boleh membenarkan tiga teka-teki sebelum pembaca kod pintu terkunci di dalam kotak yang memerlukan kunci fizikal untuk dibuka. Kemungkinan betul meneka kod pintu yang betul kemudian akan dikurangkan kepada 0.3%, jumlah yang cukup kecil dengan harapan dapat menanggalkan penyerang.
Kad bank sering menggunakan mekanisme ini; selepas beberapa percubaan gagal, ATM akan mengekalkan kad pengguna.
Kad SIM telefon juga sering hanya membenarkan bilangan tekaan kata laluan yang terhad, selepas itu PIN Kunci Buka Kunci (PUK) yang lebih panjang diperlukan untuk mengakses kad lagi.
Kelemahan ini adalah kesulitan. Sistem kod laluan sekunder akan membuat kunci pintu, kad bank, atau telefon tidak dapat digunakan untuk jangka waktu tertentu. Juga, jika PUK tidak disimpan dengan selamat, ia boleh menimbulkan risiko keselamatan yang sepenuhnya baru.
Sistem alternatif adalah hanya membenarkan sebilangan kata laluan meneka per minit. Jika anda hanya boleh cuba membuka kunci pintu yang disebut sebelum ini seminit, sebagai contoh, ia akan mengambil masa sehingga 167 jam untuk membuka pintu. Itu hampir tepat seminggu, dan kemungkinan besar untuk membuat penyerang tidak mengganggu-atau cukup lama untuk pemilik yang sah untuk mengesan serangan.
Tiada apa-apa yang boleh menghadkan bilangan tekaan untuk kunci penyulitan
Mengehadkan percubaan kata laluan hanya boleh digunakan untuk peranti atau perkhidmatan dalam talian, bagaimanapun. Sekiranya penyerang mempunyai akses kepada fail yang disulitkan, atau penyerang telah memintas komunikasi anda yang disulitkan, tidak ada yang dapat membatasi bilangan tekaan yang dapat mereka buat.
Satu-satunya pilihan dalam kes tersebut ialah untuk meningkatkan panjang kod laluan, menjadikannya lebih selamat. Untuk setiap digit yang ditambahkan pada kata laluan, ia menjadi sepuluh kali lebih banyak untuk meneka. Kod pintu enam angka, misalnya, akan mengambil masa hampir 12 hari untuk retak pada satu tangkapan sesaat.
Membuat kod laluan lebih lama datang pada kos, walaupun, ketika mereka menjadi semakin sulit untuk diingat. Dan apabila ia meneka dengan tulen, komputer dengan mudah dapat meneka satu bilion nombor sesaat, jadi kod laluan perlu sangat panjang. Kod laluan 18 angka akan mengambil masa lebih setahun untuk meneka komputer, tetapi bolehkah anda mengingati kod yang panjang?
Kerumitan adalah sama pentingnya dengan panjang
Membenarkan kod laluan lebih kompleks meningkatkan keselamatan. Sekiranya kita hanya membenarkan angka, hanya terdapat sepuluh pos yang mungkin satu digit (0-9). Selanjutnya membolehkan huruf kecil meningkatkan ini kepada 36 entri setiap digit (0-9, a-z). Menambah huruf besar akan meningkat kepada 62 entri setiap digit (0-9, a-z, A-Z).
Menggunakan jadual Unicode asal (aksara watak Latin) akan meningkatkan lagi setiap digit kepada 95 penyertaan yang mungkin. Membolehkan skrip lain, seperti bahasa Arab atau Greek, dengan cepat meningkatkan jumlah ini lebih jauh.
Terdapat lebih daripada 120,000 aksara, simbol, dan emoji dalam set Unicode semasa-semuanya boleh digunakan untuk kata laluan yang baik. Hanya menggunakan mana-mana dua aksara itu bersama-sama menghasilkan kata laluan dengan lebih daripada 14 bilion kemungkinan yang berbeza. Menambah satu pertiga menjadikannya satu peluang quadrillion.
Sekiranya kita menganggap sebuah komputer boleh meneka satu bilion kata laluan sesaat, ia akan mengambil alih sejuta saat untuk mencari kata laluan tiga aksara menggunakan set Unicode-kira-kira 12 hari. Membuat kata laluan lebih rumit sama kuatnya menjadikannya lebih lama, tetapi pada umumnya lebih mudah diingati.
Manusia tidak mampu menjadi rawak.
Rawak adalah penting, tetapi manusia tidak rawak
Pada hakikatnya, kata laluan jarang sekali rawak. Manusia secara sistematik gagal pada datang dengan kata laluan yang benar-benar rawak, membuat beberapa variasi serangan kekerasan brute feasible.
Sebagai contoh, kami boleh memilih kata-kata popular tunggal apabila diminta untuk membuat kata laluan, mengurangkan kerumitan kata laluan kami dengan sangat. Walaupun terdapat 300 juta kombinasi yang mungkin untuk kata laluan enam huruf, walaupun kita hanya membenarkan huruf kecil, penyerang akan bermula dengan kata-kata bahasa Inggeris yang paling biasa digunakan, yang sering menghasilkan hasil. Serangan sedemikian dipanggil a serangan kamus.
Serangan kamus sering digabungkan dengan pengetahuan kata laluan yang paling biasa digunakan. Kami tahu populariti kata laluan tertentu dari pelanggaran kata laluan sebelumnya. Kata laluan 1234, sebagai contoh, membuka lebih 10% daripada semua telefon. Kata laluan 1111 dan 0000, tambahan 8%.
Memandangkan tiga percubaan untuk memecahkan kata laluan, dalam teori, terdapat 0.3% daripada kata laluan retak, tetapi dalam praktiknya, ia lebih dekat kepada 18%.
Ia harus meningkatkan kerumitan kata laluan apabila huruf tertentu diganti dengan aksara khusus, seperti “Pa $$ w0rd.” Walau bagaimanapun, cara di mana manusia menggantikan huruf ini cukup diramalkan dan ia tidak menambah banyak rawak. Ia mudah untuk meneka pengganti yang popular, seperti e -> 3, a -> @, o -> 0 atau s -> $, kemudian semak ini. Ini sering dirujuk sebagai penggantian aksara.
Sekiranya komputer atau penyerang mempunyai peluang untuk belajar tentang pengguna, ia dapat mengurangkan jumlah percubaan yang diperlukan untuk memecahkan kata laluan mereka. Ramai orang menambah tarikh lahir atau tahun kelahiran dengan kata laluan. Orang lain menggunakan nama pasangan, anak, atau haiwan kesayangannya. Sesetengah mungkin memanfaatkan aksara tertentu, atau hanya memasukkan URL laman web yang menggunakan kata laluan untuk perkara-perkara yang dapat ditebak oleh penyerang.
Formula biasa untuk kata laluan adalah perkataan yang bermula dengan huruf besar, diikuti dengan nombor, dan berakhir dengan aksara khas, EG Word1111 !. Sekiranya penyerang memperoleh pengetahuan tentang sasarannya, mereka mungkin menggunakan corak ini tetapi menggantikan kandungan dengan maklumat yang berkaitan dengan mangsa. Ini dipanggil pemeriksaan corak.
Perlindungan terbaik ialah kata laluan yang rawak
Mengehadkan bilangan tangkapan sesaat, atau jumlah tangkapan sebelum akaun dikunci, pergi jauh untuk melindungi anda daripada serangan kekerasan.
Dengan kekunci penyulitan sedemikian batasan sedemikian tidak mungkin, jadi cara terbaik untuk mempertahankan serangan serangan brute adalah dengan menggunakan penjana kata laluan rawak, sama ada sebagai alat mandiri atau sebagai sebahagian daripada pengurus kata laluan. Anda juga boleh menggunakan teknik Diceware.