Kako spriječiti uskraćivanje usluge (CWE-400) u Node.js HTTP poslužitelju?

Kako Sprijeciti Uskracivanje Usluge Cwe 400 U Node Js Http Posluzitelju



S razvojem tehnologije u svim područjima, šanse za gubitak podataka i kibernetičke napade također su se povećale. Nove tehnologije igraju vitalnu ulogu u području etičkog razvoja i na isti način, te se tehnologije također mogu koristiti za izvođenje neetičkih radnji na točniji i lakši način. Jedan takav napad koji može izvesti haker je ' Uskraćivanje usluge (CWE-400) ”.

Ovaj vodič objašnjava postupak za sprječavanje odbijanja usluge CWE-400 u Nodejs HTTP poslužitelju.







Što je uskraćivanje usluge HTTP poslužitelja (CWE-400)?

Uskraćivanje usluge (CWE-400) pokušaj je napadača da učini aplikaciju nedostupnom izvornim korisnicima preplavljivanjem aplikacije bot prometom. Ovaj se napad također izvodi iskorištavanjem stalnih ranjivosti aplikacije kako bi se aplikacija znatno usporila.



Jesu li Node Js aplikacije ranjive na zlonamjerne napade?

Da, Node.js aplikacije mogu biti ranjive na zlonamjerne napade baš kao i svaki drugi softver ili aplikacija. Neke od najčešćih i najpopularnijih vrsta zlonamjernih napada navedene su u nastavku:



    • Napadi uskraćivanjem usluge
    • Napadi injekcijom
    • Cross-Site Scripting (XSS) napadi
    • Napadi otmice sesije

Kako spriječiti uskraćivanje usluge (CWE-400) u Node.js HTTP poslužitelju?

Kako bi se spriječilo odbijanje usluge u Node.js HTTP poslužitelju, potrebno je ograničiti broj zahtjeva primljenih s jedne IP adrese unutar određenog vremenskog okvira. Na ovaj način se obrađuje primljeni promet preko vaše aplikacije, a postoje i razne druge metode za ublažavanje uskraćivanja usluge (CWE-400) u Node.js.





Metoda 1: Upotreba limitera brzine

Ograničivač brzine je najbolji pristup za specifično sprječavanje napada uskraćivanja usluge, budući da može ograničiti broj zahtjeva koji mogu stići od svakog zahtjeva po okviru prozora:

const expObj = zahtijevati ( 'izraziti' ) ;
const Ograničenje = zahtijevati ( 'express-rate-limit' ) ;

const demoApp = expObj ( ) ;

const cusLim = Ograničenje ( {
prozor Ms: 2 * 60 * 1000 , // petnaest minuta
max: 100 ,
} ) ;
demoApp.use ( cusLim ) ;


Opis gornjeg koda je sljedeći:



    • Prvo instalirajte i uvezite ' izraziti ' i ' ograničenje ekspresne stope ' u vašem Node Js projektu koristeći ' npm i ' naredba i ' zahtijevati () ” respektivno.
npm izražavam


    • Zatim kreirajte ekspresnu aplikaciju pod nazivom ' demoApp ' i stvorite limitator brzine dodjeljivanjem potrebnih vrijednosti za ' prozoriMs ' i ' max ' svojstva ' ograničenje ekspresne stope ” objekt.
    • ' prozoriMs ” postavlja trajanje vremena prozora i “ max ” postavlja maksimalni zahtjev koji se može primiti s jedne IP adrese po prozoru.
    • Sada primijenite ' koristiti() ' metoda koja sadrži limiter brzine s ' demoApp ” za ograničavanje zahtjeva koje prima aplikacija „demoApp”.

Metoda 2: Korištenje metoda isteka vremena

' pauza ' metode poput ' setTimeout() ', ' zaglavljaTimeout ', ' zatražiti pauzu ', ' pauza ', i ' keepAliveTimeout() ' koriste se za izlaz ili završetak ' http-poslužitelj ” poslužitelj. Ovo će spriječiti uskraćivanje usluge (CWE-400) pružanjem minimalnog vremenskog okvira otvorenog prozora. Na primjer, zahtjev je izbrisan ili će se prozor zatvoriti nakon ' 3 ” sekundi:

const server = http.createServer ( ( zahtjev, res ) = > {
req.setTimeout ( 3000 ) ;
// Obrada zahtjeva
} ) ;

Dodatni savjeti za ublažavanje uskraćivanja usluge u čvoru Js

Postoje neki dodatni savjeti koji pomažu u ublažavanju odbijanja usluge (CWE-400) u Nodejs HTTP poslužitelju, oni su navedeni u nastavku:

    • ' Obrnuti proxyji ” treba koristiti za slanje ili primanje zahtjeva aplikaciji Node Js. Ovi proxiji nude predmemoriju, balansiranje opterećenja i stavljanje IP-a na crnu listu što uvelike pomaže u ublažavanju DoS-a (CWE-400).
    • Korištenje mreže za isporuku sadržaja ' CDN ” pomaže u sprječavanju DoS(CWE-400) napada dijeljenjem koda u više dijelova i njihovim zasebnim učitavanjem na više poslužitelja.
    • Korištenje vatrozida web aplikacije ' WAF ” štiti vašu aplikaciju blokiranjem zahtjeva iz poznatog zlonamjernog izvora.
    • Korištenje ' Balansiranje opterećenja ” ravnomjerno dijeli opterećenje zahtjeva na sve poslužitelje, sprječavajući preopterećenje jednog poslužitelja.

Bilješka: Također možete provjeriti autentičnu dokumentaciju Node.js za više informacija Uskraćivanje usluge (CWE-400) .

To je sve o sprječavanju uskraćivanja usluge (CWE-400) u Node.js HTTP poslužitelju.

Zaključak

Kako biste spriječili uskraćivanje usluge (CWE-400) u Node.js HTTP poslužitelju, koristite ' Ograničivač brzine ', ' Metode isteka vremena ', ' Obrnuti proxyji ', ' CDN-ovi ', ' WAF ' i ' Balansiranje opterećenja ' Tehnike. Oni ograničavaju broj zahtjeva, zatvaraju prozor zahtjeva, preusmjeravaju zahtjev na drugu web stranicu, dijele i učitavaju izvorni kod na više poslužitelja i balansiraju opterećenje svakog poslužitelja pojedinačno. Ovaj brzi vodič ilustrira postupak za ublažavanje ili sprječavanje uskraćivanja usluge (CWE-400) u Node.js HTTP poslužitelju.