【JavaSript】发现一个漏洞

经常会在前台做各种check,比如某域是否为空、不能为英数字、日期不能大于现在时间等等,只有所有check都通过了,才能提交表单。

比如这样

<script>

    $("#submitbtn").click(function(){

            //check

            ............

            document.forms[0].submit();

    });

</script>

<form>

    <input type="button" id="submitbtn" value="ok"/>

</form>

其实这样做很不靠谱。

如上代码,只要用chrome的开发工具,进入debug模式,然后在Watch Expressions里面直接输入

document.forms[0].submit();

就能绕过check,直接提交表单,这对于后台来说简直是一个灾难。

因此从安全的角度来说,所有check都得在后台做来得保险,前台check只能是降低数据提交次数的一种手段,而不是最终check。

你可能感兴趣的:(javasript)