Kako preprečiti zavrnitev storitve (CWE-400) v strežniku HTTP Node.js?

Kako Prepreciti Zavrnitev Storitve Cwe 400 V Strezniku Http Node Js



Z razvojem tehnologije na vseh področjih so se povečale tudi možnosti za izgubo podatkov in kibernetske napade. Nove tehnologije igrajo ključno vlogo na področju etičnega razvoja in na enak način se te tehnologije lahko uporabljajo tudi za izvajanje neetičnih dejanj na natančnejši in lažji način. En tak napad, ki ga lahko izvede heker, je ' Zavrnitev storitve (CWE-400) ”.

Ta priročnik razlaga postopek za preprečevanje zavrnitve storitve CWE-400 v strežniku Nodejs HTTP.







Kaj je zavrnitev storitve strežnika HTTP (CWE-400)?

Zavrnitev storitve (CWE-400) je poskus napadalca, da naredi aplikacijo nedostopno za prvotne uporabnike tako, da aplikacijo preplavi s prometom botov. Ta napad se izvaja tudi z izkoriščanjem stalnih ranljivosti aplikacije, da je aplikacija veliko počasnejša.



Ali so aplikacije Node Js ranljive za zlonamerne napade?

Da, aplikacije Node.js so lahko ranljive za zlonamerne napade tako kot katera koli druga programska oprema ali aplikacija. Nekatere najpogostejše in priljubljene vrste zlonamernih napadov so navedene spodaj:



    • Napadi z zavrnitvijo storitve
    • Napadi z injiciranjem
    • Napadi s skriptnim izvajanjem med spletnimi mesti (XSS).
    • Napadi za ugrabitev seje

Kako preprečiti zavrnitev storitve (CWE-400) v strežniku HTTP Node.js?

Da bi preprečili zavrnitev storitve v strežniku HTTP Node.js, je treba omejiti število zahtev, prejetih z enega naslova IP v določenem časovnem okviru. Na ta način se obravnava prejeti promet prek vaše aplikacije, obstajajo pa tudi različne druge metode za ublažitev zavrnitve storitve (CWE-400) v Node.js.





1. način: uporaba omejevalnika hitrosti

Omejevalnik hitrosti je najboljši pristop za specifično preprečevanje napada zavrnitve storitve, saj lahko omeji število zahtev, ki lahko prispejo iz vsake zahteve na okvir okna:

const expObj = zahtevaj ( 'express' ) ;
const Omejitev = zahtevaj ( 'express-rate-limit' ) ;

const demoApp = expObj ( ) ;

const cusLim = Omejitev ( {
oknoMs: 2 * 60 * 1000 , // petnajst minut
max: 100 ,
} ) ;
demoApp.use ( cusLim ) ;


Opis zgornje kode je naslednji:



    • Najprej namestite in uvozite » ekspresno « in » omejitev hitre stopnje « v vašem projektu Node Js z uporabo » npm i ' ukaz in ' zahtevaj() ” oz.
npm izražam


    • Nato ustvarite ekspresno aplikacijo z imenom ' demoApp « in ustvarite omejevalnik hitrosti tako, da dodelite zahtevane vrednosti za » windowsMs « in » maks ' lastnosti ' omejitev hitre stopnje ” predmet.
    • ' windowsMs ” nastavi trajanje časa okna in “ maks ” nastavi največjo zahtevo, ki jo je mogoče prejeti z enega naslova IP na okno.
    • Zdaj uporabite ' uporaba() ', ki vsebuje omejevalnik hitrosti z ' demoApp « za omejitev zahtev, ki jih prejme aplikacija »demoApp«.

2. način: Uporaba metod časovne omejitve

' odmor ' metode, kot je ' setTimeout() ', ' headersTimeout ', ' zahtevati odmor ', ' odmor «, in » keepAliveTimeout() « se uporabljajo za izhod ali konec » http-strežnik ” strežnik. To bo preprečilo zavrnitev storitve (CWE-400) z zagotavljanjem minimalnega časovnega okvira odprtega okna. Zahteva je bila na primer izbrisana ali pa bo okno zaprto po ' 3 ” sekund:

strežnik const = http.createServer ( ( zahteva, res ) = > {
req.setTimeout ( 3000 ) ;
// Obravnava zahteve
} ) ;

Dodatni nasveti za ublažitev zavrnitve storitve v vozlišču Js

Obstaja nekaj dodatnih nasvetov, ki pomagajo ublažiti zavrnitev storitve (CWE-400) v strežniku Nodejs HTTP, ti so navedeni spodaj:

    • ' Povratni posredniki ” je treba uporabiti za pošiljanje ali prejemanje zahtev aplikaciji Node Js. Ti posredniki ponujajo predpomnjenje, uravnoteženje obremenitve in črne sezname IP, kar zelo pomaga pri blaženju DoS (CWE-400).
    • Uporaba omrežja za dostavo vsebine ' CDN ” pomaga preprečiti napad DoS(CWE-400), tako da kodo razdeli na več kosov in jih ločeno naloži na več strežnikov.
    • Uporaba požarnega zidu spletne aplikacije “ WAF ” ščiti vašo aplikacijo tako, da blokira zahteve iz znanega zlonamernega vira.
    • Uporaba ' Izravnalnik obremenitve ” enakomerno razdeli obremenitev zahtev na vse strežnike in tako prepreči preobremenitev enega samega strežnika.

Opomba: Za več informacij lahko preverite tudi verodostojno dokumentacijo Node.js Zavrnitev storitve (CWE-400) .

To je vse o preprečevanju zavrnitve storitve (CWE-400) v strežniku HTTP Node.js.

Zaključek

Če želite preprečiti zavrnitev storitve (CWE-400) v strežniku HTTP Node.js, uporabite » Omejevalnik hitrosti ', ' Metode časovne omejitve ', ' Povratni posredniki ', ' CDN-ji ', ' WAF « in » Izravnalnik obremenitve ” tehnike. Omejijo število zahtev, zaprejo okno zahtev, preusmerijo zahtevo na drugo spletno mesto, razdelijo in naložijo izvirno kodo na več strežnikov ter uravnotežijo obremenitev vsakega strežnika posebej. Ta hitri vodnik je ponazoril postopek za ublažitev ali preprečevanje zavrnitve storitve (CWE-400) v strežniku HTTP Node.js.