Mysql、XSS 防御

安装服务过程出现的安全问题
***************************************************

安装 PHP+Apache+Mysql 完整过程 包括一些安全修改项
http://wenku.baidu.com/link?url=3cB0Xms3BK1vX_9RQ3EWDgAttt7Ldw4_0nsPfAQIa0RcfKAwtiyLf90SBuZJXlYztTmYAiqyooAqw8uTlAI6QVA8CZ1He924PbUNd41B2Xe
***************************************************
        http://www.jb51.net/article/47727.htm  :::  mysql_secure_installation 运行过程 ...
安装完mysql-server 会提示可以运行mysql_secure_installation。运行mysql_secure_installation会执行几个设置:
  a)为root用户设置密码
  b)删除匿名账号
  c)取消root用户远程登录
  d)删除test库和对test库的访问权限(为什么删除test数据库? ->http://www.cnblogs.com/AloneSword/archive/2013/12/04/3457243.html)
  e)刷新授权表使修改生效

***************************************************
保障MySQL数据库安全的14个最佳方法
http://tech.it168.com/a2013/1227/1579/000001579659_1.shtml

原则1:不要在页面中插入任何不可信数据,除非这些数已经据根据下面几个原则进行了编码
    <script>…不要在这里直接插入不可信数据…</script>直接插入到SCRIPT标签里
    <!– …不要在这里直接插入不可信数据… –>
    插入到HTML注释里
 
    <div 不要在这里直接插入不可信数据=”…”></div>
    插入到HTML标签的属性名里
 
    <div name=”…不要在这里直接插入不可信数据…”></div>
    插入到HTML标签的属性值里
 
    <不要在这里直接插入不可信数据 href=”…”></a>
    作为HTML标签的名字
 
    <style>…不要在这里直接插入不可信数据…</style>
    直接插入到CSS里

原则2:在将不可信数据插入到HTML标签之间时,对这些数据进行HTML Entity编码
    &     –>     &amp;
    <     –>     &lt;
    >     –>     &gt;
    ”     –>     &quot;
    ‘     –>     '
    /     –>     /


原则3:在将不可信数据插入到HTML属性里时,对这些数据进行HTML属性编码
    HTML属性编码   &#xHH; (以&#x开头,HH则是指该字符对应的十六进制数字,分号作为结束符)
testcode    <div width=$INPUT> …content… </div>
inputcode    x οnmοuseοver=”javascript:alert(/xss/)”
aftercode    &lt;div width=x οnmοuseοver=”javascript:alert(/xss/)”&gt; …content… &lt;/div&gt;


原则4:在将不可信数据插入到SCRIPT里时,对这些数据进行SCRIPT编码
    
    在对不可信数据做编码的时候,千万不能图方便使用反斜杠( \ )对特殊字符进行简单转义,比如将双引号 ” 转义成 \”

    ,这样做是不可靠的,因为浏览器在对页面做解析的时候,会先进行HTML解析,然后才是JavaScript解析,所以双引号很可    

能会被当做HTML字符进行HTML解析,这时双引号就可以突破代码的值部分,使得攻击者可以继续进行XSS攻击
testcode    <script>
        var message = ” $VAR “;
        </script>

inputcode    \”; alert(‘xss’);//

aftercode    <script>
        var message = ” \\”; alert(‘xss’);// “;
        </script>

原则5:在将不可信数据插入到Style属性里时,对这些数据进行CSS编码
    <style>selector { property : …插入不可信数据前,进行CSS编码…} </style><style>selector { property : ” …插    

入不可信数据前,进行CSS编码… “} </style>
    <span style=” property : …插入不可信数据前,进行CSS编码… ”> … </span>

    格式为 \HH

原则6:在将不可信数据插入到HTML URL里时,对这些数据进行URL编码

原则7:使用富文本时,使用XSS规则引擎进行编码过滤
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值