zoukankan      html  css  js  c++  java
  • WEB安全隐患

    org.apache.commons.lang.StringEscapeUtils 进行输入框内容处理 [StringEscapeUtils.escapeSql(str);StringEscapeUtils.escapeHtml(str)]
     
    1、跨站脚本攻击(Cross Site Scripting)
    -解决方案-
    xss之所以会发生,是因为用户输入的数据变成了代码,因此需要对用户输入的数据进行html转义处理,将其中的“尖括号”,“单引号”,“双引号”之类的特殊字符进行转义编码。
     
    2、SQL注入
    报错时,尽量使用错误页面覆盖堆栈信息
    1 <error-page>
    2     <error-code>400</error-code>
    3     <location>/error400.jsp</location>
    4 </error-page>
     
    3、跨站请求伪造(Cross-Site Request Forgery)
    -解决方案-
    1、将cookie设置为HttpOnly
    server.xml如下配置
    1 <Context docBase="项目" path="/netcredit" reloadable="false" useHttpOnly="true"/>
    web.xml如下配置
    1 <session-config>
    2     <cookie-config> 
    3         <http-only>true</http-only> 
    4     </cookie-config>
    5     <session-timeout>30</session-timeout>
    6 </session-config>
    2、增加token
    表单中增加一个隐藏域,提交时将隐藏域提交,服务端验证token。
    3、通过referer识别
    根据Http协议,在HTTP头中有一个字段交Referer,它记录了HTTP请求的来源地址。如果攻击者要实施csrf攻击时,必须从其他站点伪造请求,当用户通过其他网站发送请求时,请求的Referer的值是其他网站的网址。因此可以对每个请求验证其Referer值即可。
    4、文件上传漏洞
      在网上经常会操作,上传图片、文件到服务端保存,这时候,如果没有对图片文件做正确的校验,会导致一些恶意攻击者上传病毒,木马,外挂等等到服务器,窃取服务器信息,甚至导致服务器瘫痪。
    因此需要对上传的文件进行校验,很多文件起始的几个字节是固定的,因此,根据这几个字节的内容,就可以判断文件的类型,这几个字节也被称作魔数。
     
    设置类型白名单
    学习无止尽,代码我疯狂
  • 相关阅读:
    POJ-2478 Farey Sequence(欧拉函数)
    BZOJ-1103: [POI2007]大都市meg(树状数组)
    NOIP2016模拟 星际争霸(二分)
    HDU-1222 Wolf and Rabbit (欧几里得定理)
    POJ-2689 Prime Distance(线性筛法)
    FZU-2134 上车(树状数组)
    FZU-2236 第十四个目标(树状数组)
    2016年11月12日00:14:27
    FZU-1921 栀子花开(线段树)
    BZOJ3132 上帝造题的七分钟
  • 原文地址:https://www.cnblogs.com/kangxu/p/6185558.html
Copyright © 2011-2022 走看看