Unsafe deserialization in Yii 2
Impact
Remote code execution in case application calls unserialize() on user input containing specially crafted string.
Patches
2.0.38
Workarounds
Add the following to BatchQueryResult.php:
public function __sleep()
{
throw new \BadMethodCallException('Cannot serialize '.__CLASS__);
}
public function __wakeup()
{
throw new \BadMethodCallException('Cannot unserialize '.__CLASS__);
}
For more information
If you have any questions or comments about this advisory, contact us through security form.
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Paquete de Composer | yiisoft/yii2 | < 2.0.38 | 2.0.38 |
Referencias
- https://github.com/yiisoft/yii2/security/advisories/GHSA-699q-wcff-g9mj
- https://nvd.nist.gov/vuln/detail/CVE-2020-15148
- https://github.com/yiisoft/yii2/commit/9abccb96d7c5ddb569f92d1a748f50ee9b3e2b99
- https://github.com/FriendsOfPHP/security-advisories/blob/master/yiisoft/yii2/CVE-2020-15148.yaml
- https://www.yiiframework.com/news/303/yii-2-0-38
- Vector CVSS
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:H- Debilidad (CWE)
CWE-502- Plataforma
- Composer
- Paquete
yiisoft/yii2- Publicada
- 15.09.2020
- Actualizado
- 11.10.2026 10:22
Fuentes y licencias
OSV / GitHub Advisory Database - GHSA-699q-wcff-g9mj - CC BY 4.0
Historial de vulnerabilidades: yiisoft/yii2
Todas las vulnerabilidades publicadas de este paquete (Paquete de Composer), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 12
- Primera → última
- 09.2020 05.2026
- Sin corrección
- 0
- Explotada en ataques
- 1
Distribución por gravedad
- Crítica 2
- Alta 5
- Media 5
Divulgaciones por año
- 2020: 1
- 2021: 0
- 2022: 6
- 2023: 1
- 2024: 2
- 2025: 1
- 2026: 1
-
Unsafe deserialization in Yii 2 esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.