Jak zabránit odmítnutí služby (CWE-400) na HTTP serveru Node.js?

Jak Zabranit Odmitnuti Sluzby Cwe 400 Na Http Serveru Node Js



S rozvojem technologií v každé oblasti se také zvýšily šance na ztrátu dat a kybernetické útoky. Nové technologie hrají zásadní roli v oblasti etického rozvoje a stejným způsobem lze tyto technologie také použít k přesnějšímu a snadnějšímu provádění neetických akcí. Jeden takový útok, který může provést hacker, je „ Denial of Service (CWE-400) “.

Tato příručka vysvětluje postup, jak zabránit odmítnutí služby CWE-400 na serveru HTTP Nodejs.







Co je odmítnutí služby HTTP serveru (CWE-400)?

Denial of Service (CWE-400) je pokus útočníka znepřístupnit aplikaci pro původní uživatele tím, že ji zahltí provozem botů. Tento útok se také provádí tak, že se zneužijí přetrvávající zranitelnosti aplikace, aby byla aplikace mnohem pomalejší.



Jsou aplikace Node Js zranitelné vůči škodlivým útokům?

Ano, aplikace Node.js mohou být zranitelné vůči škodlivým útokům stejně jako jakýkoli jiný software nebo aplikace. Některé nejběžnější a nejoblíbenější typy škodlivých útoků jsou uvedeny níže:



    • Denial of Service útoky
    • Injekční útoky
    • Cross-Site Scripting (XSS) útoky
    • Útoky únosů relace

Jak zabránit odmítnutí služby (CWE-400) na HTTP serveru Node.js?

Aby se zabránilo odmítnutí služby na HTTP serveru Node.js, je třeba omezit počet požadavků přijatých z jedné adresy IP v určeném časovém rámci. Tímto způsobem se zpracuje přijatý provoz přes vaši aplikaci a existují různé další metody, jak zmírnit odmítnutí služby (CWE-400) v Node.js.





Metoda 1: Použití omezovače rychlosti

Omezovač rychlosti je nejlepším způsobem, jak konkrétně zabránit útoku Denial-of-service, protože může omezit počet požadavků, které mohou přijít z každého požadavku na rám okna:

const expObj = vyžadovat ( 'vyjádřit' ) ;
const Omezující = vyžadovat ( 'expres-rate-limit' ) ;

const demoApp = expObj ( ) ;

const cusLim = Omezující ( {
windowMs: 2 * 60 * 1000 , // patnáct minut
max: 100 ,
} ) ;
demoApp.use ( cusLim ) ;


Popis výše uvedeného kódu je následující:



    • Nejprve nainstalujte a importujte soubor „ vyjádřit ' a ' expresní sazba-limit “ ve vašem projektu Node Js pomocí „ npm i 'příkaz a' vyžadovat() “.
npm vyjadřuji


    • Dále vytvořte expresní aplikaci s názvem „ demoApp “ a vytvořte omezovač rychlosti přiřazením požadovaných hodnot pro „ windowsMs ' a ' max ' vlastnosti ' expresní sazba-limit “objekt.
    • ' windowsMs “ nastavuje dobu trvání okna a “ max ” nastavuje maximální požadavek, který lze přijmout z jedné IP adresy na okno.
    • Nyní použijte „ použití() ” metoda obsahující omezovač rychlosti s “ demoApp ” aplikace k omezení požadavku přijatého aplikací “demoApp”.

Metoda 2: Použití metod časového limitu

' Časový limit 'metody jako' setTimeout() ',' headersTimeout ',' zažádat o timeout ',' Časový limit ', a ' keepAliveTimeout() “ se používají k ukončení nebo ukončení “ http-server “server. Tím se zabrání odmítnutí služby (CWE-400) poskytnutím minimálního časového rámce otevřeného okna. Požadavek byl například smazán nebo se okno zavře po „ 3 ”sekundy:

const server = http.createServer ( ( req, req ) = > {
req.setTimeout ( 3000 ) ;
// Vyřízení požadavku
} ) ;

Další tipy pro zmírnění odmítnutí služby v Node Js

Existuje několik dalších tipů, které pomáhají zmírnit odmítnutí služby (CWE-400) na serveru Nodejs HTTP, jsou uvedeny níže:

    • ' Reverzní proxy ” by se mělo používat k odesílání nebo přijímání požadavků do aplikace Node Js. Tyto proxy nabízejí ukládání do mezipaměti, vyvažování zátěže a blacklisting IP, což hodně pomáhá při zmírňování DoS (CWE-400).
    • Použití sítě pro doručování obsahu “ CDN ” pomáhá předcházet útoku DoS (CWE-400) rozdělením kódu na více částí a jejich nahráním samostatně na více serverů.
    • Použití brány firewall webové aplikace “ WAF ” chrání vaši aplikaci blokováním požadavků ze známého škodlivého zdroje.
    • Využití „ Load Balancer ” rovnoměrně rozděluje zátěž požadavků mezi všechny servery, čímž zabraňuje přetížení jediného serveru.

Poznámka: Můžete také zkontrolovat autentickou dokumentaci Node.js, kde získáte další informace Denial of Service (CWE-400) .

To je vše o prevenci Denial of Service (CWE-400) na HTTP serveru Node.js.

Závěr

Chcete-li zabránit odmítnutí služby (CWE-400) na serveru Node.js HTTP Server, použijte „ Omezovač rychlosti ',' Metody časového limitu ',' Reverzní proxy ',' sítě CDN ',' WAF ' a ' Load Balancer “techniky. Omezují počet požadavků, zavírají okno požadavku, přesměrovávají požadavek na jinou webovou stránku, rozdělují a nahrávají původní kód na více serverů a vyrovnávají zatížení každého serveru. Tento rychlý průvodce ilustruje proces zmírnění nebo zabránění odmítnutí služby (CWE-400) na serveru Node.js HTTP.