Apa yang terjadi
Layanan autentikasi platform PraisonAI dilengkapi dengan rahasia penandatanganan JWT default yang dikodekan keras dan diketahui secara publik, dan penjaga produksi yang rusak yang gagal diaktifkan kecuali operator secara eksplisit memilih untuk keluar dari default 'dev' — berarti sebagian besar penerapan dunia nyata berjalan terbuka dengan rahasia yang dapat dibaca siapa pun dari repositori sumber terbuka.
Mengapa penting
Ini adalah bypass autentikasi lengkap sesuai default desain: penyerang jarak jauh yang tidak terautentikasi yang hanya membaca repositori GitHub publik dapat memalsukan token sesi valid untuk pengguna apa pun — termasuk administrator — pada penerapan platform PraisonAI yang belum di-patch, tanpa keahlian eksploitasi yang diperlukan di luar menyalin string yang dikenal.
Vektor serangan
auth_service.py kembali ke string literal publik 'dev-secret-change-me' sebagai JWT_SECRET setiap kali PLATFORM_JWT_SECRET tidak diatur. Pemeriksaan keselamatan produksi hanya memicu saat PLATFORM_ENV secara eksplisit diatur ke nilai non-'dev' — tetapi PLATFORM_ENV default ke 'dev' — jadi penerapan standar (pip install + uvicorn) diam-diam berjalan dengan rahasia yang diketahui publik. Siapa pun yang membaca sumber publik dapat membuat JWT HS256 dengan sub/email sewenang-wenang dan menyamar sebagai pengguna apa pun, termasuk pemilik ruang kerja dan admin, di seluruh rute API yang terautentikasi.
Sistem yang terdampak
praisonai-platform (PyPI), versi <= 0.1.4
Mitigasi
Upgrade praisonai-platform ke 0.1.6 atau lebih baru, yang memperbaiki penjaga agar gagal tertutup terlepas dari PLATFORM_ENV. Operator di versi apa pun yang lebih awal harus memperlakukan semua sesi yang dikeluarkan sebagai dikompromikan dan memutar PLATFORM_JWT_SECRET segera.