Missing rate-limiting on Azure AD B2C forgot password feature

Muhammad Waris 0 Reputation points
2024-09-08T11:59:30.4433333+00:00

What is the impact of the missing rate-limiting on Azure AD B2C's forgot password feature? How can an attacker exploit this vulnerability, and what damage can it cause to the mailbox's reputation? Are there any workarounds or solutions to secure this feature other than creating a custom policy?

Microsoft Entra ID
Microsoft Entra ID
A Microsoft Entra identity service that provides identity management and access control capabilities. Replaces Azure Active Directory.
21,416 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Navya 9,640 Reputation points Microsoft Vendor
    2024-09-12T10:54:12.59+00:00

    Hi @Muhammad Waris

    Thank you for posting this in Microsoft Q&A.

    I understand your concerns regarding the impact of the missing rate-limiting on Azure AD B2C's forgot password feature.

    The lack of rate-limiting on Azure AD B2C's forgot password feature can potentially allow an attacker to perform a brute-force attack on a user's account, which can lead to unauthorized access to the account and attempting to reset passwords for multiple accounts in a short period of time.

    An attacker could exploit this vulnerability by continuously sending requests to the 'forgot password' feature using various usernames or email addresses in an attempt to identify the correct one. In the absence of rate-limiting, an attacker is able to make numerous requests rapidly, thereby enhancing the likelihood of a successful brute-force attack and potentially rendering the 'forgot password' feature inaccessible to legitimate users.

    The lack of rate-limiting can also cause damage to the mailbox's reputation if the forgot password feature sends a large number of emails to the mailbox. This can trigger spam filters and cause legitimate emails from the mailbox to be marked as spam.

    Apart from custom policy Azure AD B2C provides a feature called "smart lockout" that can be used to implement rate-limiting on the forgot password feature. This feature can be configured to lock out accounts after a specified number of failed passwords reset attempts.

    For more information: https://video2.skills-academy.com/en-us/azure/active-directory-b2c/threat-management

    another solution, Implementing CAPTCHA on the forgot password page can help prevent automated attacks by requiring users to complete a CAPTCHA challenge before submitting a password reset request
    For your reference: CAPTCHA in Azure Active Directory B2C

    Hope this helps. Do let us know if you any further queries.

    Thanks,

    Navya.

    If this answers your query, do click Accept Answer and Yes for was this answer helpful. And, if you have any further query do let us know.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.