脚本被屏蔽

 

最近几天,社区这里我被搞死了。短消息阅读后无法标志已阅读。帖子无法揭帖,无法删除帖子...........
那里的代码几年没动过了,查看代码,就是一些脚本、Html代码没有被加载,被屏蔽了。


为了这一系列的问题,整天被人骂。临时解决方法就是把代码换个位置就好了。

昨天再细看代码的时候,才找到愿因。
一个被包含的很深的js文件中。有个家伙写了一个很低级的JavaScript 代码。
下面是错误的伪代码:

1、document.write("<script src=/"......./"></script>");
2、document.write("<iframe width=0 height=0 border=0 src=/"......./">");

第一行的错误是:
浏览器看到 </script> 就认为这些脚本已经结束了,后面的不是脚本了。后面的脚本不会以脚本方式执行,而是以Html方式展示。
而不论这个</script>是否是在一个字符串中。
正确的写法应该是
document.write("<script src=/"......./"></sc"+"ript>");
在</script>中随便找一个位置截断,变成两个字符串的相加。


第二行的错误是:
没有 </iframe> 这样的结束符,后面的任何代码,不论是Js,还是Html,都不会被浏览器加载。

这里包含很深指:
一个 js 文件中 有
document.write("<script src=/"aaa.js/"></scr"+"ipt>");
这样的代码,然后这个 aaa.js 文件中,又包含一个 bbb.js 文件,依次类推,好几层。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值