🧠 Lagune की विशेषज्ञताएँ सुरक्षा ज्ञान के केंद्रित मॉड्यूल हैं, जो किसी एक प्रोग्रामिंग भाषा से बंधे नहीं हैं और डिफ़ॉल्ट रूप से कभी लोड नहीं होते, सिर्फ़ ज़रूरत पड़ने पर ही लोड होते हैं। ये कमांड नहीं हैं। आपके प्रोजेक्ट का कैटलॉग वह सेट है जिसका प्रोजेक्ट इस्तेमाल करता है: उसकी श्रेणियों की बिल्ट-इन विशेषज्ञताएँ और उसकी अपनी विशेषज्ञताएँ। detect और verify चरण चलते समय इनका सहारा लेते हैं, और आप भी किसी भी समय कोई विशेषज्ञता सीधे लोड कर सकते हैं।
- परिचय
- यह कैसे काम करता है
एक्सेस कंट्रोल
पक्का करती है कि लोग सिर्फ़ वही देख और कर सकें जिसकी उन्हें अनुमति है, ताकि कोई भी सिर्फ़ एक लिंक या ID बदलकर किसी दूसरे यूज़र के डेटा या सिर्फ़ एडमिन के लिए बने कामों तक न पहुँच सके।
npx lagune read catalog access-controlAPI एंडपॉइंट
आपके ऐप के बाहरी दुनिया के लिए खुले दरवाज़ों की जाँच करती है, ताकि अनजान लोगों की रिक्वेस्ट निजी डेटा न निकाल सकें या ऐसे काम न करवा सकें जो उन्हें नहीं करवाने चाहिए।
npx lagune read catalog api-endpointब्राउज़र
आपके विज़िटर्स के ब्राउज़र में चलने वाली चीज़ों की रखवाली करती है, ताकि कोई हमलावर ऐसा कोड न डाल सके जो लॉगिन चुरा ले या आपके यूज़र्स जो देखते और क्लिक करते हैं, उसे हाईजैक कर ले।
npx lagune read catalog browserC / C++
लो-लेवल मेमोरी की उन ग़लतियों को पकड़ती है जिनसे हमलावर प्रोग्राम को क्रैश कर सकते हैं या आपके सर्वर पर अपना कोड चला सकते हैं।
npx lagune read catalog c-cppकंटेनर
आपका ऐप कैसे पैकेज और डिप्लॉय होता है, इसकी समीक्षा करती है, ताकि सेंध लगने पर नुक़सान वहीं तक सीमित रहे और हमलावर के हाथ पूरी मशीन न लगे।
npx lagune read catalog containerक्रेडेंशियल एंडपॉइंट
लॉगिन, साइनअप और पासवर्ड रीसेट फ़्लो की रक्षा करती है, ताकि हमलावर पासवर्ड का अंदाज़ा न लगा सकें, अकाउंट पर क़ब्ज़ा न कर सकें या किसी और का पासवर्ड रीसेट न कर सकें।
npx lagune read catalog credential-endpointक्रिप्टो
पक्का करती है कि संवेदनशील डेटा ठीक से एन्क्रिप्ट हो, ताकि पासवर्ड, टोकन और निजी जानकारी लीक होने पर भी पढ़ी न जा सके।
npx lagune read catalog cryptoCSV
एक्सपोर्ट की गई स्प्रेडशीट को मज़बूत करती है, ताकि डाउनलोड की गई फ़ाइल खोलने पर किसी के कंप्यूटर पर चुपचाप कोई नुक़सानदेह कमांड चलने की संभावना बहुत कम हो जाए।
npx lagune read catalog csv.NET
.NET ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, जिनसे कोई हमलावर आपके सर्वर पर अपना कोड चला सकता है।
npx lagune read catalog dotnetफ़ेडरेशन
"Google, Microsoft वग़ैरह से साइन इन करें" को मज़बूत करती है, ताकि किसी हमलावर के लिए किसी यूज़र का रूप धरना या किसी पराए अकाउंट में घुसना कहीं ज़्यादा मुश्किल हो जाए।
npx lagune read catalog federationGo
Go ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, ख़ासकर उन बारीक बग को जो असली ट्रैफ़िक में सामने आते हैं।
npx lagune read catalog goHTTP रिक्वेस्ट
हर वेब रिक्वेस्ट के साथ आने वाले डेटा की जाँच करती है, ताकि छिपा हुआ या दुर्भावनापूर्ण इनपुट आपके ऐप से ग़लत काम न करवा सके।
npx lagune read catalog http-requestइन्फ़्रास्ट्रक्चर
आपके ऐप को बिल्ड और डिप्लॉय करने वाली फ़ाइलों की समीक्षा करती है, जैसे Dockerfile, Terraform और CI वर्कफ़्लो, ताकि एक ढीली सेटिंग पूरे एनवायरनमेंट को उजागर न कर सके।
npx lagune read catalog infraइंटरप्रेटर
यूज़र के इनपुट को कमांड की तरह चलने से रोकती है, ताकि कोई फ़ॉर्म फ़ील्ड या अपलोड आपके सर्वर से हमलावर के निर्देश न चलवा सके।
npx lagune read catalog interpreterJava
Java ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, जिनसे कोई हमलावर आपके सर्वर पर अपना कोड चला सकता है।
npx lagune read catalog javaJavaScript
JavaScript और Node ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, अविश्वसनीय कोड चलाने से लेकर उन फ़ाइलों को पढ़ने तक जिन्हें नहीं पढ़ना चाहिए।
npx lagune read catalog javascriptLLM
AI मॉडल पर बने फ़ीचर्स की रक्षा करती है, ताकि चालाकी से लिखा गया कोई मैसेज AI को बहकाकर डेटा लीक न करवा सके या जुड़े हुए टूल का ग़लत इस्तेमाल न करवा सके।
npx lagune read catalog llmनेटवर्क
जाँचती है कि आपका ऐप दूसरी सर्विसेज़ से कैसे बात करता है, ताकि हमलावर उसे धोखे से अपने नियंत्रण वाली कोई चीज़ लाने या उस पर भरोसा करने के लिए न फँसा सके।
npx lagune read catalog networkपाथ
हमलावरों को आपके सर्वर की फ़ाइलों में भटकने से रोकती है, ताकि वे फ़ाइल के नाम से छेड़छाड़ करके निजी फ़ाइलें न पढ़ सकें या ज़रूरी फ़ाइलों को ओवरराइट न कर सकें।
npx lagune read catalog pathपेमेंट
चेकआउट और बिलिंग को मज़बूत करती है, जिससे क़ीमतों से छेड़छाड़ करना, पेमेंट से बचना या किसी चार्ज को दोबारा चलाना कहीं ज़्यादा मुश्किल हो जाता है।
npx lagune read catalog paymentPHP
PHP ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, जिनसे कोई हमलावर अपना कोड चला सकता है या लॉगिन को बायपास कर सकता है।
npx lagune read catalog phpPython
Python ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, ख़ासकर अविश्वसनीय डेटा लोड करना, जिससे हमलावर का कोड चल सकता है।
npx lagune read catalog pythonRegex
टेक्स्ट की जाँच को मज़बूत करती है ताकि वह कुशल बनी रहे, जिससे किसी दुर्भावनापूर्ण इनपुट के लिए आपके ऐप पर ज़्यादा बोझ डालकर उसे ठप करना कहीं ज़्यादा मुश्किल हो जाता है।
npx lagune read catalog regexRuby
Ruby ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, ख़ासकर अविश्वसनीय डेटा लोड करना, जिससे हमलावर का कोड चल सकता है।
npx lagune read catalog rubyRust
Rust ऐप की ख़ास सुरक्षा ग़लतियों को कवर करती है, ख़ासकर unsafe कोड, जो मेमोरी को ख़राब कर सकता है या प्रोग्राम को क्रैश कर सकता है।
npx lagune read catalog rustसीक्रेट
पासवर्ड, API कुंजियों और टोकन को आपके सोर्स कोड से बाहर रखती है, ताकि शेयर की गई रिपॉज़िटरी या लीक हुआ बिल्ड उन्हें कभी किसी हमलावर के हाथ न सौंपे।
npx lagune read catalog secretsसर्वरलेस
क्लाउड फ़ंक्शन और उनकी अनुमतियों की समीक्षा करती है, ताकि किसी एक फ़ंक्शन का ग़लत इस्तेमाल करके ज़रूरत से कहीं ज़्यादा चीज़ों तक न पहुँचा जा सके।
npx lagune read catalog serverlessSQL
आपका ऐप अपने डेटाबेस से कैसे बात करता है, इसकी रखवाली करती है, ताकि जान-बूझकर गढ़ा गया इनपुट ऐसा डेटा न पढ़ सके, न बदल सके, न मिटा सके जिसे उसे कभी छूना ही नहीं था।
npx lagune read catalog sqlSupabase
आपके Supabase बैकएंड को कसकर सुरक्षित करती है, ताकि आपके डेटाबेस के नियम सच में कारगर रहें और सीक्रेट कुंजियाँ सबके सामने उजागर न हों।
npx lagune read catalog supabaseट्रांसपोर्ट
ट्रांसपोर्ट को मज़बूत करती है ताकि डेटा एन्क्रिप्टेड कनेक्शन पर जाए, जिससे आपके यूज़र्स और आपके ऐप के बीच रास्ते में उसे पढ़ना या बदलना कहीं ज़्यादा मुश्किल हो जाता है।
npx lagune read catalog transportअपलोड
फ़ाइल अपलोड को मज़बूत करती है, जिससे किसी के लिए दूसरे रूप में छिपाई गई ऐसी फ़ाइल अपलोड करना कहीं ज़्यादा मुश्किल हो जाता है जो कोड चलाए, डेटा ओवरराइट करे या आपका स्टोरेज भर दे।
npx lagune read catalog uploadXML
आपका ऐप XML डेटा कैसे पढ़ता है, इसे मज़बूत करती है, ताकि जान-बूझकर गढ़ी गई फ़ाइल के लिए सर्वर की फ़ाइलें लीक करना या आपके ऐप को ठप करना कहीं ज़्यादा मुश्किल हो।
npx lagune read catalog xmlख़ुद चलाएँ
किसी विशेषज्ञता का सीधे इस्तेमाल करने के लिए, अपने एजेंट से उसे read catalog <name> से लोड करने को कहें और उसी प्रॉम्प्ट में अपना काम भी लिखें। फिर वह ज्ञान आपके माँगे गए काम पर लागू होता है। यह किसी भी प्रॉम्प्ट में काम करता है, उसमें भी जिसका Lagune फ़्लो से कोई लेना-देना नहीं है।
उदाहरण के लिए, Python में सुरक्षित RegExp का संग्रह बनाने के लिए एक सीधा, अपने शब्दों में लिखा प्रॉम्प्ट:
`npx lagune read catalog regex` से regex विशेषज्ञता लोड करो, फिर @src/utils/regex.py में ईमेल और यूज़रनेम जाँचने के लिए रेगुलर एक्सप्रेशन का एक संग्रह बनाओ।
इसमें एक नियतात्मक हुक हर RegExp को ReDoS के ख़िलाफ़ टेस्ट करता है, सुरक्षित पैटर्न रखता है, और कुछ ऐसा नतीजा देता है:
import re
EMAIL = re.compile(r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$")
USERNAME = re.compile(r"^[a-zA-Z0-9_]{3,20}$")
def is_email(value: str) -> bool:
return EMAIL.match(value) is not None
def is_username(value: str) -> bool:
return USERNAME.match(value) is not None
किसी पैटर्न को devina.io/redos-checker पर ख़ुद टेस्ट करें।
बिल्ट-इन विशेषज्ञताएँ
बिल्ट-इन विशेषज्ञताएँ श्रेणियों में बँटी हुई हैं। Lagune के साथ आने वाला सेट यह है:
| विशेषज्ञता | श्रेणी | मुख्य विषय |
|---|---|---|
regex | owasp | ReDoS: ऐसे पैटर्न जो जान-बूझकर गढ़े गए इनपुट पर बेक़ाबू हो जाते हैं। |
network | owasp | SSRF और रीडायरेक्ट: यूज़र के दिए फ़ेच या रीडायरेक्ट के गंतव्य। |
interpreter | owasp, lovable | कोड इंजेक्शन: eval, डायनैमिक include, नाम के आधार पर डिस्पैच। |
sql | owasp | रिलेशनल डेटाबेस: इंजेक्शन, रॉ ORM कॉल, अधिकार, इंजन की पहुँच। |
path | owasp | फ़ाइल सिस्टम पाथ: पाथ ट्रैवर्सल, null byte, NTFS स्ट्रीम, फ़ाइल प्लांटिंग। |
upload | owasp | फ़ाइल अपलोड: टाइप और सिग्नेचर, नुक़सानदेह कंटेंट, स्टोरेज, सीमाएँ। |
access-control | owasp, lovable | ऑथेंटिकेशन, ऑथराइज़ेशन, सेशन: IDOR, मास असाइनमेंट, टेनेंट, सेशन। |
credential-endpoint | owasp, lovable | अंदाज़े वाले हमले और बॉट: ब्रूट फ़ोर्स, पासवर्ड स्प्रेइंग, क्रेडेंशियल स्टफ़िंग, थ्रॉटलिंग। |
federation | owasp | टोकन पर भरोसा: OAuth/OIDC, SAML, JWT वैलिडेशन, QR लॉगिन। |
http-request | owasp | रिक्वेस्ट का स्रोत: CSRF, CORS की ग़लत कॉन्फ़िगरेशन, नक़ली क्लाइंट IP। |
transport | owasp | चैनल सुरक्षा: TLS कॉन्फ़िगरेशन, HTTPS और प्लेनटेक्स्ट, HSTS, पिनिंग। |
crypto | owasp, lovable | स्टोर किए गए डेटा की क्रिप्टोग्राफ़ी: कमज़ोर या ख़ुद बनाए एल्गोरिदम, CSPRNG, कुंजी प्रबंधन। |
secrets | owasp, lovable | हार्डकोड किए गए क्रेडेंशियल: सोर्स कोड में सीधे लिखी कुंजियाँ, टोकन, पासवर्ड। |
api-endpoint | owasp | REST के अलावा दूसरे सरफ़ेस: GraphQL, gRPC, WebSocket ऑथराइज़ेशन, DoS, स्कीमा। |
payment | owasp, lovable | चेकआउट फ़्लो: सर्वर-साइड पर गेटवे की पुष्टि, साइन किए गए कॉलबैक, आइडेम्पोटेंसी। |
xml | owasp | XML पार्सिंग: XXE, एक्सटर्नल एंटिटी, billion laughs एक्सपैंशन। |
csv | owasp | फ़ॉर्मूला इंजेक्शन: =/+/-/@ से शुरू होने वाले स्प्रेडशीट सेल। |
container | owasp, infra | कंटेनर कॉन्फ़िगरेशन: root यूज़र, कैपेबिलिटीज़, सॉकेट माउंट, इमेज हार्डनिंग। |
infra | infra | इन्फ़्रास्ट्रक्चर ऐज़ कोड: Terraform, Dockerfile, GitHub Actions। |
serverless | owasp, infra, lovable | FaaS फ़ंक्शन: कम से कम अधिकार वाला IAM, इवेंट इनपुट, कॉन्टेक्स्ट, सीक्रेट। |
llm | ai, lovable | AI और LLM जोखिम: प्रॉम्प्ट इंजेक्शन, ज़रूरत से ज़्यादा अधिकार (agency), RAG, MCP, आउटपुट। |
supabase | lovable | Supabase बैकएंड: डिफ़ॉल्ट रूप से बंद RLS, AI की ग़लत बनाई पॉलिसियाँ, कुंजी मॉडल। |
browser | javascript, lovable | क्लाइंट-साइड जोखिम: XSS, CSP, फ़्रेमिंग, स्टोरेज आदि। |
javascript | javascript | भाषा के स्तर के जोखिम: RCE, प्रोटोटाइप पॉल्यूशन आदि। |
python | python | भाषा के स्तर के जोखिम: pickle RCE, क्लास पॉल्यूशन, -O आदि। |
rust | rust | unsafe की साउंडनेस: safe कॉलर से पैदा होने वाला UB, transmute, ओवरफ़्लो। |
java | java | डीसीरियलाइज़ेशन और मोबाइल कोड: readObject चेन, ऑब्जेक्ट हाइजैक। |
ruby | ruby | डीसीरियलाइज़ेशन और open: Marshal/YAML से ऑब्जेक्ट रिवाइवल, पाइप से जुड़ा अनोखा व्यवहार। |
php | php | टाइप जगलिंग और unserialize: मैजिक हैश, POP चेन। |
go | go | typed nil और डेटा रेस: nil != nil, मेमोरी साझा करने वाले गोरूटीन। |
c-cpp | c-cpp | फ़ॉर्मैट स्ट्रिंग: printf(user_input), %n से write-what-where। |
dotnet | dotnet | प्लैटफ़ॉर्म के स्तर के जोखिम: BinaryFormatter RCE, @Html.Raw, enum की कमियाँ। |
ज़्यादातर बिल्ट-इन ज्ञान OWASP से सार निकालकर बना है। हर विशेषज्ञता का उसके मूल OWASP अटैक और Cheat Sheet पेजों से पूरा मिलान OWASP स्रोत में देखें। कुछ स्टैक-विशेष मॉड्यूल इसके बजाय वेंडर के अपने दिशानिर्देशों से बने हैं: उदाहरण के लिए, supabase Supabase के डॉक्स और CVE-2025-48757 से लिया गया है।
आपकी अपनी विशेषज्ञताएँ
बिल्ट-इन विशेषज्ञताएँ एक ज्ञान फ़ाइल और इंडेक्स की एक पंक्ति जोड़कर बढ़ती हैं, नई कमांड जोड़कर कभी नहीं। आप अपनी विशेषज्ञताएँ भी इसी तरह /lagune-specialize कमांड से जोड़ते हैं: इसे कोई लेख या विषय दें, और यह उसका सार निकालकर आपके प्रोजेक्ट में एक नई विशेषज्ञता बना देती है, यानी .lagune/catalog/ में फ़ाइल और .lagune/configs.json में उसकी एंट्री। आपकी अपनी विशेषज्ञताएँ कैटलॉग में हमेशा रहती हैं, उसकी श्रेणियाँ चाहे जो हों, और आपकी कोई विशेषज्ञता उसी नाम की बिल्ट-इन विशेषज्ञता की जगह ले लेती है।
जब detect या verify चरण किसी ऐसे संदर्भ पर पहुँचता है जिसे कोई विशेषज्ञता कवर करती है, तो वह चरण ख़ुद read catalog <name> से उस विशेषज्ञता को लोड करता है। यह चरण के हिस्से के रूप में अपने-आप होता है। इसके काम करने के लिए आपको कुछ भी हाथ से नहीं करना पड़ता।
देखें कि क्या उपलब्ध है
टर्मिनल में अपने प्रोजेक्ट का कैटलॉग देखें, हर पंक्ति में एक विशेषज्ञता और उसके टैग के साथ:
npx lagune read catalog
# regex: Regular Expression [required]
# network: Requests, Webhook, URL Fetch, Socket, IMDS, Redirect
# interpreter: Evaluator, Sink, Shell, Dynamic Execution
# ...
[required] वाली विशेषज्ञता हमेशा लागू होती है, काम चाहे जो हो। सूची में कौन-सी बिल्ट-इन विशेषज्ञताएँ होंगी, यह आपके प्रोजेक्ट की श्रेणियों पर निर्भर करता है।
हर जाँच डिफ़ॉल्ट रूप से चलाने के बजाय, प्रोजेक्ट असल में जैसा है, उसी के हिसाब से ज़रूरी ज्ञान लोड होता है।
अक्सर पूछे जाने वाले सवाल
सुरक्षा ज्ञान का एक केंद्रित मॉड्यूल, जो किसी एक प्रोग्रामिंग भाषा से बंधा नहीं है और डिफ़ॉल्ट रूप से कभी नहीं, सिर्फ़ ज़रूरत पड़ने पर ही लोड होता है। यह एजेंट स्किल्स की तरह कमांड नहीं है।
वे विशेषज्ञताएँ जिनका प्रोजेक्ट इस्तेमाल करता है: उसकी श्रेणियों की बिल्ट-इन विशेषज्ञताएँ और उसकी अपनी विशेषज्ञताएँ। जब तक कोई श्रेणी दर्ज नहीं होती, प्रोजेक्ट सिर्फ़ OWASP का इस्तेमाल करता है।
नहीं। ये सिर्फ़ ज़रूरत पड़ने पर ही लोड होती हैं, प्रोजेक्ट असल में जैसा है उसके हिसाब से।
अपने काम वाले उसी प्रॉम्प्ट में एजेंट से npx lagune read catalog <name> चलाने को कहें।
