jQuery версия 3.2.1
Я запустил свой HP fortify SCA и получил ошибку Межсайтовый скриптинг: DOM в моем файле html.
<table id="myTable">
<tr>
<td>Row1 cell1</td>
<td>Row1 cell2</td>
</tr>
</table>
<br>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
var row = $(document.getElementById("myTable").rows[0]);
}
</script>
Отчет показывает, что проблема в .rows[0]
и jQuery селекторе $()
$(document.getElementById("myTable").rows[0])
Погуглил, я обнаружил, что jQuery имел проблему с xss в старой версии.
Но я не уверен, есть ли в моем коде уязвимость или нет?
Если в нем есть уязвимость, как в этом случае произойдет xss?
Изменить: Согласно приведенному ниже комментарию, я отредактировал $(document.getElementById("myTable").rows[0])
на $($('#myTable')[0].rows[0]);
, но Fortify по-прежнему сообщает о той же проблеме.