• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • JavaScript的脆弱性

    發表于:2007-06-21來源:作者:點擊數: 標簽:
    Java Script的脆弱性 · Niking·遠望資訊 這雖然是一個很顯而易見的漏洞,只要有一點編程基礎的人都可以很容易的發現,用JavaScript做密碼欄,是很危險的事情。因為普通用戶很容易可以通過“查看源文件”來得到HTML的源文件,下面給出我以前“ 網絡安全 ”

       
      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("登陸成功 \n"+password2);

    location.href= g+u+e+s+p+f+g+t+q }

    else{

    alert("密碼錯誤\n" + password1 + "沒有注冊\n 再見!");

    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("登陸成功 \n"+password2); location.href= g+u+e+s+p+f+g+t+q },其實這句話才是真正重要的,因為它告訴了我們,當認證成功后,頁面將自動轉到holes.htm這個頁面中。這樣我們只要稍加分析,就可以不經認證就進入本來需要認證才能進入的頁面了。如果這個頁面包括了其他用戶的密碼的話,就會造成普通用戶密碼的泄露,那么使用JavaScirpt就顯得更加不安全了。甚至有些頁面連密碼對照表也沒有,直接把用戶名與密碼以明文的形式儲存(多可怕?。。?。

    解決方案

    使用CGI、ASP或者php3。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>