Comment effectuer une détection manuelle avec des sauvegardes dans Node.js

Comment Effectuer Une Detection Manuelle Avec Des Sauvegardes Dans Node Js



La détection des vulnérabilités, la protection de votre code contre tous les types de cyberattaques et la prévention des fuites de mémoire sont les tâches les plus essentielles d'un programmeur. Cette détection et cette prédiction de vos vulnérabilités résidant à l’intérieur du code sont très difficiles et prennent également du temps. Cependant, il existe plusieurs approches permettant d'effectuer une détection manuelle ainsi que le processus de sauvegarde de l'application dans Nodejs.

Cet article expliquera les approches pour effectuer une détection manuelle avec des sauvegardes dans Nodejs en couvrant les sections ci-dessous :







    • Utilisation du limiteur de débit
    • Utilisation de TLS/SSL pour la transmission de données
    • Sorties d'échappement

Comment effectuer une détection manuelle avec des sauvegardes dans Node.js

La détection manuelle est effectuée en examinant le code plusieurs fois pour identifier les problèmes potentiels dans le code Node.js. Les problèmes potentiels sont récupérés en recherchant les erreurs de syntaxe, les erreurs logiques, etc. L'utilisation de ' débogueur ' et ' linters » peut également être utilisé pour identifier les menaces ou erreurs potentielles résidant dans le programme Node.js.



Il existe différentes méthodes par lesquelles le code peut être protégé contre toutes sortes de threads potentiels tout en améliorant la durée de vie de votre code. Ces méthodes sont répertoriées ci-dessous :



Méthode 1 : protégez le programme Node.js en utilisant le limiteur de débit

Pour empêcher votre application des attaques par déni de service et pour améliorer les performances de votre application en empêchant un trop grand nombre de requêtes. La mise en œuvre pratique est présentée ci-dessous :





const express = exiger ( 'exprimer' ) ;
const rateLim = exiger ( 'limite de taux express' ) ;
const safeApp = express ( ) ;

// Définir un middleware limitant le débit
const limitation = rateLim ( {
fenêtreMme : 60 * 1000 ,
maximum : 100 , // Demande maximale par minute
message: 'Désolé! La limite de débit est dépassée ,
} ) ;
// Appliquer le middleware limitant le débit
safeApp.use ( limitant ) ;
// Définir un gestionnaire d'itinéraire et de réponse
safeApp.get ( '/' , ( demande de réponse ) = > {
réponse.envoyer ( « Bonjour la communauté Linuxhint ! » ) ;
} ) ;

// Initialisation du serveur Express
const localPort = processus.env.PORT || 3000 ;
safeApp.écouter ( port local, ( ) = > {
console.log ( ` Le serveur a démarré sur le numéro de port : ${localPort}


Dans le code ci-dessus :

    • Tout d’abord, importez le « exprimer ' et ' limite de taux express ' paquets dans le principal ' js ' déposer. Initialisez le ' exprimer() « application et attribuez-lui le nom » application sûre ».
    • Ensuite, définissez un middleware limitant le débit en transmettant les valeurs personnalisées pour « WindowsMme ', ' maximum ', et ' message ' propriétés dans le ' limite de taux express ' emballer.
    • Maintenant, appliquez ce limiteur de débit sur l'application express en utilisant le ' utiliser() ' méthode.
    • Ensuite, utilisez le ' obtenir() ' méthode pour envoyer un message aléatoire en tant que requête sur le serveur.
    • Enfin, définissez le numéro de port à l’aide du «  env.PORT ' et faites en sorte que l'application express écoute le numéro de port spécifié.

Méthode 2 : protégez le programme Node.js en utilisant TLS/SSL pour la transmission de données

TLS/SSL est une couche de socket sécurisée qui crypte les données transmises entre le serveur et le côté client. Cela protège les données sensibles telles que les numéros de carte de crédit contre l'interception par des attaquants et vous aide également à répondre aux exigences de conformité :



const fs = exiger ( 'fs' ) ;
const express = exiger ( 'exprimer' ) ;
const httpsObj = exiger ( 'https' ) ;

const safeApp = express ( ) ;
options const = {
clé : fs.readFileSync ( 'key.pem' ) ,
certificat : fs.readFileSync ( 'cert.pem' ) ,
} ;

const settingsServer = httpsObj.createServer ( options, application sécurisée ) ;

safesafeApp.get ( '/' , ( demande de réponse ) = > {
réponse.envoyer ( « Bonjour la communauté Linuxhint ! » ) ;
} ) ;

paramètreServeur.écouter ( 8000 ) ;


La description du code ci-dessus :

    • Dans un premier temps, importez le Node.js requis ' fs ', ' exprimer ', et ' https ' dépendances dans votre projet et initialisez l'application ' express ' avec le nom de ' application sécurisée ».
    • Maintenant, créez un ' choix ' lister et transmettre les fichiers pour la clé privée et le certificat ' clé ' et ' certificat ' propriétés. Les fichiers peuvent être créés en utilisant le «  ouvressl » et ces fichiers aident à sécuriser les connexions.
    • Enfin, créez un serveur en appelant le «  créerServeur() » et passez la méthode « choix ' tableau comme premier paramètre et application express comme second.
    • Pour appliquer l'authentification TSL/SSL sur l'application, envoyez ou recevez la demande en utilisant le « obtenir() » méthode selon les besoins.

Méthode 3 : protégez le programme Node.js en utilisant les sorties d'échappement

Pour empêcher votre application Node.js de créer des scripts intersites ' XSS ', la technique la plus courante et la plus populaire consiste à échapper des caractères spéciaux à la sortie. Les caractères spéciaux sont convertis au format HTML pour éviter les attaques XSS et la conversion se fait via le « évasion-html ' Objet du package :

const escObj = exiger ( 'évasion-html' ) ;
const facticeStr = '' ;

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


La description du code ci-dessus est la suivante :

    • Premièrement la ' évasion-html ' Le package est importé dans le main ' js ' Le fichier et son objet ou instance sont stockés dans un ' escObj » variable.
    • Ensuite, une ligne aléatoire de code contenant des caractères spéciaux est stockée dans un « dummyStr » variable.
    • Après cela, passez le ' dummyStr ' variable à l'intérieur du ' escObj » parenthèse pour la conversion du code au format HTML pur.
    • Le résultat est stocké dans une variable « compteurStr » qui s’affiche ensuite sur la console.

Le résultat du code ci-dessus montre que les caractères spéciaux contenant la chaîne fournie sont désormais convertis au format d'encodage HTML :


Il s’agit d’effectuer une détection manuelle avec des sauvegardes dans Nodejs.

Conclusion

Pour effectuer une détection manuelle, examinez votre code plusieurs fois pour détecter tout type d'erreur de syntaxe ou d'erreur logique et effectuez plusieurs tests sur le code. Pour protéger votre programme Node.js de toutes sortes de cyberattaques ou pour éviter les fuites de données, utilisez le « Limiteur de débit ', ' TLS/SSL pour la transmission de données ', et ' Sorties d'échappement »techniques. Ce guide a illustré la procédure de détection manuelle avec des sauvegardes dans Node.js.