
Claude Skill जो आपके प्रोजेक्ट्स में RLS मिसकॉन्फ़िगरेशन, एक्सपोज़्ड कुंजियाँ, auth बायपास और स्टोरेज कमज़ोरियों का ऑडिट करता है। CVE-2025-48757 और 10 सुरक्षा अध्ययनों से प्राप्त 27 एंटी-पैटर्न। प्रोडक्शन के लिए सुरक्षित।
एक Claude स्किल जो आपके डेटाबेस बैकएंड की सुरक्षा कमज़ोरियों के लिए ऑडिट करती है।
इसे Claude Code, Cursor, या किसी भी Claude-संचालित वातावरण में डालें। "audit my database" कहें और सटीक फिक्स कोड के साथ एक व्यापक सुरक्षा रिपोर्ट पाएँ — दिनों में नहीं, मिनटों में।
170+ Lovable ऐप्स का उल्लंघन हुआ। YC स्टार्टअप्स में 20.1M पंक्तियाँ उजागर हुईं। ~87,000 MongoDB इंस्टेंस MongoBleed (CVE-2025-14847, CISA KEV) के प्रति संवेदनशील रह गए। 2025 की एक ही घटना में 1.8M Firebase पासवर्ड लीक हुए। 45% AI-जनित कोड OWASP Top 10 कमज़ोरियाँ पेश करता है। Database Sentinel जाँचता है कि आपका सुरक्षा कॉन्फ़िगरेशन वास्तव में काम करता है — न केवल यह कि वह मौजूद है।
Database Sentinel आपके प्रोजेक्ट द्वारा उपयोग किए जाने वाले किसी भी बैकएंड पर 7-चरणीय सुरक्षा ऑडिट करता है:
tx=rollback, कैनरी कलेक्शन, ऑप्ट-इन MongoBleed डिटेक्टर)क्रॉस-बैकएंड तर्क उन समस्याओं को पकड़ता है जो सिंगल-बैकएंड स्कैनर चूक जाते हैं (जैसे, एक Firebase Auth UID जिस पर Postgres API बिना JWT सत्यापन के भरोसा करती है)।
| चरण | बैकएंड | स्थिति |
|---|---|---|
| 1 | Supabase | ✅ जारी |
| 2 | MongoDB (self-hosted + Atlas) | ✅ जारी |
| 3 | Firebase (Firestore / RTDB / Storage / Functions / Remote Config) | 🚧 नियोजित |
| 4 | PostgreSQL (self-hosted, pgBouncer सहित) | 🚧 नियोजित |
| 5 | MySQL (self-hosted) | 🚧 नियोजित |
| 6 | क्रॉस-बैकएंड इंटरैक्शन विश्लेषण | 🚧 नियोजित |
| 7 | वितरण + पॉलिश | 🚧 नियोजित |
Database Sentinel पहले Supabase Sentinel (सिंगल-बैकएंड) था। यह पुनर्नामकरण मल्टी-बैकएंड विस्तार के Phase 1 के दौरान हुआ। compat/supabase-sentinel/ पर एक बैकवर्ड्स-संगत शिम पुराने स्किल नाम को कम से कम अगली मामूली रिलीज़ तक संरक्षित रखता है — मौजूदा उपयोगकर्ताओं को कोई प्रतिगमन नहीं दिखता।
स्किल को अपने प्रोजेक्ट की skills निर्देशिका में, या किसी केंद्रीय निर्देशिका में क्लोन करें:
git clone https://github.com/Farenhytee/database-sentinel.git ~/claude-skills/database-sentinel
फिर Claude से पूछें:
Audit my database
Database Sentinel पता लगाएगा कि आपका प्रोजेक्ट कौन से बैकएंड उपयोग करता है, प्रासंगिक ऑडिट चलाएगा और एक एकीकृत रिपोर्ट तैयार करेगा। यदि कई बैकएंड मौजूद हैं (Firebase Auth + Postgres डेटा, आदि), तो Phase 6 आने पर रिपोर्ट में एक क्रॉस-बैकएंड इंटरैक्शन अनुभाग शामिल होगा।
यदि आप केवल किसी विशिष्ट बैकएंड का ऑडिट करना चाहते हैं, तो स्पष्ट रूप से पूछें:
Audit my Supabase project
Audit my MongoDB instance
डिस्पैचर दायरे को सीमित कर देता है।
SKILL.md की सामग्री और प्रासंगिक backends/<name>/workflow.md को अपने सिस्टम प्रॉम्प्ट में कॉपी करें। अपने क्रेडेंशियल्स के साथ 7 चरणों से गुज़रें।
| गंभीरता | पैटर्न | विवरण |
|---|---|---|
| 🔴 क्रिटिकल | SB-001 RLS_DISABLED | बिना Row-Level Security वाली तालिकाएँ — इंटरनेट के लिए पूरी तरह उजागर |
| 🔴 क्रिटिकल | SB-002 SERVICE_ROLE_EXPOSED | फ्रंटएंड कोड में service_role कुंजी — सभी सुरक्षा को बायपास करती है |
| 🔴 क्रिटिकल | SB-003 POLICIES_BUT_NO_RLS | पॉलिसियाँ लिखी गईं लेकिन RLS कभी सक्षम नहीं — झूठी सुरक्षा |
| 🔴 क्रिटिकल | SB-005 WRITE_USING_TRUE | USING(true) के साथ INSERT/UPDATE/DELETE — कोई भी संशोधित कर सकता है |
| 🟠 उच्च | SB-006 USING_TRUE_SELECT | संवेदनशील तालिकाओं पर सभी पंक्तियाँ अनाम उपयोगकर्ताओं द्वारा पठनीय |
| 🟠 उच्च | SB-007 VIEW_NO_SECURITY_INVOKER | व्यू RLS को बायपास करते हैं, सुपरयूज़र के रूप में चलते हैं |
| 🟠 उच्च | SB-008 SECURITY_DEFINER_EXPOSED | public स्कीमा में फ़ंक्शन RLS को बायपास करते हैं, API के माध्यम से कॉल करने योग्य |
| 🟠 उच्च | SB-009 USER_METADATA_IN_POLICY | पॉलिसियाँ उपयोगकर्ता-संशोधनीय मेटाडेटा का संदर्भ देती हैं — विशेषाधिकार वृद्धि |
| 🟠 उच्च | SB-010 UPDATE_NO_WITHCHECK | WITH CHECK के बिना UPDATE पॉलिसियाँ — मास असाइनमेंट जोखिम |
| 🟠 उच्च | SB-011 GHOST_AUTH | अपुष्ट ईमेल साइनअप प्रमाणित सत्र प्रदान करते हैं |
| 🟠 उच्च | SB-012 STORAGE_NO_RLS | स्टोरेज बकेट में एक्सेस कंट्रोल पॉलिसियाँ अनुपस्थित |
| 🟠 उच्च | SB-013 JWT_SECRET_EXPOSED | JWT साइनिंग सीक्रेट लीक — किसी भी उपयोगकर्ता का टोकन जाली बना सकता है |
| 🟡 मध्यम | + 15 और पैटर्न | backends/supabase/anti-patterns.md देखें |
| गंभीरता | पैटर्न | विवरण |
|---|---|---|
| 🔴 क्रिटिकल | MG-SH-001 MongoBleed (CVE-2025-14847, CISA KEV) | विशेष-निर्मित संपीड़ित पैकेट के माध्यम से प्री-ऑथ हीप मेमोरी प्रकटीकरण। प्रकटीकरण के समय ~87K इंस्टेंस उजागर। |
| 🔴 क्रिटिकल | MG-SH-002 Auth अक्षम | बिना प्रमाणीकरण के चल रहा mongod — Meow रैंसमवेयर हमला सतह |
| 🔴 क्रिटिकल | MG-SH-003 Internet-bound mongod | --bind_ip_all + 27017 पहुँच योग्य — पूर्ण अधिग्रहण के लिए MG-SH-002 के साथ युग्मित |
| 🔴 क्रिटिकल | MG-AT-001 Atlas allowlist 0.0.0.0/0 | Atlas क्लस्टर इंटरनेट पर कहीं से भी पहुँच योग्य |
| 🟠 उच्च | MG-SH-004 localhost auth बायपास + कंटेनर exec | enableLocalhostAuthBypass true + docker exec एक्सेस |
| 🟠 उच्च | MG-SH-005 सर्वर-साइड JS सक्षम | $where / $function / mapReduce पहुँच योग्य — NoSQL-RCE सतह |
| 🟠 उच्च | MG-SH-006 TLS आवश्यक नहीं | वायर पर प्लेनटेक्स्ट ट्रैफ़िक |
| 🟠 उच्च | MG-SH-007 ऐप उपयोगकर्ता पर विशेषाधिकृत भूमिका | ऐप root / dbAdminAnyDatabase आदि के रूप में कनेक्ट होता है |
| 🟠 उच्च | MG-SH-008 स्व-संशोधनीय भूमिका दस्तावेज़ | findByIdAndUpdate(id, req.body) + कोई वैलिडेटर नहीं + role फ़ील्ड |
| 🟠 उच्च | MG-AT-002 DB पास-थ्रू के रूप में Atlas Function | HTTPS पर NoSQL इंजेक्शन — Data-API-अवमूल्यन के बाद प्रसारित |
| 🟠 उच्च | MG-AT-003 कोड में अभी भी Atlas Data API | 30 सितंबर 2025 को अवमूल्यित; टूटा हुआ और संभवतः कम-ऑडिटेड Functions में स्थानांतरित |
| 🟡 मध्यम | MG-SH-009 Mongoose < 8.9.5 | CVE-2024-53900 / CVE-2025-23061 — populate-match $where इंजेक्शन |
| 🟡 मध्यम | + 8 और पैटर्न | backends/mongodb/anti-patterns.md देखें |
MongoBleed नेटवर्क प्रोब (backends/mongodb/mongobleed-probe.md) एक सिंगल-पैकेट डिटेक्टर प्रदान करता है जो रनटाइम पर शोषण-क्षमता की पुष्टि करता है — mongo:7.0.20 (संवेदनशील) और mongo:7.0.28 (पैच्ड) के विरुद्ध सत्यापित। यह केवल-पठनीय है, दो ऑप्ट-इन पुष्टिकरणों के पीछे गेटेड है, और कभी भी सामग्री नहीं निकालता।
╔════════════════════════════════════════════════════════╗
║ SENTINEL SECURITY AUDIT ║
╠════════════════════════════════════════════════════════╣
║ Backends: supabase, mongodb ║
║ Scanned: 2026-04-30 14:30 UTC ║
║ Score: 0/100 🔴 ║
║ Summary: 2 backends, 8 findings (3C / 4H / 1M) ║
╚════════════════════════════════════════════════════════╝
─────────────────────────────────────────────────────────
Supabase 35/100 🔴
─────────────────────────────────────────────────────────
🔴 CRITICAL — public.users: RLS Disabled [SB-001]