{"id":"CVE-2026-126775","kind":"vulnerability","aliases":["CVE-2026-126775"],"related":[],"title":"social-auth-core: SAML login CSRF lets attackers sign victims into their account","description":"Social-auth-core 4.7.0 before 7.0.0 contains a login cross-site request forgery vulnerability in the SAML backend that restores sessions named in the unsigned RelayState parameter. Attackers can deliver their own valid IdP response and RelayState to a victim's browser via an auto-submitting form, signing the victim into the attacker's account to capture entered data.","summary":"social-auth-core is a Python library that adds social and SSO logins to web apps. In its SAML backend, the unsigned RelayState parameter can restore a session, so an attacker can sign a victim into the attacker's own account and capture data the victim enters.","severity":"medium","cvss":4.2,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["django","flask","package","python","saml","social-auth"],"not_affected_if":["no-saml-backend","non-python"],"how_to_check":"- Check the installed version with `pip show social-auth-core`\n- Look for `social-auth-core` in `requirements.txt`, `poetry.lock` or `Pipfile.lock` and see whether it is version 4.7.0 or later and before 7.0.0\n- Confirm whether your app uses the SAML backend (`social_core.backends.saml`)","fix":"- `social-auth-core` `7.0.0`\n- Release notes and patch are linked from the advisory; the sources do not give further steps","status":"open","published_at":"2026-11-11T19:17:38+00:00","first_seen_at":"2026-11-11T19:28:46+00:00","triaged_at":"2026-11-11T19:30:37+00:00","updated_at":"2026-11-11T19:30:37+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-11-11T19:30:37Z","model":"claude-haiku-5-5","output":{"fix":"- `social-auth-core` `7.0.0`\n- Release notes and patch are linked from the advisory; the sources do not give further steps","reach":"internet","title":"social-auth-core: SAML login CSRF lets attackers sign victims into their account","impact":"medium","summary":"social-auth-core is a Python library that adds social and SSO logins to web apps. In its SAML backend, the unsigned RelayState parameter can restore a session, so an attacker can sign a victim into the attacker's own account and capture data the victim enters.","audience":"developers","category":"package","nicknames":[],"who_cares":["python","django","flask","saml","social-auth"],"confidence":0.8,"fix_status":"available","needs_auth":"no","worst_case":"victim's entered data is captured while signed into attacker's account","analyst_note":"","how_to_check":"- Check the installed version with `pip show social-auth-core`\n- Look for `social-auth-core` in `requirements.txt`, `poetry.lock` or `Pipfile.lock` and see whether it is version 4.7.0 or later and before 7.0.0\n- Confirm whether your app uses the SAML backend (`social_core.backends.saml`)","plain_action":"","product_name":"","needs_analyst":false,"not_affected_if":["no-saml-backend","non-python"],"who_is_affected":"Web applications that use social-auth-core 4.7.0 up to but not including 7.0.0 with the SAML authentication backend are exposed. Applications that use only OAuth or other non-SAML backends, or that do not use this library, can skip it.","user_interaction":"yes","product_ecosystem":"","needs_special_setup":"yes","severity_if_unknown":"medium"},"cost_usd":0.00076,"input_tokens":4653,"output_tokens":590,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-126775':17A,20A '-2026':16A,19A '4.7.0':81C '7.0.0':83C 'account':14A,70B,134C 'add':38B 'app':45B 'attack':9A,60B,67B,106C,132C 'auth':3A,28B,31B,79C 'auto':124C 'auto-submit':123C 'backend':49B,96C 'browser':120C 'captur':72B,136C 'contain':84C 'core':4A,32B,80C 'cross':88C 'cross-sit':87C 'csrf':7A 'cve':15A,18A 'data':73B,138C 'deliv':108C 'django':21B 'enter':76B,137C 'flask':22B 'forgeri':91C 'form':126C 'idp':112C 'let':8A 'librari':36B 'login':6A,42B,86C 'name':100C 'packag':23B 'paramet':53B,105C 'python':24B,35B 'relayst':52B,104C,115C 'request':90C 'respons':113C 'restor':55B,98C 'saml':5A,25B,48B,95C 'session':57B,99C 'sign':10A,62B,127C 'site':89C 'social':2A,27B,30B,39B,78C 'social-auth':26B 'social-auth-cor':1A,29B,77C 'sso':41B 'submit':125C 'unsign':51B,103C 'valid':111C 'via':121C 'victim':11A,64B,75B,118C,129C 'vulner':92C 'web':44B","nicknames":[],"mitigations":[],"who_affected":"Web applications that use social-auth-core 4.7.0 up to but not including 7.0.0 with the SAML authentication backend are exposed. Applications that use only OAuth or other non-SAML backends, or that do not use this library, can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["django","flask","medium","package","python","saml","socialauth"],"campaign_type":null,"search_a":"'-126775':17A,20A '-2026':16A,19A 'account':14A 'attack':9A 'auth':3A 'core':4A 'csrf':7A 'cve':15A,18A 'let':8A 'login':6A 'saml':5A 'sign':10A 'social':2A 'social-auth-cor':1A 'victim':11A","search_b":"'account':70B 'add':38B 'app':45B 'attack':60B,67B 'auth':28B,31B 'backend':49B 'captur':72B 'core':32B 'data':73B 'django':21B 'enter':76B 'flask':22B 'librari':36B 'login':42B 'packag':23B 'paramet':53B 'python':24B,35B 'relayst':52B 'restor':55B 'saml':25B,48B 'session':57B 'sign':62B 'social':27B,30B,39B 'social-auth':26B 'social-auth-cor':29B 'sso':41B 'unsign':51B 'victim':64B,75B 'web':44B","search_c":"'4.7.0':81C '7.0.0':83C 'account':134C 'attack':106C,132C 'auth':79C 'auto':124C 'auto-submit':123C 'backend':96C 'browser':120C 'captur':136C 'contain':84C 'core':80C 'cross':88C 'cross-sit':87C 'data':138C 'deliv':108C 'enter':137C 'forgeri':91C 'form':126C 'idp':112C 'login':86C 'name':100C 'paramet':105C 'relayst':104C,115C 'request':90C 'respons':113C 'restor':98C 'saml':95C 'session':99C 'sign':127C 'site':89C 'social':78C 'social-auth-cor':77C 'submit':125C 'unsign':103C 'valid':111C 'via':121C 'victim':118C,129C 'vulner':92C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-11-09T13:49:20+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-126775","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-126775","severity":null,"published_at":"2026-11-11T19:17:38+00:00","modified_at":"2026-11-11T19:17:38+00:00","first_seen_at":"2026-11-11T19:28:46+00:00","fetched_at":"2026-11-11T19:28:46+00:00","note":null}],"documents":[{"id":128107,"url":"https://github.com/python-social-auth/social-core/commit/7d9da571fc9ce8bd0003ccfcbfa8ed98c18bb640","title":"Patch: github.com","kind":"other","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"},{"id":128108,"url":"https://github.com/python-social-auth/social-core/releases/tag/7.0.0","title":"Release notes: github.com","kind":"release","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Release notes: github.com"},{"id":128109,"url":"https://github.com/python-social-auth/social-core/security/advisories/GHSA-4pv2-52v7-vrfx","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-11-09T13:49:20+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"},{"id":128110,"url":"https://www.vulncheck.com/advisories/social-auth-core-4.7.0-before-7.0.0-login-csrf-via-saml-relaystate","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"disclosures":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}