# باحث عمره 16 عامًا وصل إلى 17.3 تريليون صف في خدمة Titan الداخلية لدى Microsoft عبر توكن بلا توقيع

> **المغزى:** الثغرة لم تكن اختراقًا عبقريًا بل فحصًا ناقصًا واحدًا: خدمة تحققت من كل ما في التوكن إلا توقيعه، وهو خطأ يمكن أن يقع في أي كود تحقق يكتبه فريق بنفسه.

- المصدر: المغزى (https://almaghza.com/a/2026-10-01-microsoft-titan-jwt-alg-none/)
- التاريخ: 20 ربيع الآخر - 1 أكتوبر 2026 (2026-10-01)
- القسم: أمن سيبراني
- الوسوم: Microsoft، JWT، الأمن السيبراني، الثغرات الأمنية

نشر باحث أمني عمره 16 عامًا، يُعرف باسم Faav، تفاصيل ثغرة في خدمة تحليلات داخلية لدى Microsoft اسمها Titan. وبحسب مقاله، كانت الثغرة تتيح الوصول إلى 17.3 تريليون صف موزعة على 9,863 جدولًا و17 قاعدة بيانات. وجرى العمل بين 25 أغسطس و5 سبتمبر 2026، وأبلغ Microsoft في 5 سبتمبر، فأغلقت الشركة الثغرة خلال 4 أيام ومنحته مكافأة قدرها 5,000 دولار.

بدأت القصة بـ endpoint اسمه /v2/Query يقبل استعلامات SQL، عثر عليه الباحث عبر لقطات أرشيفية قديمة للموقع. لكن الوصول الفعلي جاء من طريقة التحقق من الهوية.

فالخدمة تعتمد على JWT، وهو توكن يخبر الخادم بهوية صاحب الطلب. وأول جزء فيه header يحدد خوارزمية التوقيع عبر قيمة اسمها alg. وإذا وُضعت فيها القيمة none فمعناها أن التوكن غير موقّع أصلًا.

وكانت Titan تتحقق من محتوى التوكن بدقة: الـ tenant والـ audience والـ application ID، لكنها لم تتحقق من التوقيع نفسه. فقبلت توكنًا بلا توقيع، وصار في وسع حامله أن يكتب فيه ما يشاء. وغيّر الباحث خانة upn من بريد إلكتروني إلى كلمة admin، وكانت هذه الكلمة مرتبطة بحساب مدير محلي.

ومن بين ما كان مكشوفًا 25,000 سجل حسابات بأسماء وعناوين بريد، و17,990 عنوان بريد لموظفين.

وما يجعل القصة قريبة من أي فريق برمجي أنه لا يوجد فيها zero-day ولا تقنية معقدة، بل فحص ناقص. والفرق بين نظام محصّن وآخر مكشوف قد يكون سطرًا واحدًا: المكتبة التي تفرض الخوارزمية التي حددها المطور تغلق هذا الباب، والمكتبة التي تقرأ الخوارزمية من التوكن نفسه تترك القرار لمن يرسل الطلب.

## المصادر

- [مقال الباحث Faav بالتفاصيل والأرقام](https://blog.faav.net/how-i-couldve-accessed-17-trillion-microsoft-records)
- [خلفية عن مشكلة alg:none في مكتبات JWT من Auth0](https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/)
