Maison  >  Questions et réponses  >  le corps du texte

Comment corriger l'erreur checkmarx "... des données non fiables ont été intégrées directement dans la sortie..."

Dans une application frontale utilisant jQuery, j'ai un code trop simplifié comme celui-ci (y compris les numéros de ligne) :

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

Dans Checkmarx, j'obtiens cette erreur :

Le {method_name} de l'application utilise $ à la ligne 130 de {file_name} pour intégrer des données non fiables dans la sortie générée. Ces données non fiables sont intégrées directement dans la sortie sans nettoyage ni codage appropriés, permettant aux attaquants d'injecter du code malveillant dans la sortie.

Alors, que dois-je faire ici ? ... puisque l'attribut ID n'est qu'un identifiant, vous savez... donc je ne sais pas quelle désinfection ou quel encodage doit être effectué dessus.

P粉330232096P粉330232096241 Il y a quelques jours301

répondre à tous(1)je répondrai

  • P粉258083432

    P粉2580834322024-02-22 09:19:53

    Je viens de rencontrer un problème similaire.

    Essayez de remplacer :

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

    avec :

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

    D'une manière ou d'une autre, dans ce cas, le scanner ne sait pas que les variables $jQuery sont les mêmes.

    Essayez-le ;o)

    répondre
    0
  • Annulerrépondre