Come eseguire il rilevamento manuale con protezioni in Node.js

Come Eseguire Il Rilevamento Manuale Con Protezioni In Node Js



Il rilevamento delle vulnerabilità, la protezione del codice da tutti i tipi di attacchi informatici e la prevenzione delle perdite di memoria sono i compiti più essenziali di un programmatore. Il rilevamento e la previsione delle vulnerabilità che risiedono all'interno del codice sono molto difficili e richiedono anche molto tempo. Tuttavia, esistono diversi approcci con cui è possibile eseguire il rilevamento manuale insieme al processo di salvaguardia dell'applicazione in Nodejs.

Questo articolo spiegherà gli approcci per eseguire il rilevamento manuale con protezioni in Nodejs coprendo le sezioni seguenti:







    • Utilizzo del limitatore di velocità
    • Utilizzo di TLS/SSL per la trasmissione dei dati
    • Uscite di fuga

Come eseguire il rilevamento manuale con le protezioni in Node.js

Il rilevamento manuale viene eseguito esaminando il codice più volte per identificare potenziali problemi nel codice Node.js. I potenziali problemi vengono recuperati cercando errori di sintassi, errori logici e così via. L'impiego di ' debugger ' E ' linter ' può anche essere utilizzato per identificare potenziali minacce o errori che risiedono all'interno del programma Node.js.



Esistono vari metodi con cui è possibile salvaguardare il codice da tutti i tipi di potenziali thread, migliorando al tempo stesso la durata del codice. Questi metodi sono elencati di seguito:



Metodo 1: salvaguardare il programma Node.js utilizzando il limitatore di velocità

Per impedire alla tua applicazione attacchi di negazione del servizio e migliorare le prestazioni della tua applicazione prevenendo troppe richieste. L'implementazione pratica è mostrata di seguito:





const espresso = richiedi ( 'esprimere' ) ;
const rateLim = richiedono ( 'limite di velocità espressa' ) ;
const safeApp = espresso ( ) ;

// Definire un middleware di limitazione della velocità
const limitazione = rateLim ( {
signora finestra: 60 * 1000 ,
massimo: 100 , // Richiesta massima al min
Messaggio: 'Scusa! Il limite di tariffa è stato superato' ,
} ) ;
// Applicare il middleware di limitazione della velocità
safeApp.use ( limitante ) ;
// Definire un percorso e un gestore di risposta
safeApp.get ( '/' , ( richiedere risposta ) = > {
risposta.invia ( 'Ciao comunità Linuxhint!' ) ;
} ) ;

// Inizializzazione del server Express
const localPort = process.env.PORT || 3000 ;
safeApp.listen ( porto locale, ( ) = > {
console.log ( ` Il server è stato avviato sul numero di porta: ${portalocale}


Nel codice sopra:

    • Innanzitutto, importa il ' esprimere ' E ' limite di tariffa espressa 'pacchetti nel menu principale' js ' file. Inizializzare il ' esprimere() ' applicazione e assegnarle il nome ' safeApp ”.
    • Successivamente, definisci un middleware che limita la velocità passando i valori personalizzati per ' finestreMs ', ' massimo ', E ' Messaggio ' proprietà nel ' limite di tariffa espressa ' pacchetto.
    • Ora, applica questo limitatore di velocità sull'applicazione espressa utilizzando il ' utilizzo() ' metodo.
    • Quindi, utilizzare il ' Ottenere() ' metodo per inviare un messaggio casuale come richiesta sul server.
    • Infine, imposta il numero di porta utilizzando il pulsante “ inv.PORT ' e fare in modo che l'app Express ascolti il ​​numero di porta specificato.

Metodo 2: salvaguardare il programma Node.js utilizzando TLS/SSL per la trasmissione dei dati

TLS/SSL è un livello socket sicuro che crittografa i dati trasmessi tra il server e il lato client. Ciò protegge i dati sensibili come i numeri di carta di credito dall'intercettazione da parte di aggressori e ti aiuta anche a soddisfare i requisiti di conformità:



const fs = richiedono ( 'fs' ) ;
const espresso = richiedi ( 'esprimere' ) ;
const httpsObj = richiedono ( 'https' ) ;

const safeApp = espresso ( ) ;
opzioni const = {
chiave: fs.readFileSync ( 'chiave.pem' ) ,
certificato: fs.readFileSync ( 'cert.pem' ) ,
} ;

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

safesafeApp.get ( '/' , ( richiedere risposta ) = > {
risposta.invia ( 'Ciao comunità Linuxhint!' ) ;
} ) ;

impostazioneServer.listen ( 8000 ) ;


La descrizione del codice sopra:

    • Inizialmente, importa il Node.js richiesto “ fs ', ' esprimere ', E ' https ' nel tuo progetto e inizializza l'applicazione 'express' con il nome di ' safeApp ”.
    • Ora crea un ' opzioni ' elenca e passa i file per la chiave privata e il certificato ' chiave ' E ' cert ' proprietà. I file possono essere creati utilizzando il comando ' openssl 'comando e questi file aiutano a proteggere le connessioni.
    • Infine, crea un server invocando il comando “ creaServer() ' e passare il ' opzioni 'array come primo parametro ed express app come secondo.
    • Per applicare l'autenticazione TSL/SSL sull'applicazione, inviare o ricevere la richiesta utilizzando il pulsante ' Ottenere() ” metodo in base alle esigenze.

Metodo 3: salvaguardare il programma Node.js utilizzando gli output di escape

Per impedire alla tua applicazione Node.js di eseguire script cross-site “ XSS ” attacchi, la tecnica più comune e popolare è la fuga di caratteri speciali dall'output. I caratteri speciali vengono convertiti nel formato HTML per prevenire attacchi XSS e la conversione avviene tramite il ' escape-html 'oggetto del pacchetto:

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

const modStr = escObj ( manichinoStr ) ;
console.log ( contatoreStr ) ;


La descrizione del codice sopra è la seguente:

    • Prima il ' escape-html 'il pacchetto viene importato nel file principale' js ' e il suo oggetto o istanza sono archiviati in un file ' escObj 'variabile.
    • Successivamente, una riga casuale di codice contenente caratteri speciali viene memorizzata in un file “ manichinoStr 'variabile.
    • Successivamente, passa il ' manichinoStr ' variabile all'interno del ' escObj ' parentesi per la conversione del codice in formato HTML puro.
    • Il risultato è memorizzato in una variabile “ contatoreStr ' che verrà poi visualizzato sulla console.

L'output del codice precedente mostra che i caratteri speciali contenenti la stringa fornita vengono ora convertiti nel formato di codifica HTML:


Si tratta solo di eseguire il rilevamento manuale con protezioni in Nodejs.

Conclusione

Per eseguire il rilevamento manuale, rivedi il codice più volte per eventuali tipi di errori di sintassi o logici ed esegui più test sul codice. Per proteggere il tuo programma Node.js da tutti i tipi di attacchi informatici o per prevenire la fuga di dati, utilizza il pulsante ' Limitatore di velocità ', ' TLS/SSL per la trasmissione dei dati ', E ' Uscite di fuga ' tecniche. Questa guida ha illustrato la procedura per eseguire il rilevamento manuale con protezioni in Node.js.