Tech News

Microsoft Titan Flaw: Unsigned JWT Gave Admin Access to 17.3 Trillion Rows

17,333,335,124,315. Reading that number takes forever, so let’s do it again: 17.3 trillion. That’s the number of stored rows that Faav, a 16-year-old security researcher, says were within reach in Titan, an internal Microsoft analytics service. To get there, he claims he used an unsigned JWT token and a very simple username: admin. Here’s what matters.

This 16-year-old security researcher, known as Faav, published a blog post sharing technical details about his discovery. The post comes after Microsoft already patched the flaw on September 9, 2026, following a report filed on September 5. The finding also earned him a $5,000 reward through Microsoft’s bug bounty program.

It all started on August 25, 2026.

Antares, the AI-based vulnerability hunting tool (Claude, Codex) that Faav built, spotted Microsoft Titan. The web interface shows a “VPN REQUIRED” page to anyone outside Microsoft. But the API itself runs on an Azure Cloud Services host reachable from the Internet, with a public Swagger file that documents four routes. That makes it possible to understand how the API works, and one of them, /v2/Query, accepts raw SQL queries.

Source : blog.faav.net

But what should he query? Faav found the answer in the Wayback Machine by identifying valid table names in 2023 snapshots. As they say, nothing on the web ever really disappears…

Microsoft Titan is not unknown territory: in January 2023, Microsoft presented this self-service analytics platform during a meetup organized by ClickHouse. Developed by the WebXT division (Bing, Edge, MSN, Microsoft Advertising), it relies on ClickHouse and Apache Superset, and at the time had more than 2,500 monthly users and over 100,000 queries per day.

An Unsigned Token and an admin User

At this stage of his progress, Faav still couldn’t query the API, because without an authentication token it returned a 401 error. How do you obtain a valid token?

To try to bypass this restriction, his Antares tool starts with a token issued for a test Entra ID tenant outside Microsoft, then modifies its contents field by field: the tenant, the audience, and finally the application ID. With each attempt, Titan moves on to the next check, while the token’s signature never changes. The service reads what the token claims, without ever verifying who issued it. That’s a serious issue.

Faav then takes the logic all the way: he forges a token with no signature at all, specifying the none algorithm in the header. Titan accepts it and lets it pass to the final step, user lookup. That’s where the AI failed to go any further, notably because it kept trying email addresses: which makes sense for a field named upn (User Principal Name).

Then Faav had an idea: what if I just entered admin? Bingo: Titan was using that field as a local username, and admin matched the platform’s first account, which had the administrator role. The SQL query runs without a hitch, using the JWT token he forged earlier. “Sometimes, the answer really is just admin”, the researcher jokes.

Employees, Bing, and 17.3 Trillion Rows

With administrator rights in hand, Faav first queried the TestData database, which lives up to its name: it contains only test data. But by listing the available databases (a simple SHOW DATABASES in SQL), he stumbled upon the platform’s metadata database, and that’s where the real data was stored. Among the items identified:

  • User accounts: around 25,000 account and email records, with login history.
  • Employee data: 17,990 email addresses and 15,001 organization-related records (job title, department, hierarchy), limited to employees associated with Titan.
  • Analytics assets: 355 database configurations, 24,569 dashboards, 425,891 charts, and 27,347 dataset definitions.
  • Bing data: two queries limited to one row each confirmed access to search analytics data (MUID identifiers, country- or state-level location).
Source : blog.faav.net

The 17.3 trillion figure corresponds to the sum of the metadata from 17 ClickHouse databases, reached through 30 still-active routing values. Faav notes that this estimate likely includes historical, duplicated, or derived data. He says he did not extract any customer data and did not correlate any records across datasets. So there was no data breach as such, but it could have hit Microsoft hard.

Today, it’s Microsoft. But this vulnerability found in the Titan service should warn everyone building services based on JWTs.

author avatar
Florian Burnel Co-founder of IT-Connect
Systems and network engineer, co-founder of IT-Connect and Microsoft MVP "Cloud and Datacenter Management". I'd like to share my experience and discoveries through my articles. I'm a generalist with a particular interest in Microsoft solutions and scripting. Enjoy your reading.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.