FixVibe

// docs / baas security / umbrella scanner

ماسح التهيئة الخاطئة لـ BaaS: اعثر على مسارات البيانات العامة قبل المستخدمين

موفِّرات Backend-as-a-Service — Supabase وFirebase وClerk وAuth0 وAppwrite وConvex — جميعها تفشل أمنيًا بنفس الشكل: تُصدر المنصة افتراضيات معقولة، يطلب المطور (أو أداة البرمجة بالذكاء الاصطناعي) اختصارًا، ويفتح مسار عام بين مهاجم غير مُصادق وبيانات العميل. ماسح التهيئة الخاطئة لـ BaaS هو الأداة الوحيدة التي تستكشف ذلك المسار من الخارج بالطريقة التي قد يفعلها المهاجم. يُحدِّد هذا المقال فئات التهيئة الخاطئة الخمس المتكررة، ويشرح كيف يعمل مسح FixVibe الشامل لـ BaaS، ويُقارن الموفِّرين الأربعة الرئيسيين، ويُقارن الماسح المدرك لـ BaaS بأدوات DAST العامة.

لماذا تأخذ تهيئات BaaS الخاطئة شكلًا متكررًا

كل منصة BaaS تتبع نفس الهندسة المعمارية: خلفية مُدارة مع SDK عميل رفيع يتحدث إليها من المتصفح. يحتاج العميل الموجه للمتصفح إلى بعض بيانات الاعتماد — مفتاح anon، مفتاح قابل للنشر، معرِّف مشروع Firebase — لتعريف نفسه للخلفية. هذه بيانات الاعتماد عامة بشكل مقصود؛ تعتمد سلامة الهندسة على ضوابط الوصول على مستوى المنصة (RLS، القواعد، قوائم السماح) القيام بعملها.

تبني أدوات البرمجة بالذكاء الاصطناعي فوق هذه الهندسة دون استيعاب طبقة ضوابط المنصة. تربط SDK العميل بشكل صحيح، وتقبل قواعد المنصة الافتراضية المتساهلة (التي توجد لصداقة الدروس)، وتُطلق. الشكل المتكرر هو: بيانات اعتماد عامة + قاعدة افتراضية متساهلة + تجاوز مفقود = كشف بيانات. فئات التهيئة الخاطئة الخمس أدناه كلها متغيرات من هذا الشكل.

فئات التهيئة الخاطئة الخمس المتكررة

تظهر هذه عبر كل موفِّر BaaS. يغطي المسح الكامل جميع الخمس مقابل كل موفِّر مستخدم:

الفئة 1: مفتاح خاطئ في حزمة المتصفح

يشحن المتصفح المفتاح السري/المسؤول (Supabase service_role، مفتاح Firebase Admin SDK الخاص، Clerk sk_*، سر عميل Auth0) بدلًا من المكافئ العام/anon. يصبح المتصفح عميل مسؤول غير مقيَّد. مغطى بـ فحص أسرار الحزمة من FixVibe.

الفئة 2: طبقة التحكم في الوصول مُعطَّلة أو متساهلة

RLS مُعطَّل، قواعد Firebase if true، قائمة callback في Auth0 ببطاقات برية. بيانات الاعتماد في المتصفح هي الصحيحة — ولكن الحدود على مستوى المنصة التي كان من المفترض أن تقيدها لا تقوم بعملها.

الفئة 3: قراءات مجهولة لموارد حساسة

مجموعات Firestore قابلة للقراءة المجهولة، دلاء تخزين Supabase قابلة للسرد المجهول، API إدارة Auth0 قابل للوصول المجهول. يسأل المسح: "بدون بيانات اعتماد، ماذا يمكنني قراءته؟"

الفئة 4: أثار الوضع التجريبي في الإنتاج

مفاتيح تجريبية (pk_test_* وsb_test_*) في نشر إنتاج؛ تطبيقات Firebase في وضع التطوير قابلة للوصول من النطاق الحي؛ تطبيقات Auth0 لمستأجر تجريبي بإعدادات أضعف من الإنتاج. يقارن المسح مفاتيح وقت التشغيل بالبادئات المتوقعة للإنتاج.

الفئة 5: التحقق من توقيع webhook مفقود

Clerk webhooks, Stripe webhooks, Supabase webhooks all sign their payloads. A handler that doesn't verify the signature is a database-write primitive for any attacker who guesses the URL.

كيف يعمل مسح FixVibe الشامل لـ BaaS

تعمل مرحلة BaaS في FixVibe في ثلاث مراحل، كل واحدة تُنتج نتائج متميزة:

  1. Stage 1 — find the providers. FixVibe loads the deployed app and identifies which BaaS providers it talks to — Supabase, Firebase, Clerk, Auth0 and others — from the configuration the browser receives.
  2. Stage 2 — provider checks. For each provider found, FixVibe runs that provider's checks: open Supabase tables, open Firebase rules, Clerk and Auth0 key exposure, and service-tier credentials in the bundle. Each provider is checked independently — a Supabase finding doesn't block the Firebase scan.
  3. المرحلة 3 — ربط عبر الموفِّرين. يُربط الماسح بين النتائج. مفتاح Supabase service-role مُسرَّب إلى جانب RLS مفقود هو أكثر خطورة من أي نتيجة بمفردها — يُسلِّط التقرير الضوء على هذا. موفِّرو هوية متعددون (Clerk + Auth0 + مصادقة مخصصة) في نفس التطبيق هو نتيجة بنيوية مُؤشَّرة للمراجعة.

كل فحص سلبي: قراءة مجهولة واحدة على الأكثر لكل مورد، مع تسجيل شكل الاستجابة ولكن محتويات الصفوف لا تُقسَّم على صفحات أو تُخزَّن أبدًا. فحوصات الكتابة والتعديل مشروطة بالتحقق من ملكية النطاق — لا تُشغَّل أبدًا على أهداف غير مُتحقَّق منها.

ما يجده الماسح لكل موفِّر

لكل موفِّر BaaS سطح مختلف واستراتيجية مسح مختلفة. إليك ما هو مغطى:

  • Supabase: RLS مفقود على الجداول، دلاء تخزين قابلة للسرد المجهول، JWT service_role مُسرَّب أو مفتاح sb_secret_* في الحزمة، مخططات مكشوفة عبر سرد OpenAPI مجهول. راجع ماسح Supabase RLS وقائمة التحقق للتخزين.
  • Firebase: قواعد if true على Firestore وRealtime Database وCloud Storage؛ دلاء Storage قابلة للسرد المجهول؛ فرض App Check مفقود. راجع ماسح قواعد Firebase وشرح قاعدة if-true.
  • Clerk: مفاتيح سرية sk_* مُدمَّجة، pk_test_* في الإنتاج، التحقق من توقيع webhook مفقود، أصول مسموح بها ببطاقات برية. راجع قائمة التحقق لـ Clerk.
  • Auth0: أسرار عميل مُدمَّجة، منحة Implicit مُفعَّلة، عناوين URL لـ callback / logout ببطاقات برية، PKCE مفقود على SPAs. راجع قائمة التحقق لـ Auth0.

كيف يُقارَن ماسح BaaS بأدوات DAST وSAST العامة

ماسح مُدرك لـ BaaS يقوم بعمل محدد لا تقوم به الأدوات الأخرى. المقارنة:

الجانبFixVibe (DAST مُدرك لـ BaaS)DAST عام (Burp / ZAP)SAST / SCA (سنيك / سيمغريب)
تغطية BaaSفحوصات أصلية لـ Supabase وFirebase وClerk وAuth0 وAppwriteزحف ويب عام؛ لا فحوصات خاصة بالموفِّرتحليل ساكن للمستودع فقط؛ لا تحقق من الإنتاج
وقت الإعدادURL → run → results usually in under a minuteساعات: كوِّن العنكبوت والمصادقة والنطاقيوم: تكامل مع CI للمستودع
ما يثبتهكشف وقت تشغيل الإنتاج بأدلة على مستوى HTTPثغرات تطبيق ويب (XSS، SQLi)؛ BaaS عبر تكوين يدويأنماط كود قد تُنشر أو لا تُنشر
فحص حزمة JavaScriptEvery shipped chunk, with provider-aware key detectionمحدود — grep قائم على السلاسل فقطنعم، ولكن فقط من جانب المستودع، لا المنشور
مسح مستمرشهريًا / عند النشر عبر API + MCPيدوي؛ كوِّن الجدول الزمني بنفسكلكل التزام (جيد للكود، أعمى لوقت التشغيل)
السعر للفرد / الفريق الصغيرFree plan; paid plans for active and repo scansBurp Suite Professional is paid (Community Edition is free); ZAP is free and open sourceSnyk and Semgrep both offer free tiers; paid tiers add scale

Where a BaaS scan fits

A BaaS-aware scan checks what your live app exposes. Pair it with FixVibe's GitHub repo scans or another code scanner for source and dependency issues, and with a manual penetration test before a major launch or compliance audit.

الأسئلة الشائعة

هل يعمل المسح الشامل إذا كان تطبيقي يستخدم موفِّري BaaS (مثلًا، Supabase + Clerk)؟

نعم — بصمات الموفِّر والفحوصات لكل موفِّر مستقلة. يكتشف الماسح كليهما، ويُشغِّل مجموعتي الفحوصات، ويُبلِّغ عن الروابط عبر الموفِّرين (مثلًا، قالب JWT لـ Supabase من Clerk يشحن email كادعاء إلى جانب RLS مفقود).

كيف يختلف هذا عن تشغيل Burp Suite Pro على تطبيقي؟

Burp هو ورشة عمل DAST عامة. خارج الصندوق، Burp لا يعرف ما هو PostgREST أو Firestore أو مسار callback لـ Auth0 — عليك تكوين النطاق يدويًا، وكتابة الإضافات، وتفسير الاستجابات. يأتي FixVibe بفحوصات BaaS مدمجة وتنسيق أدلة بشكل BaaS. Burp يتفوق في تغطية تطبيقات الويب العامة (XSS، SQLi، منطق الأعمال)؛ FixVibe يتفوق في نتائج خاصة بـ BaaS.

ماذا عن App Check (Firebase) أو الإثبات (Apple / Google)؟

App Check يجعل عمليات المسح الخارجية الانتهازية تُرجع 403 في كل فحص — النتيجة الصحيحة لروبوت ضار. مسح FixVibe من عميل غير مُثبَت يتصرف بنفس الطريقة. إذا كان لديك App Check مُفعَّل ولا يزال FixVibe يُبلِّغ عن نتائج، فهذا يعني أن قواعدك مفتوحة للعملاء المُثبَتين أيضًا، وهو الخطر الحقيقي. App Check + قواعد صحيحة هو نمط الدفاع في العمق.

هل يمكن للماسح التحقق من إصلاحي؟

Yes — re-run after applying the fix. Findings keep the same identity across runs, so a finding that was open in run 1 and absent in run 2 is proof the fix landed.

الخطوات التالية

شغِّل مسح FixVibe مجاني على عنوان URL الإنتاج — تأتي فحوصات مرحلة BaaS مع كل خطة، بما في ذلك الطبقة المجانية. للتعمقات الخاصة بالموفِّر، تُغطي المقالات الفردية في هذا القسم كل موفِّر بالتفصيل: Supabase RLS وكشف مفتاح Supabase الخدمي وتخزين Supabase وقواعد Firebase وFirebase if-true وClerk وAuth0.

// افحص سطح baas الخاص بك

اعثر على الجدول المفتوح قبل أن يفعل ذلك شخص آخر.

أدخل عنوان URL للإنتاج. سيُعدِّد FixVibe موفّري BaaS الذين يتحدث تطبيقك معهم، ويُحدِّد بصمة نقاط النهاية العامة لديهم، ويُبلغ عما يستطيع عميل غير مصادق عليه قراءته أو الكتابة فيه. مجاني، بدون تثبيت، بدون بطاقة.

  • الباقة المجانية — 3 عمليات مسح شهريًا، بدون بطاقة عند التسجيل.
  • بصمة BaaS سلبية — لا حاجة للتحقق من النطاق.
  • Supabase وFirebase وClerk وAuth0 وAppwrite والمزيد.
  • Coding-agent prompts where code/config applies, plus provider-console steps for hosted BaaS fixes.
ابدأ مسح BaaS مجاني →

لا حاجة للتسجيل

ماسح التهيئة الخاطئة لـ BaaS: اعثر على مسارات البيانات العامة قبل المستخدمين · FixVibe