当前位置:首页 > 网络编程 > WEB编程 > 其它 > JavaScript的脆弱性

JavaScript的脆弱性

点击次数:20 次 发布日期:2008-11-26 19:44:09 作者:源代码网
源代码网推荐      Javascript的脆弱性
源代码网推荐  · Niking·远望资讯
源代码网推荐  
源代码网推荐  这虽然是一个很显而易见的漏洞,只要有一点编程基础的人都可以很容易的发现,用Javascript做密码栏,是很危险的事情。因为普通用户很容易可以通过“查看源文件”来得到HTML的源文件,下面给出我以前“网络安全”认证页面的代码:
源代码网推荐  <script>
源代码网推荐  
源代码网推荐  function passwd()
源代码网推荐  
源代码网推荐  {
源代码网推荐  
源代码网推荐  var password2 = document.form1.user_id.value;
源代码网推荐  
源代码网推荐  var password1=document.form1.pas-sword.value;
源代码网推荐  
源代码网推荐  var g="h";var u="o";var e="l";var s="e";var t="t";var d="x";var a="p";var b="i";var n="o";var z="t";f=".";q="m";var p="s";
源代码网推荐  
源代码网推荐  var back="index.html";
源代码网推荐  
源代码网推荐  if (password2 ==g+u+e+s+t);
源代码网推荐  
源代码网推荐  if (password1 ==s+d+a+e+n+b+z)
源代码网推荐  
源代码网推荐  {
源代码网推荐  
源代码网推荐  confirm("登陆成功 "+password2);
源代码网推荐  
源代码网推荐  location.href= g+u+e+s+p+f+g+t+q }
源代码网推荐  
源代码网推荐  else{
源代码网推荐  
源代码网推荐  alert("密码错误 " + password1 + "没有注册 再见!");
源代码网推荐  
源代码网推荐  location.href=back }
源代码网推荐  
源代码网推荐  }
源代码网推荐  
源代码网推荐  </script>
源代码网推荐  
源代码网推荐  只要稍加分析,不难看出:
源代码网推荐  
源代码网推荐  var g="h";var u="o";var e="l";var s="e";var t="t";var d="x";var a="p";var b="i";var n="o";var z="t";f=".";q="m";var p="s";
源代码网推荐  
源代码网推荐  是一个密码对照表,其中的g对应的真实字母为h,以次类推,再分析下去……
源代码网推荐  
源代码网推荐  if (password2 ==g+u+e+s+t);
源代码网推荐  
源代码网推荐  if (password1 ==s+d+a+e+n+b+z)
源代码网推荐  
源代码网推荐  这句话就是对用户名和密码的认证的语句了,通过密码对照表,我们可以知道当password2(即用户名)=holes,password1(即密码)=exploits的时候,就执行confirm("登陆成功 "+password2); location.href= g+u+e+s+p+f+g+t+q }, 其实这句话才是真正重要的,因为它告诉了我们,当认证成功后,页面将自动转到holes.htm这个页面中。这样我们只要稍加分析,就可以不经认证就进入本来需要认证才能进入的页面了。如果这个页面包括了其他用户的密码的话,就会造成普通用户密码的泄露,那么使用JavaScirpt就显得更加不安全了。甚至有些页面连密码对照表也没有,直接把用户名与密码以明文的形式储存(多可怕啊!)。
源代码网推荐  
源代码网推荐  解决方案:
源代码网推荐  
源代码网推荐  使用CGI、ASP或者php3。
源代码网推荐  
源代码网推荐  


源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华