Cara Melakukan Deteksi Manual dengan Safeguards di Node.js

Cara Melakukan Deteksi Manual Dengan Safeguards Di Node Js



Mendeteksi kerentanan, melindungi kode Anda dari semua jenis serangan cyber, dan mencegah kebocoran memori adalah tugas paling penting dari seorang programmer. Deteksi dan prediksi kerentanan Anda yang berada di dalam kode ini sangat sulit dan juga memakan waktu. Namun, ada beberapa pendekatan dimana deteksi manual beserta proses pengamanan aplikasi dapat dilakukan di Nodejs.

Artikel ini akan menjelaskan pendekatan untuk melakukan deteksi manual dengan perlindungan di Nodejs dengan membahas bagian di bawah ini:







    • Penggunaan Pembatas Nilai
    • Penggunaan TLS/SSL untuk Transmisi Data
    • Keluaran Pelarian

Cara Melakukan Deteksi Manual Dengan Safeguards di Node.js

Deteksi manual dilakukan dengan meninjau kode beberapa kali untuk mengidentifikasi potensi masalah pada kode Node.js. Potensi masalah diambil dengan mencari kesalahan sintaksis, kesalahan logika, dan sebagainya. Penggunaan “ debugger ' Dan ' linter ” juga dapat digunakan untuk mengidentifikasi potensi ancaman atau kesalahan yang ada di dalam program Node.js.



Ada berbagai metode yang dapat digunakan untuk melindungi kode dari segala jenis thread potensial sekaligus meningkatkan masa pakai kode Anda. Metode-metode ini tercantum di bawah ini:



Metode 1: Lindungi Program Node.js dengan Memanfaatkan Pembatas Kecepatan

Untuk mencegah aplikasi Anda dari serangan penolakan layanan dan untuk meningkatkan kinerja aplikasi Anda dengan mencegah terlalu banyak permintaan. Implementasi praktisnya ditunjukkan di bawah ini:





const express = memerlukan ( 'cepat' ) ;
const rateLim = membutuhkan ( 'batas tarif ekspres' ) ;
const safeApp = ekspres ( ) ;

// Tentukan middleware yang membatasi kecepatan
pembatas const = rateLim ( {
jendelaMs: 60 * 1000 ,
maks: 100 , // Persyaratan maks per menit
pesan: 'Maaf! Batas tarif terlampaui' ,
} ) ;
// Terapkan middleware yang membatasi kecepatan
safeApp.use ( membatasi ) ;
// Tentukan rute dan penangan respons
safeApp.dapatkan ( '/' , ( respon permintaan ) = > {
respon.kirim ( 'Halo Komunitas Linuxhint!' ) ;
} ) ;

// Menginisialisasi server Ekspres
const localPort = proses.env.PORT || 3000 ;
safeApp.dengarkan ( Pelabuhan lokal, ( ) = > {
konsol.log ( ` Server telah dimulai pada nomor port: ${pelabuhan lokal}


Dalam kode di atas:

    • Pertama, impor “ cepat ' Dan ' batas tarif ekspres ” paket ke dalam utama “ js ” mengajukan. Inisialisasi “ cepat() ” aplikasi dan beri nama “ aplikasi aman ”.
    • Selanjutnya, tentukan middleware yang membatasi kecepatan dengan meneruskan nilai khusus untuk “ jendelaMs ', ' maks ', Dan ' pesan ” properti di “ batas tarif ekspres ' kemasan.
    • Sekarang, terapkan pembatas tarif ini pada aplikasi ekspres dengan memanfaatkan tombol “ menggunakan() ' metode.
    • Kemudian, gunakan “ mendapatkan() ” metode untuk mengirim pesan acak sebagai permintaan melalui server.
    • Terakhir, atur nomor port menggunakan tombol “ env.PORT ” properti dan buat aplikasi ekspres mendengarkan nomor port yang ditentukan.

Metode 2: Lindungi Program Node.js dengan Memanfaatkan TLS/SSL untuk Transmisi Data

TLS/SSL adalah lapisan soket aman yang mengenkripsi data yang dikirimkan antara sisi server dan klien. Hal ini melindungi data sensitif seperti nomor kartu kredit agar tidak disadap oleh penyerang dan juga membantu Anda memenuhi persyaratan kepatuhan:



const fs = membutuhkan ( 'fs' ) ;
const express = memerlukan ( 'cepat' ) ;
const httpsObj = memerlukan ( 'https' ) ;

const safeApp = ekspres ( ) ;
pilihan konstan = {
kunci: fs.readFileSync ( 'kunci.pem' ) ,
sertifikat: fs.readFileSync ( 'sertifikat.pem' ) ,
} ;

const settingServer = httpsObj.createServer ( pilihan, aplikasi aman ) ;

safesafeApp.dapatkan ( '/' , ( respon permintaan ) = > {
respon.kirim ( 'Halo Komunitas Linuxhint!' ) ;
} ) ;

pengaturanServer.dengarkan ( 8000 ) ;


Deskripsi kode di atas:

    • Awalnya, impor Node.js yang diperlukan “ fs ', ' cepat ', Dan ' https ” dependensi dalam proyek Anda dan inisialisasi aplikasi “ekspres” dengan nama “ aplikasi aman ”.
    • Sekarang, buatlah “ pilihan ” daftar dan teruskan file untuk kunci pribadi dan sertifikat “ kunci ' Dan ' sertifikat ” properti. File dapat dibuat menggunakan “ opensl ” perintah dan file-file ini membantu mengamankan koneksi.
    • Terakhir, buat server dengan menjalankan “ buatServer() ” metode dan lewati “ pilihan ” array sebagai parameter pertama dan ekspresikan aplikasi sebagai parameter kedua.
    • Untuk menerapkan otentikasi TSL/SSL pada aplikasi, kirim atau terima permintaan menggunakan “ mendapatkan() ” metode sesuai kebutuhan.

Metode 3: Lindungi Program Node.js dengan Memanfaatkan Output Escape

Untuk mencegah aplikasi Node.js Anda membuat skrip lintas situs “ XSS ” serangan, teknik yang paling umum dan populer adalah keluarnya karakter khusus dari keluaran. Karakter khusus diubah ke dalam format HTML untuk mencegah serangan XSS dan konversi dilakukan melalui “ escape-html ” objek paket:

const escObj = memerlukan ( 'melarikan diri-html' ) ;
const dummyStr = '' ;

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


Penjelasan kode di atas adalah sebagai berikut:

    • Pertama, “ escape-html ”paket diimpor ke utama” js ” file dan objek atau instance-nya disimpan dalam “ escObj ' variabel.
    • Selanjutnya, baris kode acak yang berisi karakter khusus disimpan dalam “ bonekaStr ' variabel.
    • Setelah itu, lewati “ bonekaStr ” variabel di dalam “ escObj ” tanda kurung untuk konversi kode ke dalam format HTML murni.
    • Hasilnya disimpan dalam variabel “ counterStr ” yang kemudian ditampilkan di konsol.

Output dari kode di atas menunjukkan bahwa karakter khusus yang berisi string yang disediakan kini diubah menjadi format pengkodean HTML:


Itu semua tentang melakukan deteksi manual dengan perlindungan di Nodejs.

Kesimpulan

Untuk melakukan deteksi manual, tinjau kode Anda beberapa kali untuk mengetahui jenis kesalahan sintaksis atau logika apa pun dan lakukan beberapa pengujian terhadap kode tersebut. Untuk melindungi program Node.js Anda dari segala jenis serangan cyber atau untuk mencegah kebocoran data, gunakan “ Pembatas Nilai ', ' TLS/SSL untuk Transmisi Data ', Dan ' Keluaran Pelarian ” teknik. Panduan ini telah mengilustrasikan prosedur melakukan deteksi manual dengan perlindungan di Node.js.