| Version | Supported |
|---|---|
| 4.0.x | Yes (current — CVE-2026-48063 patched) |
| 3.x | No (EOL pada v4.0.0 GA) |
| < 3.x | No |
Versi yang didukung saat ini adalah 4.0.0 (current). Semua perbaikan keamanan
ditargetkan ke baris 4.0.x.
Email security disclosures ke maintainer via GitHub Issue (mark as "security") atau private channel di repository. Jangan publish CVE details secara publik sebelum patch tersedia.
Target response: acknowledgement dalam 72 jam, patch atau mitigation plan dalam 14 hari untuk severity high/critical.
- Affected: Baileys
< 7.0.0-rc12(zaileysv3.xdenganbaileys ^7.0.0-rc.9atau lebih lama) - Patched in zaileys:
v4.0.0(bumps baileys ke^7.0.0-rc13) - Severity: Critical
- Description: Pre-rc12,
processMessagedispatched onprotocolMessage.typetanpa cekfromMe. Attacker bisa mengirim crafted message denganprotocolMessage.type === HISTORY_SYNC_NOTIFICATION(atauAPP_STATE_SYNC_KEY_SHARE,LID_MIGRATION_MAPPING_SYNC,PEER_DATA_OPERATION_REQUEST_RESPONSE_MESSAGE) dan client akan memperlakukannya sebagai directive dari device sendiri — corrupt local history, swap LID mappings, atau eksfiltrasi app-state-sync keys. - Patch (upstream baileys ≥rc12):
SELF_ONLY_TYPESset enforced — incoming protocol message dengan type tersebut dan!message.key.fromMeakan di-drop dengan warn logdropping spoofed self-only protocolMessage from non-self origin. - Depth-in-defense (zaileys v4): Consumer-side guard
dropSpoofedSelfOnly()disrc/events/guards.tsmembuang upsert events yang membawarequestIdfield (indicator placeholderResendMessage spoof). Diinvoke di event dispatcher Phase 4.
Zaileys v4 mengandalkan native dep whatsapp-rust-bridge (via baileys).
Verifikasi prebuilds dari trusted source saat install. Lock file (pnpm-lock.yaml)
WAJIB di-commit; review setiap perubahan transitive deps.
AuthStore default adapter (Phase 2) menyimpan credentials sebagai JSON file.
Tidak terenkripsi. Process yang punya akses ke working directory bisa
hijack session. Untuk production: gunakan SqliteAuthStore atau RedisAuthStore
plus filesystem-level encryption (e.g., LUKS, FileVault) di host. File permission
default adapter wajib 0600 untuk creds.json dan 0700 untuk parent directory.
Trusted Contact tokens (anti-abuse signaling untuk 1:1 chats) di-handle silent
oleh baileys upstream. Zaileys TIDAK expose API untuk issuance/expiration/pruning —
lifecycle terkelola otomatis dengan 4-bucket 7-day rolling validity (~28 hari).
Storage round-trip tetap berjalan via AuthStore key tctoken (legal kategori
di SignalDataTypeMap); tidak ada method tctoken-specific di public Client API.