RESEARCH / VULNERABILITY DISCLOSURE

Vulnerability in Microsoft 2FA could lead to massive phishing attacks against Microsoft users

A flaw in the Microsoft Rewards identity check let attackers send SMS messages and voice calls with their own text — through Microsoft’s own infrastructure.

Explore Security Services
CySource Research Team • 2022

Research by Shai Alfasi and Marlon Fabiano da Silva with the CySource research team. Originally published on cysrc.com in 2022.

In this research, Shai Alfasi and Marlon Fabiano da Silva, together with the CySource research team, discovered that they could gain control of a Microsoft SMS mechanism and send any SMS message they wanted on behalf of Microsoft.

In addition to being able to edit the content of the message sent via SMS, we were able to make voice calls and edit the phrases the bot would speak to the victim.
— Marlon Fabiano da Silva, researcher at CySource
Microsoft Rewards gift card offer page (Brazilian Portuguese interface)
Redeeming a reward on Microsoft Rewards.

Description

At the identity-confirmation step, before redeeming a reward on rewards.microsoft.com, the user could enter any phone number to receive the 2FA code. The application did not verify that the logged-in user actually owned that number.

Microsoft Rewards phone verification page with SMS and voice call options and a phone number field
Phone verification: the code could be sent by SMS or voice call to any number entered.

It was also possible to change the content of the message. The original text, Your Microsoft Rewards Confirmation Code is XXXXX, could be replaced with something like:

Your Microsoft account has been hacked. We will contact you to validate your data.

A message like this could have been used to deceive Microsoft users into sharing personal data or opening malicious links.

The researchers also noticed that there was no limit on the calls or SMS messages sent. By automatically repeating the same request, it was possible to send 1,000 SMS messages and make 200 calls. The weakness could therefore also have been used for denial-of-service attacks that flood Microsoft customers’ phones.

Steps to reproduce

  1. Open Microsoft Rewards and sign in with a Microsoft account (MSA).
  2. The signed-in account must have points available to redeem.
  3. Click any offer to redeem it. You are asked to confirm your identity through 2FA.
  4. Intercept the request with a proxy. The same request can be repeated to abuse the missing rate limit, and both the phone number the calls and messages go to and the content of the messages can be changed (for scam and phishing attacks).
  5. With an automated tool, the vulnerability could be used to run spoofing attacks through Microsoft’s infrastructure to steal Microsoft customers’ data.

The impact of such a vulnerability

In addition to the financial loss for Microsoft, an attacker could have used the 2FA mechanism to send phishing SMS messages or make phishing calls to Microsoft’s employees, customers and partners.

After we approached Microsoft with this report and a proof of concept, the vulnerability was quickly fixed.

Back to insights
LET’S SCOPE IT

What are you trying to validate?

Share your environment, objectives and preferred timeframe. We’ll discuss scope, approach and qualified specialist availability.

Request an assessment