欢迎光临

木子屋

标题: 使用(function(){})()语句提高站点安全性

作者: dnawo

日期: 2009-06-18 00:47 AM

分类: 脚本语言

内容: 复制内容到剪贴板 程序代码<script type="text/javascript">
function Alert(msg)
{
alert(msg);
}
var m = "木子屋";
Alert(m);
</script>
先不考虑上边代码有无实际意义，假设上边代码存在于某个页上，构造适当的URL我们很容易就能修改m的值，例如：
复制内容到剪贴板 程序代码javascript:m="www.mzwu.com";Alert(m);void(0);
甚至是修改Alert函数内容：
复制内容到剪贴板 程序代码javascript:function Alert(msg){alert("hello,"+msg)};Alert(m);void(0);
这无疑会给站点带来一定的风险，下边我们使用(function(){})()语句对上面的代码稍加修改：
复制内容到剪贴板 程序代码<script type="text/javascript">
(function()
{
function Alert(msg){alert(msg);}
var m = "木子屋";
Alert(m);
})();
</script>
这样我们就无法构造URL来修改m的值了，此处的m相当于是C#类中的私有成员，我们无法访问到它，同样，我们也无法修改Alert函数的内容，除非重写(function(){})()语句，但这似乎没什么意义了。

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 6.680 ms

返回

标题: 使用(function(){})()语句提高站点安全性

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 6.680 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 6.789 ms

返回