Node.js HTTP سرور میں سروس سے انکار (CWE-400) کو کیسے روکا جائے؟

Node Js Http Srwr My Srws S Ankar Cwe 400 Kw Kys Rwka Jay



ہر شعبے میں ٹیکنالوجی کے ارتقاء کے ساتھ، ڈیٹا کے ضائع ہونے اور سائبر حملوں کے امکانات بھی بہتر ہوئے ہیں۔ نئی ٹیکنالوجیز اخلاقی ترقی کے میدان میں اہم کردار ادا کرتی ہیں اور اسی طرح ان ٹیکنالوجیز کو غیر اخلاقی اعمال کو زیادہ درست اور آسان طریقے سے انجام دینے کے لیے بھی استعمال کیا جا سکتا ہے۔ ایسا ہی ایک حملہ جو ایک ہیکر کر سکتا ہے وہ ہے ' سروس سے انکار (CWE-400) '

یہ گائیڈ Nodejs HTTP سرور میں سروس CWE-400 کے انکار کو روکنے کے طریقہ کار کی وضاحت کرتا ہے۔







HTTP سرور (CWE-400) کی سروس سے انکار کیا ہے؟

سروس سے انکار (CWE-400) حملہ آور کی جانب سے بوٹ ٹریفک کے ساتھ ایپلی کیشن کو اوور فلوڈ کرکے اصل صارفین کے لیے ایک ایپلیکیشن کو دستیاب نہ کرنے کی کوشش ہے۔ یہ حملہ ایپلیکیشن کی موجود کمزوریوں کا فائدہ اٹھا کر بھی کیا جاتا ہے تاکہ ایپلیکیشن کو بہت سست بنایا جا سکے۔



کیا نوڈ جے ایس ایپلیکیشنز بدنیتی پر مبنی حملوں کا شکار ہیں؟

ہاں، Node.js ایپلیکیشنز کسی دوسرے سافٹ ویئر یا ایپلیکیشن کی طرح ہی نقصان دہ حملوں کا شکار ہو سکتی ہیں۔ نقصان دہ حملوں کی کچھ سب سے عام اور مقبول اقسام ذیل میں بیان کی گئی ہیں:



    • سروس حملوں سے انکار
    • انجیکشن حملے
    • کراس سائٹ اسکرپٹنگ (XSS) حملے
    • سیشن ہائی جیکنگ حملے

Node.js HTTP سرور میں سروس سے انکار (CWE-400) کو کیسے روکا جائے؟

Node.js HTTP سرور میں سروس کے انکار کو روکنے کے لیے، ایک مخصوص وقت کے فریم کے اندر کسی ایک IP ایڈریس سے موصول ہونے والی درخواستوں کی تعداد کو محدود کرنے کی ضرورت ہے۔ اس طرح، آپ کی درخواست پر موصول ہونے والی ٹریفک کو سنبھالا جاتا ہے اور Node.js میں سروس سے انکار (CWE-400) کو کم کرنے کے لیے بہت سے دوسرے طریقے بھی موجود ہیں۔





طریقہ 1: ریٹ لیمیٹر کا استعمال

ریٹ محدود کرنے والا بہترین طریقہ ہے خاص طور پر ڈینیئل آف سروس حملے کو روکنے کے لیے، کیونکہ یہ ہر درخواست سے آنے والی درخواستوں کی تعداد کو محدود کر سکتا ہے فی ونڈو فریم:

const expObj = درکار ہے۔ ( 'اظہار' ) ;
const Limiting = درکار ہے۔ ( 'اظہار کی شرح کی حد' ) ;

const demoApp = expObj ( ) ;

const cusLim = محدود کرنا ( {
windowMs: 2 * 60 * 1000 ، // پندرہ منٹ
زیادہ سے زیادہ 100 ،
} ) ;
demoApp.use ( cusLim ) ;


مندرجہ بالا کوڈ کی تفصیل اس طرح ہے:



    • سب سے پہلے، انسٹال اور درآمد کریں ' اظہار 'اور' ایکسپریس شرح کی حد 'آپ کے نوڈ جے ایس پروجیکٹ میں' کا استعمال کرتے ہوئے npm i 'حکم اور' درکار ہے() بالترتیب طریقہ۔
npm میں اظہار کرتا ہوں۔


    • اگلا، ایک ایکسپریس ایپلی کیشن بنائیں جس کا نام ' demoApp اور ' کے لیے مطلوبہ قدریں تفویض کر کے ریٹ محدود بنائیں windowsMs 'اور' زیادہ سے زیادہ 'کی خصوصیات' ایکسپریس شرح کی حد ' چیز.
    • ' windowsMs 'ونڈو کے وقت کا دورانیہ مقرر کرتا ہے اور' زیادہ سے زیادہ ” زیادہ سے زیادہ درخواست سیٹ کرتا ہے جو فی ونڈو ایک واحد IP ایڈریس سے موصول ہو سکتی ہے۔
    • اب، لاگو کریں ' استعمال کریں() 'طریقہ جس میں شرح محدود کرنے والا ہے' demoApp 'ڈیمو ایپ' ایپلیکیشن کے ذریعے موصول ہونے والی درخواست کو محدود کرنے کے لیے درخواست۔

طریقہ 2: ٹائم آؤٹ طریقوں کا استعمال

' وقت ختم 'طریقے جیسے' سیٹ ٹائم آؤٹ() '،' ہیڈر ٹائم آؤٹ '،' درخواست کا وقت ختم '،' وقت ختم '، اور ' KeepAliveTimeout() باہر نکلنے یا ختم کرنے کے لیے استعمال کیا جاتا ہے HTTP سرور 'سرور. یہ کم از کم اوپن ونڈو ٹائم فریم فراہم کرکے سروس سے انکار (CWE-400) کو روکے گا۔ مثال کے طور پر، درخواست کو حذف کر دیا گیا ہے یا ونڈو 'کے بعد بند ہو جائے گی۔ 3 سیکنڈ:

const سرور = http.createServer ( ( req، res ) = > {
req.setTimeout ( 3000 ) ;
// ہینڈلنگ کی درخواست
} ) ;

نوڈ جے ایس میں سروس سے انکار کو کم کرنے کے لیے اضافی تجاویز

کچھ اضافی نکات ہیں جو Nodejs HTTP سرور میں سروس سے انکار (CWE-400) کو کم کرنے میں مدد کرتے ہیں، یہ ذیل میں درج ہیں:

    • ' ریورس پراکسی نوڈ جے ایس ایپلی کیشن کو درخواستیں بھیجنے یا وصول کرنے کے لیے استعمال کیا جانا چاہیے۔ یہ پراکسیز کیشنگ، لوڈ بیلنسنگ اور آئی پی بلیک لسٹنگ کی پیشکش کرتی ہیں جو DoS(CWE-400) کو کم کرنے میں بہت مدد کرتی ہیں۔
    • مواد کی ترسیل کے نیٹ ورک کا استعمال سی ڈی این کوڈ کو متعدد حصوں میں تقسیم کرکے اور انہیں ایک سے زیادہ سرورز پر الگ سے اپ لوڈ کرکے DoS(CWE-400) حملے کو روکنے میں مدد کرتا ہے۔
    • ویب ایپلیکیشن فائر وال کا استعمال ڈبلیو اے ایف کسی معروف نقصان دہ ذریعہ سے درخواستوں کو بلاک کرکے آپ کی درخواست کی حفاظت کرتا ہے۔
    • کا استعمال ' لوڈ بیلنسر ” تمام سرورز پر درخواستوں کے بوجھ کو یکساں طور پر تقسیم کرتا ہے، جس سے کسی ایک سرور کو اوورلوڈ ہونے سے روکا جاتا ہے۔

نوٹ: مزید معلومات حاصل کرنے کے لیے آپ Node.js کی مستند دستاویزات بھی دیکھ سکتے ہیں۔ سروس سے انکار (CWE-400) .

یہ سب Node.js HTTP سرور میں سروس سے انکار (CWE-400) کی روک تھام کے بارے میں ہے۔

نتیجہ

Node.js HTTP سرور میں سروس سے انکار (CWE-400) کو روکنے کے لیے، ' ریٹ لِمیٹر '،' ٹائم آؤٹ کے طریقے '،' ریورس پراکسی '،' سی ڈی این '،' ڈبلیو اے ایف 'اور' لوڈ بیلنسر 'تکنیک. وہ درخواستوں کی تعداد کو محدود کرتے ہیں، درخواست کی ونڈو کو بند کرتے ہیں، درخواست کو دوسری ویب سائٹ پر بھیج دیتے ہیں، اصل کوڈ کو متعدد سرورز میں تقسیم اور اپ لوڈ کرتے ہیں، اور بالترتیب ہر سرور پر بوجھ کو متوازن کرتے ہیں۔ اس فوری گائیڈ نے Node.js HTTP سرور میں سروس سے انکار (CWE-400) کو کم کرنے یا روکنے کے عمل کی مثال دی ہے۔