web安全防范之XSS漏洞攻击

原文出处:[url]http://netsecurity.51cto.com/art/201301/378948.htm[/url]
这篇博客也不错:[url]http://blog.csdn.net/ghsau/article/details/17027893[/url]

网站通常会遇到的攻击;攻击方法也很多;
原理:向网页内注入可执行代码,从而达到入侵目的。
危害:破坏页面结构,导致页面显示问题;
更严重的会盗取当前用户的cookie,导致你的账号被盗等;

function escape(html) {
var codeSpan = /(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm;
var codeBlock = /(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g;
var spans = [];
var blocks = [];
var text = String(html).replace(/\r\n/g, '\n')
.replace('/\r/g', '\n');
text = '\n\n' + text + '\n\n';
texttext = text.replace(codeSpan, function(code) {
spans.push(code);
return '`span`';
});
text += '~0';
return text.replace(codeBlock, function (code) {
blocks.push(code);
return '\n\tblock';
})
.replace(/&(?!\w+;)/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/"/g, '"')
.replace(/`span`/g, function() {
return spans.shift();
})
.replace(/\n\tblock/g, function() {
return blocks.shift();
})
.replace(/~0$/,'')
.replace(/^\n\n/, '')
.replace(/\n\n$/, '');
};


使用Apache的commons-lang.jar
StringEscapeUtils.escapeHtml(str);// 汉字会转换成对应的ASCII码,空格不转换
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值