{
    "id": "CVE-2016-3957",
    "published": "2018-02-06 18:29:00",
    "last_modified": "2026-06-17 00:46:38",
    "cvss_score": "9.8",
    "cvss_severity": "CRITICAL",
    "cvss_version": "3.0",
    "cvss_vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
    "cwe": "CWE-502",
    "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.",
    "epss_score": "0.04937",
    "epss_percentile": "0.91917",
    "kev": 0,
    "kev_due": null,
    "has_exploit": 0,
    "updated_at": "2026-10-07 18:17:14",
    "priority": {
        "rank": 3,
        "label": "In your normal cycle",
        "why": "Critical by CVSS (9.8), but no sign of active exploitation."
    },
    "products": [
        {
            "vendor": "web2py",
            "product": "web2py"
        }
    ],
    "kev_detail": null,
    "exploits": [],
    "refs_list": [
        "https://devco.re/blog/2017/01/03/web2py-unserialize-code-execution-CVE-2016-3957/",
        "https://github.com/web2py/web2py/blob/R-2.14.1/gluon/utils.py#L200",
        "https://usn.ubuntu.com/4030-1/",
        "https://devco.re/blog/2017/01/03/web2py-unserialize-code-execution-CVE-2016-3957/",
        "https://github.com/web2py/web2py/blob/R-2.14.1/gluon/utils.py#L200",
        "https://usn.ubuntu.com/4030-1/"
    ]
}