CVE-2016-3957
The secure_load function in gluon/utils.py in web2py before 2.14.2 uses pickle.loads to deserialize session information stored in cookies, which might allow remote attackers to execute arbitrary code by leveraging knowledge of encryption_key.
Does this matter?
High impact if exploited, but EPSS currently rates exploitation as unlikely (4.94%). Schedule it in the normal patch cycle and watch for a rise in EPSS or a public exploit.
Description
The secure_load function in gluon/utils.py in web2py before 2.14.2 uses pickle.loads to deserialize session information stored in cookies, which might allow remote attackers to execute arbitrary code by leveraging knowledge of encryption_key.
- CVSS 3.0
- 9.8 CRITICALCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- EPSS
- 4.94% probability · 92th percentile
- CISA KEV
- Not listed
- Weakness
- CWE-502
- Affected
- web2py/web2py
- Source
- cve@mitre.org
References
- https://devco.re/blog/2017/01/03/web2py-unserialize-code-execution-CVE-2016-3957/Exploit, Technical Description, Third Party Advisory
- https://github.com/web2py/web2py/blob/R-2.14.1/gluon/utils.py#L200Third Party Advisory
- https://usn.ubuntu.com/4030-1/
- https://devco.re/blog/2017/01/03/web2py-unserialize-code-execution-CVE-2016-3957/Exploit, Technical Description, Third Party Advisory
- https://github.com/web2py/web2py/blob/R-2.14.1/gluon/utils.py#L200Third Party Advisory
- https://usn.ubuntu.com/4030-1/
Source: NVD record, EPSS from FIRST.org, KEV from CISA. Refreshed daily.