Bagaimana untuk membetulkan ralat checkmarx "...data yang tidak dipercayai telah dibenamkan terus dalam output..."
P粉330232096
P粉330232096 2024-02-21 12:24:04
0
1
374

Dalam aplikasi bahagian hadapan menggunakan jQuery, saya mempunyai kod yang terlalu ringkas seperti ini (termasuk nombor baris):

...
129: var buttonId = $('some-element').closest('...').siblings('...').attr('id');
130: $('#' + buttonId).focus();
...

Dalam checkmarx saya mendapat ralat ini:

{method_name} aplikasi menggunakan $ pada {file_name} baris 130 untuk membenamkan data yang tidak dipercayai ke dalam output yang dijana. Data yang tidak dipercayai ini dibenamkan terus ke dalam output tanpa sanitasi atau pengekodan yang betul, membolehkan penyerang menyuntik kod hasad ke dalam output.

Jadi - apa yang perlu saya lakukan di sini? ...memandangkan atribut ID hanyalah ID, anda tahu...jadi saya tidak tahu apakah sanitasi atau pengekodan yang perlu dilakukan padanya.

P粉330232096
P粉330232096

membalas semua(1)
P粉258083432

Saya baru sahaja mengalami masalah yang sama.

Cuba ganti:

$('#' + buttonId).focus();

dengan:

jQuery('#' + buttonId).focus();

Entah bagaimana, untuk kes ini, pengimbas tidak tahu bahawa pembolehubah $jQuery adalah sama.

Cubalah ;o)

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan