Cara Melakukan Pengesanan Manual dengan Safeguards dalam Node.js

Cara Melakukan Pengesanan Manual Dengan Safeguards Dalam Node Js



Pengesanan untuk kelemahan, melindungi kod anda daripada semua jenis serangan siber dan mencegah kebocoran memori adalah tugas paling penting seorang pengaturcara. Pengesanan dan ramalan kelemahan anda yang berada di dalam kod ini adalah sangat sukar dan juga proses yang memakan masa. Walau bagaimanapun, terdapat beberapa pendekatan di mana pengesanan manual bersama-sama dengan proses melindungi aplikasi boleh dilakukan dalam Nodejs.

Artikel ini akan menerangkan pendekatan untuk melaksanakan pengesanan manual dengan perlindungan dalam Nodejs dengan merangkumi bahagian di bawah:







    • Penggunaan Penghad Kadar
    • Penggunaan TLS/SSL untuk Penghantaran Data
    • Keluaran Melarikan Diri

Cara Melaksanakan Pengesanan Manual Dengan Safeguards dalam Node.js

Pengesanan manual dilakukan dengan menyemak kod beberapa kali untuk mengenal pasti masalah yang berpotensi dalam kod Node.js. Masalah yang berpotensi diperoleh dengan mencari ralat sintaks, ralat logik, dan sebagainya. Penggunaan ' penyahpepijat ” dan “ bersepah ” juga boleh digunakan untuk mengenal pasti potensi ancaman atau ralat yang terdapat dalam program Node.js.



Terdapat pelbagai kaedah di mana kod itu boleh dilindungi daripada semua jenis benang yang berpotensi sambil meningkatkan jangka hayat kod anda. Kaedah ini disenaraikan di bawah:



Kaedah 1: Lindungi Program Node.js dengan Menggunakan Pengehad Kadar

Untuk menghalang aplikasi anda daripada serangan penafian perkhidmatan dan untuk meningkatkan prestasi aplikasi anda dengan menghalang terlalu banyak permintaan. Pelaksanaan praktikal ditunjukkan di bawah:





const express = memerlukan ( 'ekspres' ) ;
const rateLim = memerlukan ( 'had-kadar-ekspres' ) ;
const safeApp = ekspres ( ) ;

// Tentukan perisian tengah yang mengehadkan kadar
const limiting = rateLim ( {
windowCik: 60 * 1000 ,
maks: 100 , // Keperluan maksimum setiap min
mesej: 'Maaf! Had kadar melebihi' ,
} ) ;
// Gunakan perisian tengah yang mengehadkan kadar
safeApp.use ( mengehadkan ) ;
// Tentukan pengendali laluan dan tindak balas
safeApp.get ( '/' , ( permintaan, jawapan ) = > {
respons.hantar ( 'Hello Komuniti Linuxhint!' ) ;
} ) ;

// Memulakan pelayan Express
const localPort = process.env.PORT || 3000 ;
safeApp.dengar ( Pelabuhan tempatan, ( ) = > {
konsol.log ( ` Pelayan telah bermula pada nombor port: ${localPort}


Dalam kod di atas:

    • Pertama, import ' ekspres ” dan “ had-kadar-ekspres ” pakej ke dalam utama “ js ” fail. Mulakan ' ekspres() ' permohonan dan berikannya nama ' safeApp ”.
    • Seterusnya, tentukan perisian tengah yang mengehadkan kadar dengan menghantar nilai tersuai untuk “ windowsMs ',' maks ”, dan “ mesej ” hartanah dalam “ had-kadar-ekspres ” pakej.
    • Sekarang, gunakan pengehad kadar ini ke atas aplikasi ekspres dengan menggunakan “ gunakan() ” kaedah.
    • Kemudian, gunakan ' dapatkan() ” kaedah untuk menghantar mesej rawak sebagai permintaan melalui pelayan.
    • Akhir sekali, tetapkan nombor port menggunakan ' env.PORT ” dan buat apl ekspres mendengar nombor port yang ditentukan.

Kaedah 2: Lindungi Program Node.js dengan Menggunakan TLS/SSL untuk Penghantaran Data

TLS/SSL ialah lapisan soket selamat yang menyulitkan data yang dihantar antara pelayan dan sisi klien. Ini melindungi data sensitif seperti nombor kad kredit daripada dipintas oleh penyerang dan ia juga membantu anda memenuhi keperluan pematuhan:



const fs = memerlukan ( 'fs' ) ;
const express = memerlukan ( 'ekspres' ) ;
const httpsObj = memerlukan ( 'https' ) ;

const safeApp = ekspres ( ) ;
pilihan const = {
kunci: fs.readFileSync ( 'key.pem' ) ,
sijil: fs.readFileSync ( 'cert.pem' ) ,
} ;

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

safesafeApp.get ( '/' , ( permintaan, jawapan ) = > {
respons.hantar ( 'Hello Komuniti Linuxhint!' ) ;
} ) ;

settingServer.listen ( 8000 ) ;


Penerangan kod di atas:

    • Pada mulanya, import Node.js yang diperlukan “ fs ',' ekspres ”, dan “ https ” kebergantungan dalam projek anda dan mulakan aplikasi “express” dengan nama “ safeApp ”.
    • Sekarang, buat ' pilihan ' senaraikan dan hantar fail untuk kunci peribadi dan sijil ' kunci ” dan “ sijil ” hartanah. Fail boleh dibuat menggunakan ' openssl ” perintah dan fail ini membantu dalam menjamin sambungan.
    • Akhir sekali, buat pelayan dengan menggunakan ' createServer() ' kaedah dan lulus ' pilihan ” tatasusunan sebagai parameter pertama dan apl ekspres sebagai yang kedua.
    • Untuk menggunakan pengesahan TSL/SSL ke atas aplikasi, hantar atau terima permintaan menggunakan “ dapatkan() ” kaedah mengikut keperluan.

Kaedah 3: Lindungi Program Node.js dengan Menggunakan Output Escape

Untuk menghalang aplikasi Node.js anda daripada skrip merentas tapak “ XSS ” serangan, teknik yang paling biasa dan lebih popular ialah melarikan diri watak-watak istimewa daripada keluaran. Aksara khas ditukarkan ke dalam format HTML untuk mengelakkan serangan XSS dan penukaran dilakukan melalui “ melarikan diri-html ” objek pakej:

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

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


Penerangan kod di atas adalah seperti berikut:

    • Pertama, ' melarikan diri-html 'pakej diimport ke dalam utama' js ' fail dan objek atau contohnya disimpan dalam ' escObj ” pembolehubah.
    • Seterusnya, baris rawak kod yang mengandungi aksara khas disimpan dalam ' dummyStr ” pembolehubah.
    • Selepas itu, lulus ' dummyStr ' pembolehubah di dalam ' escObj ” kurungan untuk kod penukaran ke dalam format HTML tulen.
    • Hasilnya disimpan dalam pembolehubah ' counterStr ” yang kemudiannya dipaparkan pada konsol.

Output kod di atas menunjukkan bahawa aksara khas yang mengandungi rentetan yang disediakan kini ditukar kepada format pengekodan HTML:


Itu semua tentang melaksanakan pengesanan manual dengan perlindungan dalam Nodejs.

Kesimpulan

Untuk melakukan pengesanan manual, semak kod anda beberapa kali untuk sebarang jenis sintaks atau ralat logik dan lakukan berbilang ujian ke atas kod tersebut. Untuk melindungi program Node.js anda daripada semua jenis serangan siber atau untuk mengelakkan kebocoran data, gunakan ' Penghad Kadar ',' TLS/SSL untuk Penghantaran Data ”, dan “ Keluaran Melarikan Diri ” teknik. Panduan ini telah menggambarkan prosedur melaksanakan pengesanan manual dengan perlindungan dalam Node.js.