当前位置: 首页 > news >正文

网站二级目录做优化商业计划书ppt免费模板下载

网站二级目录做优化,商业计划书ppt免费模板下载,网站都必须要备案吗,闵行专业做网站在 View 层#xff0c;可以解决 XSS 问题。在本书的“跨站脚本攻击”一章中#xff0c;阐述了“输入检查” 与“输出编码”这两种方法在 XSS 防御效果上的差异。XSS 攻击是在用户的浏览器上执行的#xff0c; 其形成过程则是在服务器端页面渲染时#xff0c;注入了恶意的 H…在 View 层可以解决 XSS 问题。在本书的“跨站脚本攻击”一章中阐述了“输入检查” 与“输出编码”这两种方法在 XSS 防御效果上的差异。XSS 攻击是在用户的浏览器上执行的 其形成过程则是在服务器端页面渲染时注入了恶意的 HTML 代码导致的。从 MVC 架构来说 是发生在 View 层因此使用“输出编码”的防御方法更加合理这意味着需要针对不同上下 文的 XSS 攻击场景使用不同的编码方式。 在“跨站脚本攻击”一章中我们将“输出编码”的防御方法总结为以下几种  在 HTML 标签中输出变量  在 HTML 属性中输出变量  在 script 标签中输出变量  在事件中输出变量  在 CSS 中输出变量  在 URL 中输出变量。 针对不同的情况使用不同的编码函数。那么现在流行的 MVC 框架是否符合这样的设计 呢答案是否定的。 在当前流行的 MVC 框架中View 层常用的技术是使用模板引擎对页面进行渲染比如在“跨站脚本攻击”一章中所提到的 Django就使用了 Django Templates 作为模板引擎。模板引 擎本身可能会提供一些编码方法比如在 Django Templates 中使用 filters 中的 escape 作 为 HtmlEncode 的方法 Hello, {{ name|escape }}! Django Templates 同时支持 auto-escape这符合 Secure by Default 原则。现在的 Django Templates默认是将 auto-escape 开启的所有的变量都会经过 HtmlEncode 后输出。默认是编 码了 5 个字符 is converted to lt; is converted to gt; (single quote) is converted to #39; (double quote) is converted to quot; is converted to amp; 如果要关闭 auto-escape则需要使用以下方法 {{ data|safe }} {% autoescape off %} Hello {{ name }} {% endautoescape %} 为了方便很多程序员可能会选择关闭 auto-escape。要检查 auto-escape 是否被关闭也很简 单搜索代码里是否出现上面两种情况即可。 但是正如前文所述最好的 XSS 防御方案在不同的场景需要使用不同的编码函数如 果统一使用这 5 个字符的 HtmlEncode则很可能会被攻击者绕过。由此看来这种 auto-escape 的方案看起来也变得不那么美好了。 再看看非常流行的模板引擎 Velocity它也提供了类似的机制但是有所不同的是Velocity 默认是没有开启 HtmlEncode 的。 在 Velocity 中可以通过 Event Handler 来进行 HtmlEncode。 eventhandler.referenceinsertion.class org.apache.velocity.app.event.implement. EscapeHtmlReference eventhandler.escape.html.match /msg.*/ 使用方法如下例这里同时还加入了一个转义 SQL 语句的 Event Handler。 import org.apache.velocity.app.event.EventCartridge; import org.apache.velocity.app.event.ReferenceInsertionEventHandler; import org.apache.velocity.app.event.implement.EscapeHtmlReference; import org.apache.velocity.app.event.implement.EscapeSqlReference; public class Test { public void myTest() { .... /** * Make a cartridge to hold the event handlers */ EventCartridge ec new EventCartridge(); /* * then register and chain two escape-related handlers */ ec.addEventHandler(new EscapeHtmlReference()); ec.addEventHandler(new EscapeSqlReference()); /* * and then finally let it attach itself to the context */ ec.attachToContext( context ); /* * now merge your template with the context as you normally * do */ .... } } 但 Velocity 提供的处理机制与 Django 的 auto-escape 所提供的机制是类似的都只进行 了 HtmlEncode而未细分编码使用的具体场景。不过幸运的是在模板引擎中可以实现自定 义的编码函数应用于不同场景。在 Django 中是使用自定义 filters在 Velocity 中则可以使用 “宏”(velocimacro)比如 通过自定义的方法使得 XSS 防御的功能得到完善同时在模板系统中搜索不安全的 变量也有了依据甚至在代码检测工具中可以自动判断出需要使用哪一种安全的编码方法 这在安全开发流程中是非常重要的。 在其他的模板引擎中也可以依据“是否有细分场景使用不同的编码方式”来判断 XSS 的安全方案是否完整。在很多 Web 框架官方文档中推荐的用法就是存在缺陷的。Web 框架 的开发者在设计安全方案时有时会缺乏来自安全专家的建议。所以开发者在使用框架时应 该慎重对待安全问题不可盲从官方指导文档。
http://www.hkea.cn/news/14270438/

相关文章:

  • 蓝色清爽网站wordpress企业站主题下载
  • 怎么做网站啊网站网页能自己做吗
  • 做明星同款的网站上海公共招聘网官网下载
  • 淘宝api接口实现wordpress湖北seo优化诊断
  • 建旅游网站的意义广州建站网站
  • 湖南建立网站营销设计商务网站建设公司排名
  • 长春商城网站开发wordpress 数据库搜索
  • 如何建设阿里巴巴网站wordpress4.7中文主题
  • 功能型类的网站人和做网站
  • 建设银行 上海科技中心网站制作网页需要什么专业
  • 海曙网站建设哪家好网站开发 加密保护
  • 网站建设要些什么天津网站建设价位
  • 做网站用啥软件爱山东app二维码
  • 网站第三方微信登陆怎么做的ps修图软件
  • 宁波 商城网站建设做网站维护的是什么人
  • 网站建设如何控标金华网站建设行业
  • 网页设计与制作课程教学中经常遇到的问题莱芜网站优化费用
  • 乡村建设规划网站wordpress-5.2.zip
  • 湖州外贸网站建设学院网站建设管理
  • 网站建设逻辑组织的几种模型官网设计效果图
  • 杭州网站开发培训化妆品网站建设方案的预算
  • 厦门网站制作推广网站的营销功能
  • wordpress建站事例重庆网站服务器
  • 国家城乡建设部网站首页方庄网站建设公司
  • Python视频直播网站开发网站建设用net后缀如何
  • 二手书网站开发公众号制作平台
  • 北京市建设工程信息网交易网站个人导航网站如何赚钱
  • 中建一局华江建设有限公司网站汕头市网站建设分站公司
  • 阿里云域名注册万网seo网络推广哪家专业
  • .net网站费用品牌战略管理