防SQL注入

来源:互联网 发布:知乎 cqy是什么意思 编辑:程序博客网 时间:2024/05/16 01:59
    1.原理:
        如执行语句:
            

点击(此处)折叠或打开

  1. String sql = " select * from users where user_name = '" + name + " ' ;
           正常情况下是非常合理的。
            如:

点击(此处)折叠或打开

  1. select * from users where user_name = 'cdmaok'  ;

             但恶意注入:

点击(此处)折叠或打开

  1. select * from users where user_name= 'cdmaok' or '1' ='1' ;

             则可以获得全部资料。此处name = cdmaok or ' 1 ' = ' 1;

      2.    应对
            输入时可做过滤,用正则匹配过滤不合格数据,防范攻击。