Medan berlabel nombor akaun tidak secara automatik menjadi rujukan awam, dan label itu bukan ujian. Ujiannya ialah apa yang dibenarkan oleh pemilikan: jika mengetahui nombor itu mendaftar masuk seseorang, memuat turun profil sambungan atau memberi kuasa kepada peranti, nombor itu ialah kelayakan dengan kitaran hayat. Saya menjalankan lima semakan di bawah setiap kali perkhidmatan mengeluarkan identiti berangka dan menyebutnya tidak berbahaya. Setiap satu menghasilkan satu baris dalam rekod pendek, dan rekod itu ialah hasil serahan, bukan keputusan tentang produk.

Senaraikan apa yang sebenarnya diberikan oleh pemilikan

Tulis setiap tindakan yang dibuka oleh nombor itu secara berasingan. Mendaftar masuk ke portal, mengambil fail konfigurasi, memberi kuasa kepada peranti baharu dan menyediakan log masuk terowong yang diterima ialah kuasa berbeza, dan perkhidmatan boleh melaksanakan satu tanpa yang lain. Portal yang menerima nombor itu sebagai satu-satunya medan tidak memberitahu apa-apa tentang bagaimana terowong mengesahkan rakan sejawatnya kemudian atau bagaimana kunci trafik diterbitkan.

Model umum mudah dinyatakan: kelayakan bearer ialah kelayakan yang boleh digunakan pemegangnya tanpa membuktikan pemilikan kunci kriptografi berasingan, dan itulah perbezaan yang RFC 6750 tarik untuk token. Ini perbandingan, bukan dakwaan bahawa perkhidmatan berasaskan nombor melaksanakan OAuth. Jika pemegang tidak memerlukan apa-apa lagi, anggap nombor itu sebagai rahsia bearer dan klasifikasikan baki reka bentuk sewajarnya.

Lindunginya sebagai rahsia, bukan sebagai rujukan

Penyimpanan mengikut klasifikasi. Nilai yang mendaftar masuk berada dalam pengurus kata laluan, bukan tangkapan skrin, sejarah papan keratan, mesej sembang atau nota pelayar. Tangkapan skrin ialah kebocoran biasa: nombornya pendek dan kelihatan tidak berbahaya, jadi ia berakhir dalam urutan sokongan yang hidup lebih lama daripada peranti asalnya.

Phishing ialah mod kegagalan yang lain, dan ia tidak peduli betapa rawaknya nombor itu. Penipu yang mahukan nilai itu akan meminta anda menampalnya ke dalam borang, dan kelayakan yang tidak pernah tamat tempoh serta tiada faktor kedua wajar diusahakan. Capai laluan daftar masuk melalui penanda buku atau alamat yang diketahui, bukan melalui pautan dalam mesej yang juga meminta nombor itu.

Anggap bahan pemulihan sebagai sebahagian daripada rahsia. Jika pengendali juga mengeluarkan kod pemulihan, PIN atau alamat e-mel yang boleh menetapkan semula akaun, itu kelayakan berasingan dengan keperluan perlindungan yang sama. Satu saluran tetapan semula yang tidak dilindungi menjadikan setiap kawalan lain sebagai hiasan.

Semak ketahanan tekaan dan had kadar bersama-sama

Panjang hanya bermakna di samping kaedah penjanaan. Nombor panjang daripada urutan yang boleh diramal lebih lemah daripada nilai pendek daripada penjana kriptografi, dan bilangan digit yang mengagumkan tidak membuktikan ketidakbolehramalan. Tanya bagaimana nilai itu dijana sebelum menaakul betapa sukarnya menekanya.

Ketahanan tekaan sahaja juga tidak bertahan dengan kadar percubaan tanpa had. Kawalan yang penting ialah yang dilaksanakan pengendali: pembilang percubaan gagal, penguncian, pengehadan mengikut sumber dan sama ada nombor salah boleh dibezakan daripada yang tidak wujud. Jika perkhidmatan menyokongnya, satu percubaan gagal menunjukkan rupa ralat dan sama ada pembilang cuba semula muncul:

# one attempt, then read the response and any counter or delay
# do not script repeated guesses against a live account
curl -i -X POST https://portal.example.invalid/login -d "account=000000000000"

Rekodkan apa yang didedahkan oleh respons. Ralat berasingan untuk akaun tidak dikenali ialah oracle penghitungan walaupun nombor itu tidak boleh diteka, dan penemuan itu tergolong dalam rekod, sama ada anda boleh membetulkannya dari pihak klien atau tidak.

Rancang putaran dan pembatalan sebelum diperlukan

Cari proses yang disokong untuk nombor yang hilang atau terdedah dan tuliskan semasa semuanya berfungsi. Bolehkah kelayakan akaun diganti sama sekali? Adakah penggantian membatalkan peranti yang telah didaftarkan, sesi aktif atau konfigurasi yang dimuat turun? Bahan pemulihan apa yang diperlukan oleh proses itu? Perkhidmatan tanpa pergantungan e-mel boleh memindahkan lebih banyak tanggungjawab pemulihan kepada pengguna, yang menjadikan prosedur itu lebih penting, bukan kurang.

Pisahkan penggantian akaun daripada pembatalan kelayakan. Jika nombor itu memberi kuasa memuat turun kunci, sijil atau profil, menggantikan nombor itu boleh membiarkan bahan yang dimuat turun itu sah, dan membatalkan bahan yang dimuat turun itu boleh menjadi operasi lain dengan pemilik lain. Jangan andaikan satu medan yang berubah menamatkan setiap sambungan; semak model sebenar pengendali dan catat di mana anda mengesahkannya.

Dokumenkan keputusan dan semak semula kemudian

Simpan rekod satu halaman bagi setiap perkhidmatan: kuasa apa yang diberikan nombor itu, di mana ia disimpan, siapa yang boleh menetapkannya semula, bukti penggunaan apa yang wujud dan apa yang akan anda lakukan pada jam pertama selepas pendedahan. Rekod itulah yang menukar perdebatan tentang istilah menjadi keputusan yang boleh diaudit oleh seseorang.

Dakwaan privasi memerlukan skopnya sendiri. Nombor yang dijana secara rawak masih boleh menjadi pengecam stabil yang menghubungkan peristiwa akaun sepanjang masa; ketidakbolehramalan bukanlah ketidakterpautan, dan tiada sifat yang mengatakan apa-apa tentang metadata rangkaian yang disimpan. Bandingkan reka bentuk lengkap dan bukannya mengira medan pada skrin daftar masuk.

Sebelum anda merekodkannya:

  • Setiap kuasa yang diberikan nombor itu disenaraikan, termasuk muat turun dan kebenaran peranti.
  • Saluran penyimpanan dan pemulihan dilindungi dengan standard yang sama seperti nombor itu sendiri.
  • Kaedah penjanaan dan had kadar diketahui, bukan diandaikan daripada panjang.
  • Terdapat prosedur penggantian dan prosedur pembatalan, dan anda tahu mana membatalkan mana.
  • Rekod menyatakan siapa yang boleh menetapkan semula nilai itu dan bukti apa yang tinggal selepas penggunaan.

Artikel berkaitan