Τρόπος εκτέλεσης μη αυτόματης ανίχνευσης με διασφαλίσεις στο Node.js

Tropos Ekteleses Me Automates Anichneuses Me Diasphaliseis Sto Node Js



Ο εντοπισμός τρωτών σημείων, η προστασία του κώδικά σας από όλους τους τύπους κυβερνοεπιθέσεων και η αποτροπή διαρροών μνήμης είναι τα πιο βασικά καθήκοντα ενός προγραμματιστή. Αυτός ο εντοπισμός και η πρόβλεψη των τρωτών σημείων σας που βρίσκονται μέσα στον κώδικα είναι πολύ δύσκολη και επίσης χρονοβόρα διαδικασία. Ωστόσο, υπάρχουν αρκετές προσεγγίσεις με τις οποίες ο χειροκίνητος εντοπισμός μαζί με τη διαδικασία προστασίας της εφαρμογής μπορεί να γίνει στο Nodejs.

Αυτό το άρθρο θα εξηγήσει τις προσεγγίσεις για την εκτέλεση μη αυτόματης ανίχνευσης με διασφαλίσεις στο Nodejs, καλύπτοντας τις παρακάτω ενότητες:







    • Χρήση του Rate Limiter
    • Χρήση TLS/SSL για μετάδοση δεδομένων
    • Έξοδοι διαφυγής

Τρόπος εκτέλεσης μη αυτόματης ανίχνευσης με διασφαλίσεις στο Node.js

Ο μη αυτόματος εντοπισμός πραγματοποιείται με επανεξέταση του κώδικα πολλές φορές για τον εντοπισμό πιθανών προβλημάτων στον κώδικα Node.js. Τα πιθανά προβλήματα ανακτώνται με αναζήτηση συντακτικών σφαλμάτων, λογικών σφαλμάτων κ.λπ. Η χρήση του ' εντοπιστής σφαλμάτων ' και ' σεντόνια ” μπορεί επίσης να χρησιμοποιηθεί για τον εντοπισμό πιθανών απειλών ή σφαλμάτων που βρίσκονται μέσα στο πρόγραμμα Node.js.



Υπάρχουν διάφορες μέθοδοι με τις οποίες μπορεί να προστατευτεί ο κώδικας από κάθε είδους πιθανά νήματα, ενώ παράλληλα ενισχύεται η διάρκεια ζωής του κώδικά σας. Αυτές οι μέθοδοι παρατίθενται παρακάτω:



Μέθοδος 1: Προστατέψτε το πρόγραμμα Node.js χρησιμοποιώντας τον περιοριστή ρυθμού

Για να αποτρέψετε την εφαρμογή σας από επιθέσεις άρνησης υπηρεσίας και να βελτιώσετε την απόδοση της εφαρμογής σας αποτρέποντας πάρα πολλά αιτήματα. Η πρακτική εφαρμογή φαίνεται παρακάτω:





const express = απαιτώ ( 'εξπρές' ) ;
const rateLim = απαιτείται ( «οριακό όριο ταχύτητας» ) ;
const safeApp = express ( ) ;

// Καθορίστε ένα ενδιάμεσο λογισμικό περιορισμού ρυθμού
const limiting = rateLim ( {
windowMs: 60 * 1000 ,
Μέγιστη: 100 , // Μέγιστη απαίτηση ανά λεπτό
μήνυμα: 'Συγνώμη! Υπέρβαση του ορίου ποσοστού' ,
} ) ;
// Εφαρμόστε το ενδιάμεσο λογισμικό περιορισμού ποσοστού
safeApp.use ( περιοριστική ) ;
// Καθορίστε μια διαδρομή και έναν χειριστή απόκρισης
safeApp.get ( '/' , ( απαιτώ απάντηση ) = > {
απάντηση.αποστολή ( 'Γεια σας Κοινότητα Linuxhint!' ) ;
} ) ;

// Εκκίνηση του διακομιστή Express
const localPort = process.env.PORT || 3000 ;
safeApp.ακούστε ( localPort, ( ) = > {
console.log ( ` Ο διακομιστής έχει ξεκινήσει στον αριθμό θύρας: ${localPort}


Στον παραπάνω κώδικα:

    • Πρώτα, εισαγάγετε το ' εξπρές ' και ' express-rate-όριο “πακέτα στο κύριο” js ' αρχείο. Αρχικοποιήστε το « εξπρές() 'εφαρμογή και δώστε της το όνομα' safeApp '.
    • Στη συνέχεια, ορίστε ένα ενδιάμεσο λογισμικό περιορισμού ρυθμού περνώντας τις προσαρμοσμένες τιμές για ' windowsMs ',' Μέγιστη ', και ' μήνυμα ' ακίνητα στο ' express-rate-όριο ” πακέτο.
    • Τώρα, εφαρμόστε αυτόν τον περιοριστή ρυθμού στη ρητή εφαρμογή χρησιμοποιώντας το ' χρήση() 'μέθοδος.
    • Στη συνέχεια, χρησιμοποιήστε το ' παίρνω() ” μέθοδο αποστολής ενός τυχαίου μηνύματος ως αίτημα μέσω του διακομιστή.
    • Τέλος, ορίστε τον αριθμό θύρας χρησιμοποιώντας το ' env.PORT » και κάντε την εφαρμογή express να ακούσει τον καθορισμένο αριθμό θύρας.

Μέθοδος 2: Προστατέψτε το πρόγραμμα Node.js χρησιμοποιώντας το TLS/SSL για μετάδοση δεδομένων

Το TLS/SSL είναι ένα ασφαλές επίπεδο υποδοχής που κρυπτογραφεί τα δεδομένα που μεταδίδονται μεταξύ του διακομιστή και του πελάτη. Αυτό προστατεύει ευαίσθητα δεδομένα, όπως αριθμούς πιστωτικών καρτών, από την υποκλοπή από εισβολείς και σας βοηθά επίσης να ικανοποιήσετε τις απαιτήσεις συμμόρφωσης:



const fs = απαιτώ ( 'fs' ) ;
const express = απαιτώ ( 'εξπρές' ) ;
const httpsObj = απαιτούν ( 'https' ) ;

const safeApp = express ( ) ;
const επιλογές = {
κλειδί: fs.readFileSync ( 'key.pem' ) ,
πιστοποιητικό: fs.readFileSync ( 'cert.pem' ) ,
} ;

const settingServer = httpsObj.createServer ( επιλογές, safeApp ) ;

safesafeApp.get ( '/' , ( απαιτώ απάντηση ) = > {
απάντηση.αποστολή ( 'Γεια σας Κοινότητα Linuxhint!' ) ;
} ) ;

settingServer.listen ( 8000 ) ;


Η περιγραφή του παραπάνω κώδικα:

    • Αρχικά, εισαγάγετε το απαιτούμενο Node.js ' fs ',' εξπρές ', και ' https ' εξαρτήσεις στο έργο σας και αρχικοποιήστε την εφαρμογή 'express' με το όνομα ' safeApp '.
    • Τώρα, δημιουργήστε ένα ' επιλογές ' λίστα και μεταβίβαση των αρχείων για ιδιωτικό κλειδί και πιστοποιητικό ' κλειδί ' και ' πιστοποιητικό ' ιδιότητες. Τα αρχεία μπορούν να δημιουργηθούν χρησιμοποιώντας το ' openssl εντολή και αυτά τα αρχεία βοηθούν στην ασφάλεια των συνδέσεων.
    • Τέλος, δημιουργήστε έναν διακομιστή επικαλώντας το ' createServer() ' μέθοδος και περάστε το ' επιλογές ' array ως πρώτη παράμετρος και express app ως δεύτερη.
    • Για να εφαρμόσετε τον έλεγχο ταυτότητας TSL/SSL πάνω από την εφαρμογή, στείλτε ή λάβετε το αίτημα χρησιμοποιώντας το ' παίρνω() ' μέθοδος σύμφωνα με τις απαιτήσεις.

Μέθοδος 3: Προστατέψτε το πρόγραμμα Node.js χρησιμοποιώντας τις εξόδους Escape

Για να αποτρέψετε την εφαρμογή Node.js από δέσμες ενεργειών μεταξύ τοποθεσιών ' XSS ” επιθέσεις, η πιο κοινή και πιο δημοφιλής τεχνική είναι η διαφυγή ειδικών χαρακτήρων από την έξοδο. Οι ειδικοί χαρακτήρες μετατρέπονται σε μορφή HTML για την αποτροπή επιθέσεων XSS και η μετατροπή γίνεται μέσω του ' escape-html ” αντικείμενο πακέτου:

const escObj = απαιτώ ( 'escape-html' ) ;
const dummyStr = '' ;

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


Η περιγραφή του παραπάνω κώδικα έχει ως εξής:

    • Πρώτον, το « escape-html 'Το πακέτο εισάγεται στο κύριο' js ' αρχείο και το αντικείμενο ή η παρουσία του αποθηκεύεται σε ' escObj ” μεταβλητή.
    • Στη συνέχεια, μια τυχαία γραμμή κώδικα που περιέχει ειδικούς χαρακτήρες αποθηκεύεται σε ένα ' dummyStr ” μεταβλητή.
    • Μετά από αυτό, περάστε το ' dummyStr ' μεταβλητή μέσα στο ' escObj ” παρένθεση για μετατροπή κώδικα σε μορφή καθαρής HTML.
    • Το αποτέλεσμα αποθηκεύεται σε μια μεταβλητή ' counterStr ” το οποίο στη συνέχεια εμφανίζεται στην κονσόλα.

Η έξοδος του παραπάνω κώδικα δείχνει ότι οι ειδικοί χαρακτήρες που περιέχουν την παρεχόμενη συμβολοσειρά μετατρέπονται τώρα σε μορφή κωδικοποίησης HTML:


Αυτό αφορά τη μη αυτόματη ανίχνευση με διασφαλίσεις στο Nodejs.

συμπέρασμα

Για να εκτελέσετε μη αυτόματο εντοπισμό, ελέγξτε τον κώδικά σας πολλές φορές για οποιονδήποτε τύπο συντακτικών ή λογικών σφαλμάτων και εκτελέστε πολλαπλούς ελέγχους του κώδικα. Για να προστατέψετε το πρόγραμμα Node.js από κάθε είδους κυβερνοεπιθέσεις ή για να αποτρέψετε τη διαρροή δεδομένων, χρησιμοποιήστε το ' Rate Limiter ',' TLS/SSL για μετάδοση δεδομένων ', και ' Έξοδοι διαφυγής » τεχνικές. Αυτός ο οδηγός επεξηγεί τη διαδικασία εκτέλεσης μη αυτόματης ανίχνευσης με διασφαλίσεις στο Node.js.