Issue 124: API vulnerabilities at Microsoft and Truecaller Guardians, Pentester labs, API security at Ford Motors 🚗

The Latest API Security News, Vulnerabilities and Best Practices
Issue: #124
API vulnerabilities at Microsoft and Truecaller Guardians, Pentester labs, API security at Ford Motors
This week, we take a look at the recent API vulnerabilities reported at Microsoft and Truecaller Guardians, the new penetration testing labs for API security, and an upcoming webinar on the API security process at Ford Motors.
Vulnerability: Microsoft online accounts
 

API endpoints for resetting account passwords are a frequent attack vector. Attackers brute-force these by supplying as many possible combinations of password reset codes as they can within the time window available to them.

Laxman Muthiyah found a way to break into the password reset API for all Microsoft’s online accounts. He requested a password reset code — a 7-digit one in Microsoft’s case — for the target account and then tried to brute-force his way in by calling the verification API with all possible combinations from multiple locations.

Microsoft_password-reset-API

Microsoft had actually already taken measures to make it harder to break into the system:

  • The API did not accept the code just as plain numbers but had some basic encryption between the client and the API that the attacker had to figure out. This also made it impossible to use off-the-shelf iteration tools like Burp plugins.
  • The API had rate-limiting in place.
  • The API detected attacks with parallel requests from multiple endpoints quite quickly, blacklisted the IP addresses, and rejected all codes from them, including the correct one.

Despite this, Muthiyah managed to demonstrate that he could still get in if he deployed the automated attack simultaneously from thousands of clients. Even if an account was protected with two-factor authentication (2FA), the same operation just had to be repeated for the 6-digit 2FA code.

For his efforts and report, Muthiyah received the award of $50,000. Microsoft has fixed the issue.

We have previously covered a similar vulnerability that Muthiyah reported for Instagram.

Lessons learned here:

  • Password reset endpoints are frequently a source of OWASP API:2 Broken Authentication vulnerability.
  • Assume that attackers can launch distributed attacks from multiple IP addresses.
  • MFA helps but can be vulnerable to similar attacks.
  • The more complex reset codes you use, the harder it will be to brute-force them. An alphanumeric code of the same length has a lot more combinations.
  • Smart rate-limiting mechanisms serve as additional protection.

 

Vulnerability: Truecaller Guardians
 

Truecaller has recently launched its Guardians app that allows permanently sharing your real-time location with trusted contacts, like your family. Anand Prakash found a way to take over any account in the system and access sensitive information of users and their family members.

The vulnerability lay in the API that allowed users to log into the app using their Truecaller account. All attackers had to do was to first log into their own Truecaller account and then, when going to the Guardians app, substitute their phone number in the payload with that of their intended victim. The app then used that phone number as the ID to match the user with the profile.

POST /v0/user HTTP/1.1
Host: api. getguardians. com
Content-Type: application/json
Accept: */*
Connection: close
Content-Length: 656
User-Agent: Guardians/1.1.3 (com.truesoftware.Guardians; build:1.1.3; iOS 14.4.0) Alamofire/5.4.1
Accept-Language: en-IN;q=1.0, kn-IN;q=0.9, hi-IN;q=0.8, hi-Latn-IN;q=0.7
Authorization: Bearer aQ4AOdxwPPWJM06sICQMQRWlANOC1crV
Accept-Encoding: gzip, deflate
{
"userVerificationInput": {
"nonTCUserToken": "",
"tcUserSignature": "[Attacker's Signature]",
"tcUserPayload": "[Attacker's Payload]"
},
"phoneNumber": {
"countryCode": "IN",
"number": "[Victim's Phone Number]"
},
"tcUser": true,
"ios": true
}
  • There was no protection against payload tampering (this wasn’t a signed token)
  • The Guardians app did not validate in any way that the phone number in the incoming request belonged to the user authenticated in Truecaller. It would just give full access to the account to anyone presenting a known phone number.

This is another example of OWASP API:2 Broken Authentication vulnerability. Be careful with your authentication workflow design, especially when you are looking at a federated scenario and users logging into one system then get access into another.

Training: API security pentesting labs
 

Penetration testing is best learned by practice. PentesterLab has created a special category and started adding API security labs to their site. One hands-on API security lab is already available, with 3 more in the works.

Perfect opportunity to get some hands-on experience.

API security in the enterprise: Ford Motors
 

Rolling out a successful API security program in a large enterprise can be a challenge.

Next Thursday, March 18th at 8 AM (PST) Darren Shelcusky, Manager of Vehicle & Connectivity Cybersecurity at Ford Motor Company, tells how their process was.

In the webinar, Darren will explain Ford’s approach to API security and their journey to enforce security compliance while ensuring productivity of hundreds of developers managing thousands of APIs.

Registration is open here.

Ford API Security webinar

 

 
 
Thanks for reading.

That's it for today. If you have any feedback or stories to share, simply reply to this email.

Please forward the newsletter to your friends and colleagues who might benefit from it.

 
42Crunch, Inc.   95 Third Street  2nd Floor  San Francisco  CA   94103   United States
You received this email because you are subscribed to API Security News from 42Crunch, Inc..

Update your email preferences to choose the types of emails you receive or Unsubscribe from all future emails  
 
 

Older messages

Issue 123: API vulnerabilities VMWare vCenter and Facebook, mismatch between JSON parsers, API security fixes in VS Code

Thursday, March 4, 2021

Hi, this week we look at how URL caching and JSON parsing can bite you, and check out APIsecurity.io The Latest API Security News, Vulnerabilities and Best Practices Issue: #123 API vulnerabilities

Issue 122: API issues at Clubhouse 👋 and healthcare apps, scope-based recon, OAS v3.1.0

Thursday, February 25, 2021

Hi, this week we look at API vulnerabilities in Clubhouse and mHealth apps, recon & OAS APIsecurity.io The Latest API Security News, Vulnerabilities and Best Practices Issue: #122 API issues at

Issue 121: Vulnerability at chess.com, GraphQL security playground and checklist 📝

Thursday, February 18, 2021

Hi, today we look at the recent chess.com API flaw and useful security resources for APIsecurity.io The Latest API Security News, Vulnerabilities and Best Practices Issue: #121 Vulnerability at chess.

Issue 120: Video doorbells security flaws, intro to JWT attacks, security zines

Saturday, February 13, 2021

Hi, this week (besides security flaws) we have tutorials on JWT, AuthZ & AuthN, K8S APIsecurity.io The Latest API Security News, Vulnerabilities and Best Practices Issue: #120 Video doorbells

Issue 119: NoxPlayer supply-chain attack through a hacked API 📲

Thursday, February 4, 2021

Hi , today we look at NoxPlayer API attack, Radware state of web sec report, Azure API m APIsecurity.io The Latest API Security News, Vulnerabilities and Best Practices Issue: #119 NoxPlayer supply-

You Might Also Like

Software Testing Weekly - Issue 220

Saturday, May 18, 2024

Software Testing Conferences 📚 View on the Web Archives ISSUE 220 May 18th 2024 COMMENT Welcome to the 220th issue! Have you ever been to a testing conference? They're a great way to learn about

📶 Is a Cellular iPad Worth It? — How to Prevent YouTube From Taking Over Your Screensaver

Saturday, May 18, 2024

Also: This Robot Vacuum Can Clean Stairs, and More! How-To Geek Logo May 18, 2024 📩 Get expert reviews, the hottest deals, how-to's, breaking news, and more delivered directly to your inbox by

Weekend Reading — Objection-oriented programming

Saturday, May 18, 2024

This week we find a power-up box, replace GitHub Actions with Maven XMLs, avoid the worst website in the world, revisit RTO policies, “listen” to OpenAI employees, watch our Slack private messages, do

Daily Coding Problem: Problem #1445 [Easy]

Saturday, May 18, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Jane Street. The United States uses the imperial system of weights and measures, which

You don’t have to take our word for it…

Saturday, May 18, 2024

You can probably tell how excited we are to re-launch our Gigantic courses – which bring on-demand product management training for today's modern Product Managers and Product Leaders. In fact, we

🐍 New Python tutorials on Real Python

Saturday, May 18, 2024

Hey there, There's always something going on over at realpython.com as far as Python tutorials go. Here's what you may have missed this past week: What Is the __pycache__ Folder in Python? In

Visualized | Life Expectancy by Region (1950-2050F) 📊

Saturday, May 18, 2024

This map shows life expectancy at birth for key global regions, from 1950 to 2050F. View Online | Subscribe Presented by Voronoi: The App Where Data Tells the Story FEATURED STORY Life Expectancy by

New Wi-Fi Vulnerability Enables Network Eavesdropping via Downgrade Attacks

Saturday, May 18, 2024

THN Daily Updates Newsletter cover The DevSecOps Playbook: Deliver Continuous Security at Speed ($19.00 Value) FREE for a Limited Time A must-read guide to a new and rapidly growing field in

🐍 New Python tutorials on Real Python

Saturday, May 18, 2024

Hey there, There's always something going on over at realpython.com as far as Python tutorials go. Here's what you may have missed this past week: What Is the __pycache__ Folder in Python? In

Toward 'local' AI w/ Apple's new chip

Saturday, May 18, 2024

faster than the cloud ☁️ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌