易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript的 Cross Site 脚本注入风险

    今天有人来公司推销网站安全扫描软件,演示了对JS的跨域脚本注入风险的扫描,以前没意识到,今天有所了解。如果您的程序页面有以下情况,那么JS脚本注入的风险就很大:
1)页面打开时,URL 有某个参数,例如 XXPage.aspx?XXParam=XXValue
2)aspx页面里有如下代码:
<script>
    var p = "<%=Request["XXParam"];%>";
</script>
注入风险如下:
1)黑客假冒网站身份发送邮件给用户,用户打开网页链接,链接虽然是指向 XXPage.aspx,但 XXParam 却被做了改造,例如:XXParam 被设置为 "; document.location.href = 'http://www.xxx.com/XXFakePage.aspx';//"。注意,前面的双引号是用来屏蔽 var p = " 的,后面紧接着就是一个JS页面跳转语句;最后面的 //" 是用来屏蔽 JS 脚本中的后引号的。
你猜结果会怎么样?页面直接被跳转到 http://www.xxx.com/XXFakePage.aspx,如果这个页面是假冒页面,并且这个页面是嵌入在 Frameset 里的,那用户会在毫无觉察的情况下,把注入用户名、密码、银行卡账号密码提交到假冒页面上!!
对策:
方法一:不要用 <%=Request["XXParam"];%> 来解析参数值,而直接用 JS 脚本从URL获取参数值
方法二:把参数值先放在 HIDDEN 控件里,例如: <input type=hidden id=xxhid value="<%=Server.HtmlEncode(Request["XXParam"]);%>"> 里,然后在 JS 里改为 var p = document.all.xxhid.value;
应该还有其他方法,以上方法只是示意,没有去编译,仅供参考。


相关文档:

JavaScript内存泄漏

1、什么是闭包、以及闭包所涉及的作用域链这里就不说了。
2、JavaScript垃圾回收机制 
     JavaScript不需要手动地释放内存,它使用一种自动垃圾回收机制(garbage collection)。当一个对象无用的时候,即程序中无变量引用这个对象时,就会从内存中释放掉这个变量。
 
Code
 &nb ......

传智播客 2010 01 18 JavaScript基础加强

今天AJAX必须用JS,做前端必须用JS,由于课程紧,只安排了一天时间,只讲了Dom。 DOM 可在J2SEAPI搜Document,便可以查看方法 DOM树:节点(node)的层次。 节点分为三种类型: 节点(node):来源于网络理论,代表网络中的一个连接点。网络是由节点构成的集合 1.节点分为三种类型:
element node attribute node ......

Javascript 技巧集合(很好)

   
事件源对象
event.srcElement.tagName
event.srcElement.type
捕获释放
event.srcElement.setCapture(); 
event.srcElement.releaseCapture(); 
事件按键
event.keyCode
event.shiftKey
event.altKey
event.ctrlKey
事件返回值
event.returnValue
鼠标位置
eve ......

JavaScript 操作 select

一、新增一个option
var sel=document.getElementById("select的id");
var op=document.createElement("option");
op.value=值;
op.text=显示文本;
sel.add(op);
二、删除一个option
var sel=document.getElementById("typelist");
if(sel.selectedIndex==-1)
alert("请选 ......

JavaScript 添加删除 checkbox

<html>
<body>
<table width="200" border="1" id="tb">
<tr id="r1">
<td><input type="checkbox" name="ck" value="1"></td>
<td>abc</td>
</tr>
</table>
<p>
<input type="button" onClick="add();" value="add"/> ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号