Node.js में सुरक्षा उपायों के साथ मैन्युअल जांच कैसे करें

Node Js Mem Suraksa Upayom Ke Satha Main Yu Ala Janca Kaise Karem



कमजोरियों का पता लगाना, आपके कोड को सभी प्रकार के साइबर हमलों से बचाना और मेमोरी लीक को रोकना एक प्रोग्रामर के सबसे आवश्यक कर्तव्य हैं। कोड के अंदर रहने वाली आपकी कमजोरियों का पता लगाना और भविष्यवाणी करना बहुत कठिन है और समय लेने वाली प्रक्रिया भी है। हालाँकि, ऐसे कई दृष्टिकोण हैं जिनके द्वारा नोडज में एप्लिकेशन की सुरक्षा की प्रक्रिया के साथ-साथ मैन्युअल पता लगाया जा सकता है।

यह आलेख नीचे दिए गए अनुभागों को कवर करके नोडज में सुरक्षा उपायों के साथ मैन्युअल पहचान करने के तरीकों की व्याख्या करेगा:







    • दर सीमक का उपयोग
    • डेटा ट्रांसमिशन के लिए टीएलएस/एसएसएल का उपयोग
    • एस्केप आउटपुट

Node.js में सुरक्षा उपायों के साथ मैन्युअल जांच कैसे करें

Node.js कोड में संभावित समस्याओं की पहचान करने के लिए कोड की कई बार समीक्षा करके मैन्युअल पता लगाया जाता है। सिंटैक्स त्रुटियों, तार्किक त्रुटियों आदि की खोज करके संभावित समस्याओं को पुनः प्राप्त किया जाता है। का उपयोग ' डिबगर ' और ' लिंटर ' का उपयोग Node.js प्रोग्राम के अंदर रहने वाले संभावित खतरों या त्रुटियों की पहचान करने के लिए भी किया जा सकता है।



ऐसे कई तरीके हैं जिनके द्वारा आपके कोड के जीवनकाल को बढ़ाते हुए कोड को सभी प्रकार के संभावित थ्रेड्स से सुरक्षित रखा जा सकता है। ये विधियाँ नीचे सूचीबद्ध हैं:



विधि 1: रेट लिमिटर का उपयोग करके Node.js प्रोग्राम को सुरक्षित रखें

अपने एप्लिकेशन को सेवा से इनकार करने वाले हमलों से बचाने के लिए और बहुत अधिक अनुरोधों को रोककर अपने एप्लिकेशन के प्रदर्शन में सुधार करने के लिए। व्यावहारिक कार्यान्वयन नीचे दिखाया गया है:





स्थिरांक एक्सप्रेस = आवश्यकता ( 'अभिव्यक्त करना' ) ;
स्थिरांक दरलिम = आवश्यकता ( 'एक्सप्रेस-दर-सीमा' ) ;
कॉन्स्ट सेफऐप = एक्सप्रेस ( ) ;

// दर सीमित करने वाले मिडलवेयर को परिभाषित करें
स्थिरांक सीमित = रेटलिम ( {
विंडोएमएस: 60 * 1000 ,
अधिकतम: 100 , // अधिकतम अनुरोध प्रति मिनट
संदेश: 'क्षमा मांगना! दर सीमा पार हो गई है' ,
} ) ;
// दर-सीमित मिडलवेयर लागू करें
सुरक्षित ऐप.उपयोग ( सीमित ) ;
// रूट और रिस्पांस हैंडलर को परिभाषित करें
सुरक्षितऐप.प्राप्त करें ( '/' , ( अनुरोध प्रतिक्रिया ) = > {
प्रतिक्रिया.भेजें ( 'हैलो Linuxhint समुदाय!' ) ;
} ) ;

// एक्सप्रेस सर्वर प्रारंभ किया जा रहा है
कॉन्स्ट लोकलपोर्ट = प्रोसेस.एनवी.पोर्ट || 3000 ;
सुरक्षितऐप.सुनो ( लोकलपोर्ट, ( ) = > {
कंसोल.लॉग ( ` सर्वर पोर्ट नंबर पर प्रारंभ हो गया है: ${लोकलपोर्ट}


उपरोक्त कोड में:

    • सबसे पहले, 'आयात करें' अभिव्यक्त करना ' और ' एक्सप्रेस-दर-सीमा 'मुख्य में पैकेज' जे एस ' फ़ाइल। आरंभ करें ' अभिव्यक्त करना() 'आवेदन करें और इसे नाम निर्दिष्ट करें' सुरक्षित ऐप ”।
    • इसके बाद, 'के लिए कस्टम मान पास करके दर-सीमित मिडलवेयर को परिभाषित करें' विंडोज़एम.एस ', ' अधिकतम ', और ' संदेश 'में गुण' एक्सप्रेस-दर-सीमा ' पैकेट।
    • अब, 'का उपयोग करके इस दर सीमक को एक्सप्रेस एप्लिकेशन पर लागू करें' उपयोग() ' तरीका।
    • फिर, 'का उपयोग करें पाना() सर्वर पर अनुरोध के रूप में एक यादृच्छिक संदेश भेजने की विधि।
    • अंत में, 'का उपयोग करके पोर्ट नंबर सेट करें env.पोर्ट 'संपत्ति और एक्सप्रेस ऐप को निर्दिष्ट पोर्ट नंबर पर सुनें।

विधि 2: डेटा ट्रांसमिशन के लिए टीएलएस/एसएसएल का उपयोग करके नोड.जेएस प्रोग्राम को सुरक्षित रखें

टीएलएस/एसएसएल एक सुरक्षित सॉकेट परत है जो सर्वर और क्लाइंट पक्ष के बीच प्रसारित होने वाले डेटा को एन्क्रिप्ट करती है। यह क्रेडिट कार्ड नंबर जैसे संवेदनशील डेटा को हमलावरों द्वारा रोके जाने से बचाता है और यह आपको अनुपालन आवश्यकताओं को पूरा करने में भी मदद करता है:



स्थिरांक एफएस = आवश्यकता है ( 'एफएस' ) ;
स्थिरांक एक्सप्रेस = आवश्यकता ( 'अभिव्यक्त करना' ) ;
const httpsObj = आवश्यकता है ( 'https' ) ;

कॉन्स्ट सेफऐप = एक्सप्रेस ( ) ;
स्थिरांक विकल्प = {
कुंजी: fs.readFileSync ( 'कुंजी.पेम' ) ,
प्रमाणपत्र: fs.readFileSync ( 'cert.pem' ) ,
} ;

कॉन्स्ट सेटिंग सर्वर = httpsObj.createServer ( विकल्प, सुरक्षित ऐप ) ;

सेफसेफऐप.गेट ( '/' , ( अनुरोध प्रतिक्रिया ) = > {
प्रतिक्रिया.भेजें ( 'हैलो Linuxhint समुदाय!' ) ;
} ) ;

सेटिंगसर्वर.सुनें ( 8000 ) ;


उपरोक्त कोड का विवरण:

    • प्रारंभ में, आवश्यक Node.js आयात करें ” एफ.एस ', ' अभिव्यक्त करना ', और ' HTTPS के 'अपने प्रोजेक्ट में निर्भरताएं और' एक्सप्रेस 'एप्लिकेशन को' के नाम से आरंभ करें सुरक्षित ऐप ”।
    • अब, एक ' बनाएं विकल्प 'निजी कुंजी और प्रमाणपत्र के लिए फ़ाइलों को सूचीबद्ध करें और पास करें' चाबी ' और ' प्रमाणपत्र ' गुण। फ़ाइलें 'का उपयोग करके बनाई जा सकती हैं Opensl ” कमांड और ये फ़ाइलें कनेक्शन सुरक्षित करने में मदद करती हैं।
    • अंत में, ' का आह्वान करके एक सर्वर बनाएं क्रिएटसर्वर() 'विधि और पास करें' विकल्प पहले पैरामीटर के रूप में ऐरे और दूसरे के रूप में एक्सप्रेस ऐप।
    • एप्लिकेशन पर टीएसएल/एसएसएल प्रमाणीकरण लागू करने के लिए, 'का उपयोग करके अनुरोध भेजें या प्राप्त करें' पाना() आवश्यकताओं के अनुसार विधि।

विधि 3: एस्केप आउटपुट का उपयोग करके Node.js प्रोग्राम को सुरक्षित रखें

अपने Node.js एप्लिकेशन को क्रॉस-साइट स्क्रिप्टिंग से रोकने के लिए ' एक्सएसएस हमलों में, सबसे आम और अधिक लोकप्रिय तकनीक आउटपुट से विशेष वर्णों का बचना है। XSS हमलों को रोकने के लिए विशेष वर्णों को HTML प्रारूप में परिवर्तित किया जाता है और रूपांतरण 'के माध्यम से किया जाता है' एस्केप-एचटीएमएल 'पैकेज ऑब्जेक्ट:

const escObj = आवश्यकता है ( 'एस्केप-एचटीएमएल' ) ;
स्थिरांक dummyStr = '<स्क्रिप्ट> कंसोल.लॉग ('एक्सएसएस हमले की संभावना कम करना!');' ;

स्थिरांक modStr = escObj ( डमीस्ट्र ) ;
कंसोल.लॉग ( काउंटरस्ट्र ) ;


उपरोक्त कोड का विवरण इस प्रकार है:

    • पहले ' एस्केप-एचटीएमएल 'पैकेज को मुख्य में आयात किया गया है' जे एस ' फ़ाइल और उसका ऑब्जेक्ट या उदाहरण ' में संग्रहीत है escObj ' चर।
    • इसके बाद, विशेष वर्णों वाले कोड की एक यादृच्छिक पंक्ति को ' डमीस्ट्र ' चर।
    • उसके बाद, 'पास करें डमीस्ट्र 'के अंदर चर' escObj 'शुद्ध HTML प्रारूप में रूपांतरण कोड के लिए कोष्ठक।
    • परिणाम एक वेरिएबल में संग्रहीत है ' काउंटरस्ट्र ” जो फिर कंसोल पर प्रदर्शित होता है।

उपरोक्त कोड के आउटपुट से पता चलता है कि प्रदान की गई स्ट्रिंग वाले विशेष वर्ण अब HTML एन्कोडिंग प्रारूप में परिवर्तित हो गए हैं:


यह सब Nodejs में सुरक्षा उपायों के साथ मैन्युअल पहचान करने के बारे में है।

निष्कर्ष

मैन्युअल पहचान करने के लिए, किसी भी प्रकार की सिंटैक्स या तार्किक त्रुटियों के लिए अपने कोड की कई बार समीक्षा करें और कोड पर कई परीक्षण करें। अपने Node.js प्रोग्राम को सभी प्रकार के साइबर हमलों से सुरक्षित रखने या डेटा के रिसाव को रोकने के लिए, 'का उपयोग करें' दर सीमक ', ' डेटा ट्रांसमिशन के लिए टीएलएस/एसएसएल ', और ' एस्केप आउटपुट तकनीकें। इस गाइड में Node.js में सुरक्षा उपायों के साथ मैन्युअल पहचान करने की प्रक्रिया का वर्णन किया गया है।