<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Account-Takeover on harpi - Security Researcher</title><link>https://harpi.cc/tags/account-takeover/</link><description>Recent content in Account-Takeover on harpi - Security Researcher</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 06 Apr 2026 16:04:01 +0300</lastBuildDate><atom:link href="https://harpi.cc/tags/account-takeover/index.xml" rel="self" type="application/rss+xml"/><item><title>Django Allauth: Account Takeover via Provider Identifier Mutability</title><link>https://harpi.cc/blog/cves/django-allauth/django-allauth-account-takeover/</link><pubDate>Wed, 25 Dec 2024 00:00:00 +0000</pubDate><guid>https://harpi.cc/blog/cves/django-allauth/django-allauth-account-takeover/</guid><description>&lt;blockquote>
&lt;p>&lt;em>&amp;ldquo;There&amp;rsquo;s always a side door.&amp;rdquo;&lt;/em>&lt;/p>&lt;/blockquote>
&lt;h2 id="overview">Overview&lt;/h2>
&lt;p>I discovered an account takeover vulnerability in &lt;a href="https://github.com/pennersr/django-allauth">django-allauth&lt;/a>, one of the most widely-used authentication libraries for Django. The vulnerability allows an attacker to impersonate arbitrary users by exploiting how certain OAuth providers&amp;rsquo; identifiers are resolved.&lt;/p>
&lt;h2 id="vulnerability-details">Vulnerability Details&lt;/h2>
&lt;p>&lt;strong>CVE:&lt;/strong> CVE-2025-65431
&lt;strong>Type:&lt;/strong> Improper Authentication / Account Takeover (CWE-287)
&lt;strong>Impact:&lt;/strong> Account Impersonation
&lt;strong>Affected Versions:&lt;/strong> django-allauth &amp;lt; 65.13.0&lt;/p>
&lt;h3 id="the-bug">The Bug&lt;/h3>
&lt;p>Both the Okta and NetIQ providers were using &lt;code>preferred_username&lt;/code> as the identifier for third-party provider accounts. This value is &lt;strong>mutable&lt;/strong> — users can change their &lt;code>preferred_username&lt;/code> on the identity provider side.&lt;/p></description></item></channel></rss>