zoukankan      html  css  js  c++  java
  • 跨域、sql注入、xss攻击

    这几天遇到这三个问题,现在简单的记录下来。

    1、跨域

        如我服务器的域名是www.test1.com,我在另一个服务器www.test2.com通过ajax访问www.test1.com的数据时,就引起跨域的问题,提示错误 No 'Access-Control-Allow-Origin' header is present on the...

        网上有很多文章,可以搜索下。http://blog.csdn.net/liruxing1715/article/details/18707605   http://twlidong.github.io/blog/2013/12/22/kua-yuan-zi-yuan-gong-xiang-cross-origin-resource-sharing-cors/

        jquery已经考虑到了这个问题,在ajax中封装了应对跨域的方法。参考上面黏出的第一个链接,我解决了问题。

    2、xxs攻击  xss表示Cross Site Scripting(跨站脚本攻击),通过插入恶意脚本,实现对用户游览器的控制

       假如用户提交的数据含有js代码,不做任何处理就保存到了数据库,读出来的时候这段js代码就变成了可执行的代码,将会产生意向不到的效果。一般用户提交的数据永远被认为是不安全的,在保存之前要做对应的处理。这次我就遇到了这个问题,

       我提交的内容<script>alert(1111)</script>,或者<a href="www.baidu.com">百度</a>,读出来的时候,将直接弹出1111,或者百度是有效的超链接,这个显然是不行的。

       提交的数据用下面的这个方法过滤一下,可以有效的防范xxs的攻击:

       

    /*
      过滤用户代码
     */
    function security($str){
    	$str = trim($str);  //清理空格
        $str = strip_tags($str);   //过滤html标签
        $str = htmlspecialchars($str);   //将字符内容转化为html实体
        $str = addslashes($str);
        return $str;
    }
    

      

    3、sql注入攻击    SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的

        我用的PDO连接,但是如果不用参数绑定的话,是依然可以sql注入的。应该多注意使用绑定参数!

        

  • 相关阅读:
    lucene教程【转】【补】
    线程本地变量ThreadLocal (耗时工具)【原】
    Exception异常转String【转】
    织梦DedeCms网站更换域名后文章图片路径批量修改
    织梦DedeCms去掉栏目页面包屑导航最后的分隔符“>”
    dedecms网站栏目增加缩略图的方法-测试通过
    织梦dedecms调用子栏目的方法
    织梦DedeCMS调用二级子栏目或者多级栏目解决方法
    dedecms首页调用栏目内容和单页内容的方法
    JS中的prototype
  • 原文地址:https://www.cnblogs.com/webclz/p/4159577.html
Copyright © 2011-2022 走看看