वाइब कोडिंग · पाठ

सुरक्षा की कमियाँ ढूँढ़ना

सामान्य कमज़ोरियों के लिए जाँच करें।

पाठ 3, कुल 4 में से13 चरण

सुरक्षा की कमियाँ ढूँढ़ना, CoddyKit पर वाइब कोडिंग का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह वाइब कोडिंग सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। वाइब कोडिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

AI के डिफ़ॉल्ट असुरक्षित हैं

मॉडल सार्वजनिक कोड से सीखते हैं, और अधिकांश सार्वजनिक कोड सुरक्षा से अधिक स्पष्टता को प्राथमिकता देता है। उस संग्रह का सांख्यिकीय औसत ऐसा ऐप है जिसमें कमज़ोर प्रमाणीकरण और इनपुट संभालने का अत्यधिक भरोसेमंद तरीका होता है।

इसलिए बनाए गए सॉफ़्टवेयर की मूल सुरक्षा प्रदर्शन-स्तर की होती है। वह काम करता है, जारी होता है और डेटा लीक करता है।

कमियाँ ढूँढ़ना एक जानबूझकर किया गया प्रतिकूल परीक्षण है; सामान्य सफलता वाला प्रदर्शन उन्हें कभी सामने नहीं लाएगा।

इंजेक्शन: पारंपरिक दोष

AI द्वारा लाई गई सबसे आम खामी इंजेक्शन है: स्ट्रिंग जोड़कर बनाया गया SQL, उपयोगकर्ता इनपुट से तैयार किए गए शेल कमांड और अविश्वसनीय डेटा को सीधे शामिल करने वाले टेम्पलेट।

बनाई गई क्वेरी तब तक सामान्य दिखती है जब तक कोई हमलावर एपॉस्ट्रॉफ़ न भेजे। फिर क्वेरी उसकी क्वेरी बन जाती है।

ऐसी हर जगह खोजें जहाँ उपयोगकर्ता इनपुट को कमांड, क्वेरी या मार्कअप स्ट्रिंग में जोड़ दिया जाता है।

Scan this codebase for injection risks: SQL or NoSQL queries built by string concatenation, shell commands assembled from input, and any HTML or template that interpolates untrusted data. For each, show the vulnerable line and rewrite it using parameterized queries or proper escaping.

टूटा हुआ प्राधिकरण

प्रमाणीकरण पूछता है कि आप कौन हैं; प्राधिकरण पूछता है कि आप क्या कर सकते हैं। मॉडल अक्सर लॉगिन जोड़ देते हैं, फिर हर संसाधन पर स्वामित्व जाँचना भूल जाते हैं।

परिणाम पारंपरिक IDOR होता है: URL में id बदलकर किसी और का डेटा पढ़ लेना। एंडपॉइंट ने आपका प्रमाणीकरण तो किया, लेकिन कभी यह सत्यापित नहीं किया कि रिकॉर्ड आपका था।

हर डेटा पहुँच के लिए केवल लॉगिन की जाँच नहीं, बल्कि स्वामित्व या भूमिका की जाँच करें।

Review every endpoint that reads or writes a record by id. For each, confirm there is an authorization check that the current user actually owns or is permitted to access that specific record. List any endpoint that only checks authentication but not ownership.

स्रोत में गुप्त मान

किसी काम करने वाले एकीकरण के लिए कहें और मॉडल प्रदर्शन चलाने के लिए खुशी-खुशी API keys को सीधे कोड में चिपका देगा। फिर वह key हमेशा के लिए आपके git इतिहास में रहती है।

गुप्त मान पर्यावरण चर या सुरक्षित भंडार में होने चाहिए; कमिट किए गए कोड, क्लाइंट बंडल या लॉग में कभी नहीं।

पूरे कोड-वृक्ष में ऐसी हर चीज़ खोजें जो hardcoded key, टोकन या पासवर्ड जैसी दिखती हो।

Search the entire repository, including history if possible, for hardcoded secrets: API keys, tokens, passwords, connection strings, and private keys. List each location and the secret type, and tell me which must be rotated because they were already committed.

क्लाइंट पर भरोसा करना

बनाए गए फ्रंटएंड अक्सर नियम केवल ब्राउज़र में लागू करते हैं: कीमत की गणना क्लाइंट पर, भूमिका की जाँच JavaScript में और सत्यापन फ़ॉर्म में।

हमलावर आपके API को सीधे कॉल करके इन सबको दरकिनार कर देता है। क्लाइंट जो भी गणना करता है, सर्वर को उसकी फिर से गणना और दोबारा पुष्टि करनी चाहिए।

हर अनुरोध को ऐसे मानें जैसे वह किसी शत्रुतापूर्ण स्क्रिप्ट से आया हो, क्योंकि ऐसा संभव है।

Identify every business rule that is currently enforced only on the client: price or total calculations, role and permission checks, and input validation. For each, add equivalent server-side enforcement and assume the client cannot be trusted.

कमज़ोर इनपुट सत्यापन

मॉडल आपके बताए फ़ील्ड का सत्यापन करते हैं और बाकी को नज़रअंदाज़ कर देते हैं। लंबाई की सीमाएँ, प्रकार की जाँच, अनुमत-सूचियाँ और प्रारूप के नियम तभी शामिल होते हैं जब आप उन्हें माँगते हैं।

बिना सीमा वाला इनपुट सेवा-अस्वीकार, अत्यधिक बड़े अपलोड और विकृत डेटा को आमंत्रित करता है, जो आगे की प्रणालियों को दूषित कर सकता है।

विश्वास की सीमा पर स्पष्ट अनुमत-सूचियों से सत्यापन करें, ऐसी अवरुद्ध-सूचियों से नहीं जिन्हें हमलावर चकमा दे सकें।

Add strict server-side validation to this endpoint using an allowlist approach: enforce types, length and size limits, allowed character sets, and required fields. Reject anything that does not match rather than trying to sanitize bad input into shape.

अत्यधिक विवरण वाली त्रुटि-लीक

डिबगिंग के लिए उपयोगी, प्रोडक्शन में खतरनाक: कॉल करने वाले को लौटाए गए स्टैक ट्रेस, SQL त्रुटियाँ और आंतरिक पथ हमलावरों को आपके सिस्टम का नक्शा दे देते हैं।

मॉडल डिफ़ॉल्ट रूप से विस्तृत त्रुटियाँ देते हैं, क्योंकि उनसे प्रदर्शन को ठीक करना आसान होता है। प्रोडक्शन में उपयोगकर्ताओं के लिए सामान्य संदेश और पूरी जानकारी केवल निजी लॉग में होनी चाहिए।

उपयोगकर्ता जो देखता है और आप जो दर्ज करते हैं, उन्हें अलग रखें।

Find every place where internal error details leak to the client: raw stack traces, database error messages, file paths, or framework debug pages. Replace them with a generic client message and ensure the full detail is logged server-side only.

दर सीमाओं का अभाव

दर-सीमा निर्धारित किए बिना लॉगिन समापन-बिंदु, पासवर्ड रीसेट और महँगी क्वेरी क्रूर-बल हमलों और दुरुपयोग के लिए खुले रहते हैं। मॉडल बिना कहे शायद ही कभी अनुरोधों की गति सीमित करता है।

असीमित लॉगिन समापन-बिंदु क्रेडेंशियल-स्टफिंग का लक्ष्य बन जाता है। असीमित खोज सेवा-अस्वीकार हमले का साधन बन सकती है।

संवेदनशील और महँगे समापन-बिंदुओं की पहचान करें और तय करें कि उन्हें कितनी बार कॉल किया जा सकता है।

List the endpoints that need rate limiting: authentication, password reset, account creation, and any expensive query or external call. Recommend a per-user and per-IP limit for each and show how to enforce it with our middleware.

निर्भरता का जोखिम

एआई कोई पुराना, परित्यक्त या यहाँ तक कि काल्पनिक पैकेज भी शामिल कर सकता है। गलत वर्तनी वाले निर्भरता-नाम वास्तविक आपूर्ति-श्रृंखला हमले का माध्यम होते हैं।

मॉडल द्वारा सुझाया गया हर आयात भरोसे से जुड़ा निर्णय है। जाँचें कि पैकेज मौजूद है, उसका रखरखाव हो रहा है और उसमें कोई ज्ञात गंभीर सुरक्षा-कमज़ोरी नहीं है।

ऑडिट उपकरण चलाएँ और वह जिन बातों को चिह्नित करता है उन्हें पढ़ें; बिना सोचे-समझे स्वतः उन्नयन न करें।

Review the dependencies this code introduced. Confirm each package actually exists and is actively maintained, flag any with known critical vulnerabilities, and watch for typosquatted names that resemble popular packages. Recommend safer alternatives where needed.

हमलावर की तरह सोचें

सबसे प्रभावी प्रॉम्प्ट मॉडल की भूमिका निर्माता से बदलकर विरोधी की कर देता है। उससे कहें कि उसने अभी जो कोड लिखा है, उसी पर हमला करे।

खतरा-मॉडलिंग की प्रक्रिया यह गिनाती है कि हर सुविधा का दुरुपयोग कैसे हो सकता है: हमलावर क्या चाहता है, उसके नियंत्रण में क्या है और कौन-सी धारणा सबसे पहले टूटेगी।

विरोधी समीक्षा उन कमियों को खोज लेती है जिन्हें रचनात्मक समीक्षा आसानी से अनदेखा कर देती है।

Act as a penetration tester targeting this feature. Build a threat model: what would an attacker want, what inputs do they control, and what is the most damaging realistic attack? Walk through the strongest exploit step by step and tell me the smallest fix that closes it.

बहुस्तरीय सुरक्षा

कोई एक नियंत्रण पर्याप्त नहीं होता। इनपुट का सत्यापन करें, पैरामीटरयुक्त क्वेरी का उपयोग करें, प्राधिकरण जाँचें और दर सीमित करें। यदि एक परत विफल हो जाए, तो अगली परत फिर भी सुरक्षा देती रहे।

मॉडल अक्सर एक सुधार जोड़कर काम पूरा घोषित कर देते हैं। वास्तविक सुदृढ़ीकरण में नियंत्रणों की कई परतें होती हैं, ताकि एक गलती विनाशकारी न बने।

सुरक्षा पूरे तंत्र का गुण है और इसकी समीक्षा भी पूरे तंत्र के रूप में की जानी चाहिए।

त्वरित जाँच

अपनी सुरक्षा-समीक्षा संबंधी समझ की जाँच करें।

पुनरावलोकन

एआई डिफ़ॉल्ट रूप से असुरक्षित कोड बनाता है: इंजेक्शन, टूटा हुआ प्राधिकरण, स्रोत में रखे गुप्त मान, क्लाइंट-पक्ष पर भरोसा, कमजोर सत्यापन, जानकारी उजागर करने वाली त्रुटियाँ, दर-सीमा का अभाव और जोखिमपूर्ण निर्भरताएँ।

विरोधी समीक्षा से इन्हें खोजें, हर सुविधा का खतरा-मॉडल बनाएँ और बहुस्तरीय सुरक्षा के लिए नियंत्रणों की परतें जोड़ें। इसके बाद आप समीक्षा किए गए ऐप को उत्पादन के लिए सुदृढ़ करेंगे।

शुरुआत निःशुल्क

एआई शिक्षक के साथ JavaScript सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
25
पाठ
100

अक्सर पूछे जाने वाले प्रश्न

क्या “सुरक्षा की कमियाँ ढूँढ़ना” पाठ निःशुल्क है?

हाँ — वाइब कोडिंग अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “सुरक्षा की कमियाँ ढूँढ़ना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। वाइब कोडिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“सुरक्षा की कमियाँ ढूँढ़ना” में मैं क्या सीखूँगा?

सामान्य कमज़ोरियों के लिए जाँच करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ वाइब कोडिंग का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या वाइब कोडिंग शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर वाइब कोडिंग शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“सुरक्षा की कमियाँ ढूँढ़ना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस वाइब कोडिंग पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर वाइब कोडिंग पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. कृत्रिम बुद्धिमत्ता के कोड की समीक्षा आवश्यक क्यों है
  2. निर्देश से परीक्षण बनाना
  3. सुरक्षा की कमियाँ ढूँढ़ना
  4. उत्पादन के लिए सुरक्षा मजबूत करना
← वाइब कोडिंग पर वापस जाएँ