- Dikirim
- 17 September 2026 pukul 04.48 UTC
- Penulis
- Kamo
- Commit
- 357d3a0
Setiap kode singkat surat atau teks platform diperiksa tanpa hitungan: - POST / api / recover / email / verify-code mengambil kode 8- hex-character reset code ALONE dan cocokkan dengan setiap Reset rekening yang luar biasa, selama 30 menit. Sebuah pertandingan pada setiap account menjadi sesi pemulihan untuk account itu. - POST / api / recover / sms / verify: kode SMS 6- digit untuk nomor yang dikenal, 10 menit, tidak masuk hitungan. - POST / api / recover / questions / verify dan / seed / verify: jawaban keamanan (warna, kota) dan frasa benih, tidak masuk hitungan. - POST / api / keamanan / verify-email {userId, kode}: kode 6- digit, 24 jam, tidak ada sesi. Sukses pertama terjadi kunci login otomatis ke dalam akun. - POST / api / account / phone / verify: kode 6-digit membuktikan nomor telepon pemulihan baru, tidak masuk hitungan. - POST * * * * * * * * * * * * * * memiliki batas percobaan lima yang tidak pernah berlaku. Ini menulis hitungan dan kemudian melemparkan, aturan baku @ Transaksional menggulingkan menulis kembali, dan pengontrol sendiri transaksi adalah ditandai rollback -only. CodeTristLimiter (Redis, jendela tetap, dihitung sebelum perbandingan jadi tebakan paralel tidak dapat ras melewatinya): - 5 percobaan per jam per subjek: rekening, alamat diketik, nomor telepon, atau kode. Upaya yang menggunakan lima menghabiskan kode (baris reset ditandai digunakan, kode SMS dikonsumsi, kode pendaftaran dibatalkan, telepon - ganti kode dikonsumsi). Sebuah keberhasilan membersihkan subjek. - 30 upaya per jam per klien, di semua titik akhir. Hops pribadi dilewati, karena satu alamat proxy akan berdiri untuk semua orang. - 50 kode - hanya reset upaya per 10 menit, platform-lebar. Refusik adalah 429 dengan Retry-Setelah dan kembali Severseconds dalam tubuh. Limiter gagal terbuka pada outage Redis, seperti LoginThrottleService dan VerificationResendLimiter. Semua perbandingan sekarang terus-waktu. Kode reset terikat ke suatu akun ketika nama permintaan satu: verify- kode menerima 'email' (alamat diketik pada halaman reset, memecahkan jalan / email / memulai pemecahan itu) dan hanya memeriksa reset akun itu. Tidak diketahui alamat dihitung persis seperti yang dikenal. Bentuk code-only masih bekerja untuk halaman login yang belum ditempatkan namun (kamo- login mengirimkan alamat dalam set perubahan yang sama), di bawah anggaran platform-lebar. Metode yang menulis apa kode yang salah dihabiskan sekarang menyatakan noRollbackFor. MFA kode pemulihan sudah di belakang LoginThrottleGate dan 60 bit. Pengecekan telepon Vocalypse membatasi usaha sendiri. Tes: - CodeTristtLimiterTest: jendela, kelima ditandai terakhir, alamat dan anggaran platform, hashed kunci, fail-open. - RecloveryCodeTest: binding akun, dibelanjakan pada kelima, penolakan setelah, alamat tidak dikenal dihitung, code-only masih bekerja dan habis, SMS, jawaban keamanan. - * * * * * * * * * * * * * * - CodeTristWritesComplete Test: setiap metode melalui TranssactionInterceptor Real melakukan penolakannya. - Mencoba WireTest: alamat dan IP mencapai layanan; 429 pemetaan pada ketiga kontrol. 12 mutan (setiap batas, pengeluaran, pengikatan, anggaran dan noRollbackFor dihapus) masing-masing gagal tes.