So beheben Sie den Checkmarx-Fehler „…nicht vertrauenswürdige Daten wurden direkt in die Ausgabe eingebettet…'
P粉330232096
P粉330232096 2024-02-21 12:24:04
0
1
298

In einer Front-End-Anwendung mit jQuery habe ich einen stark vereinfachten Code wie diesen (einschließlich Zeilennummern):

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

In Checkmarx erhalte ich diesen Fehler:

Die {method_name} der Anwendung verwendet $ in {file_name} Zeile 130, um nicht vertrauenswürdige Daten in die generierte Ausgabe einzubetten. Diese nicht vertrauenswürdigen Daten werden ohne ordnungsgemäße Bereinigung oder Verschlüsselung direkt in die Ausgabe eingebettet, sodass Angreifer bösartigen Code in die Ausgabe einschleusen können.

Also – was soll ich hier tun? ... da das ID-Attribut nur eine ID ist, wissen Sie ... also weiß ich nicht, welche Bereinigung oder Codierung daran durchgeführt werden soll.

P粉330232096
P粉330232096

Antworte allen(1)
P粉258083432

我刚刚遇到了类似的问题。

尝试替换:

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

与:

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

不知何故,对于这种情况,扫描仪不知道变量 $jQuery 变量相同。

尝试一下;o)

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!