在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/網(wǎng)絡(luò)安全  HTML/ 當(dāng)資料里含有JavaScript,在向頁面輸出時如何禁止其執(zhí)行

當(dāng)資料里含有JavaScript,在向頁面輸出時如何禁止其執(zhí)行

我們用jquery-datatable渲染一張table,拿到的資料,其中有一列的內(nèi)容會碰到類似:

8080::HTTP/1.1 200 OK | <script>window.location.href = "http://example:8080/a.asp";</script>

在渲染的時候瀏覽器就會執(zhí)行腳本,頁面發(fā)生跳轉(zhuǎn)。
要如何做可以防止運行JavaScript,解決安全隱含?

回答
編輯回答
淚染裳
在向頁面輸出時如何禁止其執(zhí)行

盡量在輸入的時候做字符串轉(zhuǎn)義或者直接驗證不通過,一份資料添加只有一次,而訪問就不知道多少次了。

2018年5月20日 05:06
編輯回答
款爺

常見的安全問題,專業(yè)術(shù)語XSS,可以搜一下相關(guān)文章。

這里簡單解決就是做html轉(zhuǎn)義,把&<>等特殊字符轉(zhuǎn)掉。

& -> &amp;
< -> &lt;
> -> &gt;
2017年12月2日 22:48
編輯回答
孤影
function xssText(str) {
    var s = "";
    if (str.length == 0) return "";
    s = str.replace(/&/g, "&amp;");
    s = s.replace(/</g, "&lt;");
    s = s.replace(/>/g, "&gt;");
    s = s.replace(/ /g, "&nbsp;");
    s = s.replace(/\'/g, "&#39;");
    s = s.replace(/\"/g, "&quot;");
    s = s.replace(/\n/g, "<br>");
    return s;
}
xssText('<script>window.location.href = "http://example:8080/a.asp";</script>')
2017年9月21日 17:48