- Dikirim
- 19 Agustus 2026 pukul 02.18 UTC
- Penulis
- kamo
- Commit
- f55a95c
KToken tidak bisa memverifikasi token nyata. Empat ids yang dibawanya adalah in64s, dan Java signer (kamo- shared-library KToken # canonicForMac) menambahkan masing-masing sebagai 'long' mentah, jadi semua 19 digit masuk ke MaC material. Kelas ini membaca mereka dengan Nomor (), yang putaran masa lalu 2 ^ 53, dan setiap setter kemudian diterapkan 'v melepas 124; 0' -- pemotongan 32- bit di atas pembulatan. 1168485648209608710 keluar sebagai integer kecil, HMAC yang dihitung ulang tidak cocok salah satu server ditandatangani, dan parseAndVerifyCookie kembali null: sebuah token valid dibaca sebagai ditempa. Ini hanya pernah setuju dengan dirinya sendiri, pada ID cukup kecil untuk mewakili. ID sekarang sendiri string digit cookie, sehingga material cocok signer byte untuk byte, dan divalidasi oleh bentuk daripada Number (), yang akan mengalahkan titik. Panjangnya tetap sebuah angka -- epoch detik adalah ~ 1.8e9 dan tidak dalam bahaya. Tidak ada panggilan parseAndVerifyCookie hari ini, di salah satu dari tiga aplikasi berikutnya; cookie adalah diteruskan ke layanan verbatim. Jadi ini perbaikan sebuah ranjau darat daripada outage - tapi itu adalah ranjau darat di jalur auth, dimana kegagalan akan terlihat seperti login yang ditolak daripada bulatan serangga. Tes baru telah terbukti bersama: 4 dari 6 kegagalan terhadap implementasi sebelumnya. Perbaikan yang sama pergi ke kamo- login dan kamo- register, yang membawa diverged salinan ini file dengan cacat identik.