XSS攻击解决方法

1)允许XSS 实在没办法了就用这个

Response.AddHeader("X-XSS-Protection", "0");

//不能用Response.Headers.Add("X-XSS-Protection", "0"); 提示非管线模式

2)页面的脚本做encode

3)queryString参数用js方法取值,下面代码中使用decodeURIComponent() 方法:

要求参数用utf-8编码,如果不是,就不能用了,前提是参数中有中文

 

function getParameter(){

var regex = /\?queryName=(.*)/; 如果仅有一个参数可以这么写,多个参数改下

  var m = regex.exec(window.location); if(m !=null){ alert("test=" + m[1]); }

}

function getParameter(queryName) {

 queryName = queryName.toLowerCase();

            var url = document.location.href;

            var g, StrBack = '';

            var urlArray = url.split("?");

            if (urlArray.length == 1)

                return null;

 

            var parameter = urlArray[1];

            var parameterArray = parameter.split("&");

            for (var i = 0; i < parameterArray.length; i++) {

                var array = parameterArray[i].split("=");

 

                if (array[0].toLowerCase() == queryName)

                    return decodeURIComponent(array[1]);

            }

            return null;

        }

 

 

你可能感兴趣的:(XSS攻击解决方法)