javascript - 我的 JavaScript 安全性如何?它被利用的容易程度如何?

标签 javascript security

我正在努力使这段代码尽可能安全,是否有任何直接的缺陷会跳出来?我认为我已将其锁定得非常紧密,您还有其他要实现的吗?

  function CheckPin(){

    var str="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

    var strId= document.form1.tbPin.value;

    var lenId=strId.length;

    var check=true;



    //if (lenId != 20)

    if (!(lenId ==20 || lenId == 10))

    {

        alert("You must enter a 20 or 10 digit pin number.");

        document.form1.tbPin.focus();

        return false;

    }

    else

    {

        //for(var i=0;i<20;i++)

        for(var i=0;i<lenId;i++)

         { 

            check=str.indexOf(strId.charAt(i));



            if(check == -1) 

            {

                alert("Do not use special characters.(e.g. @,#,&) ");

                document.form1.tbPin.focus();

                return false;

                break;

            }

            else 

            {

                 if (i ==19)

                 {

                    break;

                 }

            }

         }

    }



    if (document.form1.btnChecker.value == 1)

    {

     alert("The processing is in progress.");

     return false;

    }



    document.form1.btnChecker.value = 1;

    }

    </script>

    <script src="../JS/Tags.js" type="text/javascript"></script>

    <script src="../JS/Tags2.js" type="text/javascript"></script>

标签.js:

var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Tags2.js:

var pageTracker = _gat._getTracker("UA-1376772-6"); pageTracker._initData(); pageTracker._trackPageview();

最佳答案

关键计算不得在浏览器中完成。您在浏览器中运行的任何内容纯粹是为了方便用户。话虽如此,您在浏览器中通过 JavaScript 进行的验证应该产生与您必须在服务器上执行的验证相同的结果。

关于javascript - 我的 JavaScript 安全性如何?它被利用的容易程度如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4709173/

相关文章:

javascript - 监听 DOM 初始加载后渲染的元素

javascript - 使 sap.m.CustomTile 可根据分辨率调整大小,例如从 500px 到 320px

javascript - 使用解析 Facebook 登录 api,导致当前用户为 null

javascript - 编译 Typescript 而不丢失 node_modules 路径?

c# - 将敏感数据从我的网站发送到我的 C# 应用程序

javascript - 单击外部链接时的标记位置

java - 如何修复struts漏洞

c++ - Qt:让程序在执行时询问用户提升(windows)

ASP.NET MVC Forms 身份验证 - 它如何工作并保持身份验证?

JNLP 中的 java.security.properties