Executive brief
parsel is a JavaScript library for encryption. The package uses an insecure encryption method (AES-256-CBC without integrity checks) that allows attackers to manipulate encrypted data through bit-flipping attacks. Applications relying on parsel for data protection are vulnerable to unauthorized data modification without detection.
Technical details
parsel implements insecure cryptography by using AES-256-CBC encryption without authenticated encryption or integrity verification (CWE-327). The vulnerable component is the core encryption mechanism, which is exploitable via a network or local vector if an attacker can intercept and modify ciphertext. An attacker can perform bit-flipping attacks to alter encrypted messages without invalidating the ciphertext, allowing unauthorized modification of protected data. The package is deprecated and will not receive updates; users should migrate to alternative encryption libraries.
Affected products
- parsel parsel all versions
Timeline
- 2020-09-04: disclosed