欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

html转译及防止js脚本注入攻击的方法介绍

程序员文章站 2022-03-04 12:21:57
html转译及防止js脚本注入攻击的方法 js脚本攻击 有的时候页面中会有一个输入框,用户输入内容后会显示在页面中,类似于网页聊天应用,留言板等。如果用户输入了一段js脚本,比例:,页面会弹出一个...

    html转译及防止js脚本注入攻击的方法

    js脚本攻击

    有的时候页面中会有一个输入框,用户输入内容后会显示在页面中,类似于网页聊天应用,留言板等。如果用户输入了一段js脚本,比例:,页面会弹出一个对话框,或者输入的脚本中有改变页面js变量的代码则会时程序异常或者达到跳过某种验证的目的。那如何防止这种恶意的js脚本攻击呢?

    1.在js中用使用正则表达式 过滤特殊字符,检测输入内容是否有特殊符号,例如:

    var regexp = [/^[^\~\`\!\@\#\$\%\^\&\*\(\)\-\_\+\=\{\}\[\]\|\\\;\:\'\"\,\.\<\>\/\]/;]
    

    2.判断是否为特殊字符,如果是特殊字符就不让输出

    function jubge(content){
    var reg = /[^&)($]/g
    if (!reg.test((content).val())) {
            e.preventdefault();
            alert("你输入有特殊字符!");
            return;
        }
    })
    

    3.使用html转译,使得用户输入的内容转化为字符串

     var p = document.createelement('p')                      
     var msg = '留言时间:'+content.time+'
    留言内容:'+content.message
     p.appendchild(document.createtextnode(msg))
     main.appendchild(p)
    

    内容有待补充,希望大家一起交流进步