{"id":"CVE-2026-93650","summary":"Saleor throttling.py get_client_ip excessive authentication","details":"A vulnerability was determined in Saleor up to 3.20.118/3.21.54/3.22.47/3.23.14. This vulnerability affects the function get_client_ip of the file saleor/account/throttling.py. Executing a manipulation can lead to improper restriction of excessive authentication attempts. The attack can be executed remotely. The attack requires a high level of complexity. It is stated that the exploitability is difficult. The exploit has been publicly disclosed and may be utilized. The projects own issue #19203 internal ticket admits \"IP can be spoofed in most deployments\" and that its REAL_IP_ENVIRON-type setting bypasses get_client_ip; fix (right-to-left RFC 7239 hop selection) proposed but still unmerged. The vendor explains within an email, that \"[t]his is not a vulnerability, this is working at intended, Saleor expects XFF to be configured properly\".","modified":"2026-09-20T11:47:30.147824816Z","published":"2026-09-18T18:15:10.080Z","database_specific":{"cwe_ids":["CWE-307","CWE-799"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/93xxx/CVE-2026-93650.json","cna_assigner":"VulDB"},"references":[{"type":"WEB","url":"https://github.com/saleor/saleor/"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/93xxx/CVE-2026-93650.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-93650"},{"type":"ADVISORY","url":"https://vuldb.com/cve/CVE-2026-93650"},{"type":"ADVISORY","url":"https://vuldb.com/submit/933655"},{"type":"ADVISORY","url":"https://vuldb.com/vuln/407477"},{"type":"REPORT","url":"https://github.com/saleor/saleor/issues/19203"},{"type":"REPORT","url":"https://vuldb.com/vuln/407477/cti"},{"type":"EVIDENCE","url":"https://github.com/zast-ai/vulnerability-reports/blob/main/saleor/bruteforce.md"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/saleor/saleor","events":[{"introduced":"e570cf75807a6a27268e8559d8cca54ae466b192"},{"last_affected":"1bcbf79b4a9d083fb31b68bf5d32a096c25e598a"}],"database_specific":{"extracted_events":[{"introduced":"3.20.118"},{"last_affected":"3.20.118"},{"introduced":"3.21.0"},{"last_affected":"3.21.0"},{"introduced":"3.21.1"},{"last_affected":"3.21.1"},{"introduced":"3.21.2"},{"last_affected":"3.21.2"},{"introduced":"3.21.3"},{"last_affected":"3.21.3"},{"introduced":"3.21.4"},{"last_affected":"3.21.4"},{"introduced":"3.21.5"},{"last_affected":"3.21.5"},{"introduced":"3.21.6"},{"last_affected":"3.21.6"},{"introduced":"3.21.7"},{"last_affected":"3.21.7"},{"introduced":"3.21.8"},{"last_affected":"3.21.8"},{"introduced":"3.21.9"},{"last_affected":"3.21.9"},{"introduced":"3.21.10"},{"last_affected":"3.21.10"},{"introduced":"3.21.11"},{"last_affected":"3.21.11"},{"introduced":"3.21.12"},{"last_affected":"3.21.12"},{"introduced":"3.21.13"},{"last_affected":"3.21.13"},{"introduced":"3.21.14"},{"last_affected":"3.21.14"},{"introduced":"3.21.15"},{"last_affected":"3.21.15"},{"introduced":"3.21.16"},{"last_affected":"3.21.16"},{"introduced":"3.21.17"},{"last_affected":"3.21.17"},{"introduced":"3.21.18"},{"last_affected":"3.21.18"},{"introduced":"3.21.19"},{"last_affected":"3.21.19"},{"introduced":"3.21.20"},{"last_affected":"3.21.20"},{"introduced":"3.21.21"},{"last_affected":"3.21.21"},{"introduced":"3.21.22"},{"last_affected":"3.21.22"},{"introduced":"3.21.23"},{"last_affected":"3.21.23"},{"introduced":"3.21.24"},{"last_affected":"3.21.24"},{"introduced":"3.21.25"},{"last_affected":"3.21.25"},{"introduced":"3.21.26"},{"last_affected":"3.21.26"},{"introduced":"3.21.27"},{"last_affected":"3.21.27"},{"introduced":"3.21.28"},{"last_affected":"3.21.28"},{"introduced":"3.21.29"},{"last_affected":"3.21.29"},{"introduced":"3.21.30"},{"last_affected":"3.21.30"},{"introduced":"3.21.31"},{"last_affected":"3.21.31"},{"introduced":"3.21.32"},{"last_affected":"3.21.32"},{"introduced":"3.21.33"},{"last_affected":"3.21.33"},{"introduced":"3.21.34"},{"last_affected":"3.21.34"},{"introduced":"3.21.35"},{"last_affected":"3.21.35"},{"introduced":"3.21.36"},{"last_affected":"3.21.36"},{"introduced":"3.21.37"},{"last_affected":"3.21.37"},{"introduced":"3.21.38"},{"last_affected":"3.21.38"},{"introduced":"3.21.39"},{"last_affected":"3.21.39"},{"introduced":"3.21.40"},{"last_affected":"3.21.40"},{"introduced":"3.21.41"},{"last_affected":"3.21.41"},{"introduced":"3.21.42"},{"last_affected":"3.21.42"},{"introduced":"3.21.43"},{"last_affected":"3.21.43"},{"introduced":"3.21.44"},{"last_affected":"3.21.44"},{"introduced":"3.21.45"},{"last_affected":"3.21.45"},{"introduced":"3.21.46"},{"last_affected":"3.21.46"},{"introduced":"3.21.47"},{"last_affected":"3.21.47"},{"introduced":"3.21.48"},{"last_affected":"3.21.48"},{"introduced":"3.21.49"},{"last_affected":"3.21.49"},{"introduced":"3.21.50"},{"last_affected":"3.21.50"},{"introduced":"3.21.51"},{"last_affected":"3.21.51"},{"introduced":"3.21.52"},{"last_affected":"3.21.52"},{"introduced":"3.21.53"},{"last_affected":"3.21.53"},{"introduced":"3.21.54"},{"last_affected":"3.21.54"},{"introduced":"3.22.0"},{"last_affected":"3.22.0"},{"introduced":"3.22.1"},{"last_affected":"3.22.1"},{"introduced":"3.22.2"},{"last_affected":"3.22.2"},{"introduced":"3.22.3"},{"last_affected":"3.22.3"},{"introduced":"3.22.4"},{"last_affected":"3.22.4"},{"introduced":"3.22.5"},{"last_affected":"3.22.5"},{"introduced":"3.22.6"},{"last_affected":"3.22.6"},{"introduced":"3.22.7"},{"last_affected":"3.22.7"},{"introduced":"3.22.8"},{"last_affected":"3.22.8"},{"introduced":"3.22.9"},{"last_affected":"3.22.9"},{"introduced":"3.22.10"},{"last_affected":"3.22.10"},{"introduced":"3.22.11"},{"last_affected":"3.22.11"},{"introduced":"3.22.12"},{"last_affected":"3.22.12"},{"introduced":"3.22.13"},{"last_affected":"3.22.13"},{"introduced":"3.22.14"},{"last_affected":"3.22.14"},{"introduced":"3.22.15"},{"last_affected":"3.22.15"},{"introduced":"3.22.16"},{"last_affected":"3.22.16"},{"introduced":"3.22.17"},{"last_affected":"3.22.17"},{"introduced":"3.22.18"},{"last_affected":"3.22.18"},{"introduced":"3.22.19"},{"last_affected":"3.22.19"},{"introduced":"3.22.20"},{"last_affected":"3.22.20"},{"introduced":"3.22.21"},{"last_affected":"3.22.21"},{"introduced":"3.22.22"},{"last_affected":"3.22.22"},{"introduced":"3.22.23"},{"last_affected":"3.22.23"},{"introduced":"3.22.24"},{"last_affected":"3.22.24"},{"introduced":"3.22.25"},{"last_affected":"3.22.25"},{"introduced":"3.22.26"},{"last_affected":"3.22.26"},{"introduced":"3.22.27"},{"last_affected":"3.22.27"},{"introduced":"3.22.28"},{"last_affected":"3.22.28"},{"introduced":"3.22.29"},{"last_affected":"3.22.29"},{"introduced":"3.22.30"},{"last_affected":"3.22.30"},{"introduced":"3.22.31"},{"last_affected":"3.22.31"},{"introduced":"3.22.32"},{"last_affected":"3.22.32"},{"introduced":"3.22.33"},{"last_affected":"3.22.33"},{"introduced":"3.22.34"},{"last_affected":"3.22.34"},{"introduced":"3.22.35"},{"last_affected":"3.22.35"},{"introduced":"3.22.36"},{"last_affected":"3.22.36"},{"introduced":"3.22.37"},{"last_affected":"3.22.37"},{"introduced":"3.22.38"},{"last_affected":"3.22.38"},{"introduced":"3.22.39"},{"last_affected":"3.22.39"},{"introduced":"3.22.40"},{"last_affected":"3.22.40"},{"introduced":"3.22.41"},{"last_affected":"3.22.41"},{"introduced":"3.22.42"},{"last_affected":"3.22.42"},{"introduced":"3.22.43"},{"last_affected":"3.22.43"},{"introduced":"3.22.44"},{"last_affected":"3.22.44"},{"introduced":"3.22.45"},{"last_affected":"3.22.45"},{"introduced":"3.22.46"},{"last_affected":"3.22.46"},{"introduced":"3.22.47"},{"last_affected":"3.22.47"},{"introduced":"3.23.0"},{"last_affected":"3.23.0"},{"introduced":"3.23.1"},{"last_affected":"3.23.1"},{"introduced":"3.23.2"},{"last_affected":"3.23.2"},{"introduced":"3.23.3"},{"last_affected":"3.23.3"},{"introduced":"3.23.4"},{"last_affected":"3.23.4"},{"introduced":"3.23.5"},{"last_affected":"3.23.5"},{"introduced":"3.23.6"},{"last_affected":"3.23.6"},{"introduced":"3.23.7"},{"last_affected":"3.23.7"},{"introduced":"3.23.8"},{"last_affected":"3.23.8"},{"introduced":"3.23.9"},{"last_affected":"3.23.9"},{"introduced":"3.23.10"},{"last_affected":"3.23.10"},{"introduced":"3.23.11"},{"last_affected":"3.23.11"},{"introduced":"3.23.12"},{"last_affected":"3.23.12"},{"introduced":"3.23.13"},{"last_affected":"3.23.13"},{"introduced":"3.23.14"},{"last_affected":"3.23.14"}],"source":"AFFECTED_FIELD"}}],"versions":["3.20.118","3.21.0","3.21.1","3.21.10","3.21.11","3.21.12","3.21.13","3.21.14","3.21.15","3.21.16","3.21.17","3.21.18","3.21.19","3.21.2","3.21.20","3.21.21","3.21.22","3.21.23","3.21.24","3.21.25","3.21.26","3.21.27","3.21.28","3.21.29","3.21.3","3.21.30","3.21.31","3.21.32","3.21.33","3.21.34","3.21.35","3.21.36","3.21.37","3.21.38","3.21.39","3.21.4","3.21.40","3.21.41","3.21.42","3.21.43","3.21.44","3.21.45","3.21.46","3.21.47","3.21.48","3.21.49","3.21.5","3.21.50","3.21.51","3.21.52","3.21.53","3.21.54","3.21.6","3.21.7","3.21.8","3.21.9","3.22.0","3.22.1","3.22.10","3.22.11","3.22.12","3.22.13","3.22.14","3.22.15","3.22.16","3.22.17","3.22.18","3.22.19","3.22.2","3.22.20","3.22.21","3.22.22","3.22.23","3.22.24","3.22.25","3.22.26","3.22.27","3.22.28","3.22.29","3.22.3","3.22.30","3.22.31","3.22.32","3.22.33","3.22.34","3.22.35","3.22.36","3.22.37","3.22.38","3.22.39","3.22.4","3.22.40","3.22.41","3.22.42","3.22.43","3.22.44","3.22.45","3.22.46","3.22.47","3.22.5","3.22.6","3.22.7","3.22.8","3.22.9","3.23.0","3.23.1","3.23.10","3.23.11","3.23.12","3.23.13","3.23.14","3.23.2","3.23.3","3.23.4","3.23.5","3.23.6","3.23.7","3.23.8","3.23.9"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-93650.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P"}]}