Slik utfører du manuell deteksjon med sikkerhetstiltak i Node.js

Slik Utforer Du Manuell Deteksjon Med Sikkerhetstiltak I Node Js



Å oppdage sårbarheter, beskytte koden din mot alle typer nettangrep og forhindre minnelekkasjer er de viktigste oppgavene til en programmerer. Denne oppdagelsen og forutsigelsen av dine sårbarheter som ligger inne i koden er svært vanskelig og også en tidkrevende prosess. Imidlertid er det flere tilnærminger som manuell gjenkjenning sammen med prosessen med å beskytte applikasjonen kan gjøres i Nodejs.

Denne artikkelen vil forklare tilnærmingene for å utføre manuell deteksjon med sikkerhetstiltak i Nodejs ved å dekke avsnittene nedenfor:







    • Bruk av Rate Limiter
    • Bruk av TLS/SSL for dataoverføring
    • Escape-utganger

Slik utfører du manuell deteksjon med sikkerhetstiltak i Node.js

Den manuelle gjenkjenningen utføres ved å gå gjennom koden flere ganger for å identifisere potensielle problemer i Node.js-koden. De potensielle problemene hentes ved å søke etter syntaksfeil, logiske feil og så videre. Bruken av ' feilsøker ' og ' linters ” kan også brukes til å identifisere potensielle trusler eller feil som ligger inne i Node.js-programmet.



Det finnes forskjellige metoder som koden kan beskyttes mot alle slags potensielle tråder mens du forlenger levetiden til koden din. Disse metodene er listet opp nedenfor:



Metode 1: Beskytt Node.js-programmet ved å bruke Rate Limiter

For å forhindre applikasjonen din fra tjenestenektangrep og forbedre ytelsen til applikasjonen din ved å forhindre for mange forespørsler. Den praktiske gjennomføringen er vist nedenfor:





const express = kreve ( 'uttrykke' ) ;
const rateLim = krever ( 'express-rate-limit' ) ;
const safeApp = ekspress ( ) ;

// Definer en hastighetsbegrensende mellomvare
const limiting = rateLim ( {
vinduMs: 60 * 1000 ,
maks: 100 , // Maks krav per min
beskjed: 'Beklager! Satsgrensen er overskredet' ,
} ) ;
// Bruk den hastighetsbegrensende mellomvaren
safeApp.use ( begrensende ) ;
// Definer en rute og responsbehandler
safeApp.get ( '/' , ( forespørsel, svar ) = > {
respons.send ( 'Hei Linuxhint-fellesskap!' ) ;
} ) ;

// Initialiserer Express-serveren
const localPort = process.env.PORT || 3000 ;
safeApp.listen ( localPort, ( ) = > {
console.log ( ` Server har startet på portnummer: ${localPort}


I koden ovenfor:

    • Først importerer du ' uttrykke ' og ' ekspresstakstgrense 'pakker til hoved' js ' fil. Initialiser ' uttrykke() '-applikasjon og gi den navnet ' safeApp '.
    • Definer deretter en hastighetsbegrensende mellomvare ved å sende de egendefinerte verdiene for ' windowsMs ', ' maks ', og ' beskjed ' egenskaper i ' ekspresstakstgrense '-pakken.
    • Bruk nå denne satsbegrenseren over ekspressapplikasjonen ved å bruke ' bruk() 'metoden.
    • Deretter bruker du ' få() ” metode for å sende en tilfeldig melding som forespørsel over serveren.
    • Sett til slutt portnummeret ved å bruke ' env.PORT ”-egenskapen og få ekspressappen til å lytte til det angitte portnummeret.

Metode 2: Beskytt Node.js-programmet ved å bruke TLS/SSL for dataoverføring

TLS/SSL er et sikkert socketlag som krypterer dataene som overføres mellom server- og klientsiden. Dette beskytter sensitive data som kredittkortnumre fra å bli fanget opp av angripere, og det hjelper deg også med å oppfylle samsvarskrav:



const fs = krever ( 'fs' ) ;
const express = kreve ( 'uttrykke' ) ;
const httpsObj = krever ( 'https' ) ;

const safeApp = ekspress ( ) ;
const alternativer = {
nøkkel: fs.readFileSync ( 'key.pem' ) ,
sertifisering: fs.readFileSync ( 'cert.pem' ) ,
} ;

const settingServer = httpsObj.createServer ( alternativer, safeApp ) ;

safesafeApp.get ( '/' , ( forespørsel, svar ) = > {
respons.send ( 'Hei Linuxhint-fellesskap!' ) ;
} ) ;

settingServer.listen ( 8000 ) ;


Beskrivelsen av koden ovenfor:

    • Importer først den nødvendige Node.js ' fs ', ' uttrykke ', og ' https '-avhengigheter i prosjektet ditt og initialiser 'express'-applikasjonen med navnet ' safeApp '.
    • Lag nå en ' alternativer ' liste og send filene for privat nøkkel og sertifikat ' nøkkel ' og ' cert ' egenskaper. Filene kan lages ved å bruke ' openssl kommandoen og disse filene hjelper til med å sikre tilkoblingene.
    • Til slutt oppretter du en server ved å påkalle ' createServer() '-metoden og bestå ' alternativer ” array som den første parameteren og express app som den andre.
    • For å bruke TSL/SSL-autentisering over applikasjonen, send eller motta forespørselen ved å bruke ' få() ” metode i henhold til krav.

Metode 3: Beskytt Node.js-programmet ved å bruke Escape-utgangene

For å forhindre at Node.js-applikasjonen din skripter på tvers av nettsteder ' XSS ”-angrep, er den vanligste og mer populære teknikken å unnslippe spesialtegn fra utdataene. Spesialtegnene konverteres til HTML-formatet for å forhindre XSS-angrep og konverteringen gjøres via ' escape-html ' pakkeobjekt:

const escObj = krever ( 'escape-html' ) ;
const dummyStr = '' ;

const modStr = escObj ( dummyStr ) ;
console.log ( counterStr ) ;


Beskrivelsen av koden ovenfor er som følger:

    • Først, ' escape-html 'pakken importeres til hoved' js '-filen og dens objekt eller forekomst er lagret i en ' escObj variabel.
    • Deretter lagres en tilfeldig kodelinje som inneholder spesialtegn i en ' dummyStr variabel.
    • Deretter passerer du ' dummyStr ' variabel inne i ' escObj ” parentes for konverteringskode til rent HTML-format.
    • Resultatet lagres i en variabel ' counterStr ” som deretter vises på konsollen.

Utdataene fra koden ovenfor viser at spesialtegnene som inneholder den angitte strengen nå er konvertert til HTML-kodingsformat:


Det handler om å utføre manuell deteksjon med sikkerhetstiltak i Nodejs.

Konklusjon

For å utføre manuell gjenkjenning, se gjennom koden flere ganger for alle typer syntaks eller logiske feil og utfør flere tester over koden. For å beskytte Node.js-programmet ditt mot alle slags cyberangrep eller for å forhindre lekkasje av data, bruk ' Satsbegrenser ', ' TLS/SSL for dataoverføring ', og ' Escape-utganger 'teknikker. Denne veiledningen har illustrert prosedyren for å utføre manuell deteksjon med sikkerhetstiltak i Node.js.