فحص أمان قاعدة بيانات Supabase — تقرير بالثغرات مرتب حسب الخطورة
الوصف
هل RLS مفعّلة عندك ومتأكد إن بياناتك محمية؟ في الغالب فيه حاجات عدّاها.
أنا بشغّل نظام نقاط بيع على Supabase في محلات حقيقية، وعملت عليه تلات مراجعات أمنية. لقيت ٦ ثغرات — وكل واحدة فيهم عدّت من سياسات RLS كانت مكتوبة صح. لأن RLS طبقة واحدة: تحتيها نظام صلاحيات Postgres، وفوقيها PostgREST، والتسريبات بتعيش في اللحامات بينهم.
اللي هفحصه في مشروعك:
• جداول الـRLS مقفولة عليها، أو مفتوحة من غير أي policy
• دوال يقدر دور الزوار (anon) يناديها — والمنع منه بيفشل في صمت لسبب هشرحهولك
• دوال SECURITY DEFINER من غير search_path مثبّت
• views بتتخطى الـRLS، وأخطر: views اتعملت للقراءة وطلعت قابلة للكتابة
• منح على مستوى الجدول بتخلّي أي عمود جديد تضيفه قابل للكتابة من المتصفح
اللي هتستلمه:
تقرير مكتوب بكل حاجة محتاجة نظرة، مرتبة حسب الخطورة الحقيقية — يعني إيه اللي حد يقدر يعمله فعلًا النهاردة، مش إيه اللي شكله وحش. وجنب كل واحدة الإصلاح، والاستعلام اللي تتأكد بيه إن الإصلاح نزل فعلًا. ولستة بالفحوصات اللي عدّت، عشان أي تغيير جاي يكسر واحدة فيها يبان.
الفحص كله قراءة — مابيغيّرش ولا صف في قاعدتك، ومحتاج صلاحية قراءة بس.
وأداة الفحص اللي بستعملها منشورة مفتوحة المصدر للكل. شغّلها بنفسك قبل ما تطلب أي حاجة مني:
github.com/basildraz-arch/supabase-rls-audit
ولو طلعت كلها أصفار، هقولك كده وماتطلبش الخدمة. مش هبيعلك مراجعة انت مش محتاجها.
البائع
معلومات
خدمات أخري للبائع
العربية
English