CVE-2020-36191
Cross-Site Request Forgery in JupyterHub
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- High
- User interaction
- Required
What an attacker can affect
- Confidentiality
- None
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
4.5
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
CVE-2020-36191- CVSS 3.1
- 4.5 Medium
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:H/A:N - CVSS 2.0
- 3.5 Low
AV:N/AC:M/Au:S/C:N/I:P/A:N - Weakness
- CWE-352
- Updated
- 2026-11-02
CVE List No score
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
CVE-2020-36191- Updated
- 2026-11-02
EUVDEUVD-2021-0106 No score
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
EUVD-2021-0106- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-7xx3-qp5w-fw96
6.7
Cross-Site Request Forgery in JupyterHub
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
GHSA-7xx3-qp5w-fw96- CVSS 4.0
- 6.7 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:A/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 4.5 Medium
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:H/A:N - Weakness
- CWE-352
- Updated
- 2026-11-02
OSV
4.5
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
CVE-2020-36191- CVSS 3.1
- 4.5 Medium
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2020-36191
4.5
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
DEBIAN-CVE-2020-36191- CVSS 3.1
- 4.5 Medium
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
Show 4 moreShow less
OSVGHSA-7xx3-qp5w-fw96
6.7
Cross-Site Request Forgery in JupyterHub
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
GHSA-7xx3-qp5w-fw96- CVSS 4.0
- 6.7 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:A/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 4.5 Medium
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:H/A:N - Weakness
- CWE-352
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2020-36191
4.5
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
UBUNTU-CVE-2020-36191- CVSS 3.1
- 4.5 Medium
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVBIT-jupyterhub-2020-36191 No score
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
BIT-jupyterhub-2020-36191- Updated
- 2026-11-02
OSVPYSEC-2021-67 No score
JupyterHub 1.1.0 allows CSRF in the admin panel via a request that lacks an _xsrf field, as demonstrated by a /hub/api/user request (to add or remove a user account).
- Record
PYSEC-2021-67- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
jupyterhubPyPI |
before 1.2.0b1 | 1.2.0b1 |
jupyterhubBitnami |
1.1.0 up to 1.1.1 | 1.1.1 |
jupyterhubDebian:12 |
before 3.0.0+ds1-1 | 3.0.0+ds1-1 |
jupyterhubDebian:13 |
before 3.0.0+ds1-1 | 3.0.0+ds1-1 |
jupyterhubDebian:14 |
before 3.0.0+ds1-1 | 3.0.0+ds1-1 |
jupyterhubPyPI |
before 1.2.0b1, plus listed versions 0.1.00.2.00.3.00.4.00.4.1 Show 32 moreShow less0.5.00.6.00.6.10.7.00.7.0b10.7.10.7.20.8.00.8.0b10.8.0b20.8.0b30.8.0b40.8.0b50.8.0rc10.8.0rc20.8.10.9.00.9.0b10.9.0b20.9.0b30.9.0rc10.9.10.9.20.9.30.9.40.9.50.9.61.0.01.0.0b11.0.0b21.1.01.1.0b1 |
1.2.0b1 |
jupyterhubPyPI |
before 1.2.0b1, plus listed versions 0.1.00.2.00.3.00.4.00.4.1 Show 32 moreShow less0.5.00.6.00.6.10.7.0b10.7.00.7.10.7.20.8.0b10.8.0b20.8.0b30.8.0b40.8.0b50.8.0rc10.8.0rc20.8.00.8.10.9.0b10.9.0b20.9.0b30.9.0rc10.9.00.9.10.9.20.9.30.9.40.9.50.9.61.0.0b11.0.0b21.0.01.1.0b11.1.0 |
1.2.0b1 |
jupyterhubUbuntu:22.04:LTS |
All versions, plus listed versions 2.0.0+ds1-12.0.0+ds1-2 |
None known |
jupyterhubUbuntu:24.04:LTS |
All versions, plus listed versions 3.0.0+ds1-1 |
None known |
jupyterhubUbuntu:25.10 |
All versions, plus listed versions 5.2.1+ds1-25.2.1+ds1-35.2.1+ds1-4 |
None known |
jupyterhubUbuntu:26.10 |
All versions, plus listed versions 5.2.1+ds1-45.2.1+ds1-5 |
None known |
jupyterhubUbuntu:26.04:LTS |
All versions, plus listed versions 5.2.1+ds1-4 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2020-36191 is a medium vulnerability (CVSS 4.5) in Jupyter Jupyterhub, published January 13, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.51%, the 43rd percentile. Fixed in jupyterhub 1.2.0b1.
References
github.com/jupyterhub/jupyterhub/issues/3304
github.com/jupyterhub/jupyterhub/releases
nvd.nist.gov/vuln/detail/CVE-2020-36191
github.com/advisories/GHSA-7xx3-qp5w-fw96
github.com/pypa/advisory-database/tree/main/vulns/jupyterhub/PYSEC-2021-67.yaml
security-tracker.debian.org/tracker/CVE-2020-36191
github.com/jupyterhub/jupyterhub
ubuntu.com/security/CVE-2020-36191
cve.org/CVERecord?id=CVE-2020-36191