跨域、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注入的。应该多注意使用绑定参数!

    


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM