收藏 分销(赏)

系统安全培训-Web安全性说课讲解.ppt

上传人:人****来 文档编号:7819910 上传时间:2025-01-19 格式:PPT 页数:37 大小:924KB 下载积分:12 金币
下载 相关 举报
系统安全培训-Web安全性说课讲解.ppt_第1页
第1页 / 共37页
系统安全培训-Web安全性说课讲解.ppt_第2页
第2页 / 共37页


点击查看更多>>
资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,系统安全,Web,安全性,2010,年,9,月,2009,中国计算机网络安全应急年会资料,安全性问题之一,SQL,注入,什么是,SQL Injection:(SQL,注入,),就是攻击者把,SQL,命令插入到,Web,表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的,SQL,命令,。,简而言之,是在输入的数据字符串中夹带,SQL,指令,在设计不良的程序中忽略了检查,那么在这些夹带的指令就会被数据库服务器误认为是正常的,SQL,指令而运行,因此招致到破坏,安全性问题之一,SQL,注入,SQL Injection:(SQL,注入,),SQL,注入是最常见的攻击方式,它的主要原理是:攻击者通过改变,WEB,页的参数,直接将,SQL,片断提交到服务器,并在服务器端执行的过程。,安全性问题之一,SQL,注入,SQL,注入的原因,1,、在应用程序中使用字符串联结方式组合,SQL,指令,2,、在应用程序链接数据库时使用权限过大的帐号(例如使用,SA,),3,、在数据库中开放了不必要但权力过大的功能(如,在,SQLServer,中的的,xp_cmdshell,延伸预存程序或是,OLE Automation,预存程序等),4,、太过于信任用户所输入的数据,未限制输入的字符数,安全性问题之一,SQL,注入,SQL,注入的危害,修改数据库内容,删除其它表,窃取数据到本地,执行系统命令,进而修改或控制操作系统、破坏硬盘数据等,特点,攻击耗时少、危害大,安全性问题之一,SQL,注入,问题代码(,ASP+MS SQL Server,),if Request.QueryString(id)is NoThing then,id=1,else,id=Request.QueryString(id),end if,sql,=select title,content from news where id=&,id,set rs=Server.CreateObject(adodb.Recordset),rs.Open,sql,connection,1,1,安全性问题之一,SQL,注入,修改数据库内容,提交语句,localhost/news.asp?id=,1;update news set title=test where title=oldtitle,执行语句:,select title,content from news where id=,1;update news set title=test where title=oldtitle,安全性问题之一,SQL,注入,删除其它表,提交语句,localhost/news.asp?id=,1;drop table tablename,执行语句:,select title,content from news where id=,1;drop table tablename,服务器返回的错误信息,关键文件路径,服务器返回的错误信息,如何预防,SQL,注入,?,从应用程序的角度来讲,我们要做以下三项工作,:,1.,转义敏感字符,及字符串,(SQL,的敏感字符包括,:,“exec”,”xp_”,”sp_”,”declare”,”Union”,”cmd”,”+”,”/”,”.”,”;”,”,”-”,”%”,”0 x”,”=!-*/()|”,和”空格”,),。,2.,屏蔽出错信息,:阻止攻击者知道攻击的结果,3.,服务端正式处理之前对提交数据的,合法性进行检查,(,包括:数据类型,数据长度,敏感字符的校验,),。在确认客户端的输入合法之前,服务端拒绝进行关键性的处理操作。,如何预防,SQL,注入,?,从实际应用还需要注意:,1.,只要是提交的数据包含非法字符,或者要替换为安全字符,或者提交的数据要替换为默认值。,2.,含有非法字符串的数据提交不应该显示“您所提交的数据非法”等类似的提示。因为对于访问者而言,这是没有必要的。,3.,尽可能完善操作日志记录和错误日记记录。,安全性问题之二上传文件漏洞,伪造客户端,绕过,上传后缀名检查,可能导致上传木马,解决方法:使用白名单,后台检查,防止木马执行的方法,给各个不必要的目录,去掉“执行”权限,;,删除不需要的程序映射。,安全性问题之三,XSS,Cross-Site Scripting(XSS):(,跨站点脚本攻击,),XSS,是由于,Web,程序没有对用户提交的,HTML,内容进行适当的过滤,这样攻击者就可能在你的,Web,页中插入一些,HTML,语句,这些语句通过以,标签的形式出现。,攻击者通常使用跨站脚本攻击来窃取,COOKIES,和,SESSION,信息,或是欺骗用户将隐私信息暴露给错误对象,(,又称为钓鱼,),。,问题三,XSS,Results for,window.open(?,.document.cookie.),Attack Server,受害人服务器,受害人客户端,user gets bad link,user clicks on link,victim echoes user input,?,term=.,安全性问题之三,XSS,跨站脚本,XSS,利用示例,Cookie,、,Session,会话,Cookie,ASPSESSIONIDXXXXXXXX,、,JSESSIONID,、,PHPSESSID,安全性问题之三,XSS,在,html,编辑输入:,显示,cookie,安全性问题之四,SCRF,Cross-Site Request Forgery(SCRF):(,跨站点请求伪造,),SCRF,的特性就是利用网站对用户标识的信任,欺骗用户的浏览器发送,HTTP,请求给目标站点。,安全性问题之四,SCRF,浏览器和网站建立认证的会话,Web,浏览器跟可信的站点建立了一个经认证的会话之后,只要是通过该,Web,浏览器这个认证的会话所发送的请求,都被视为可信的动作。,安全性问题之四,SCRF,浏览器发送有效的请求,浏览器正在发送一个有效的请求,即,Web,浏览器企图执行一个可信的动作。可信的站点经确认发现,该,Web,浏览器已通过认证,所以该动作将被执行。,安全性问题之四,SCRF,恶意站点伪造的有效请求,图中,发生了一个,SCRF,攻击。发起攻击的站点致使浏览器向可信的站点发送一个请求。该可信的站点认为,来自该,Web,浏览器的请求都是经过认证的有效请求,所以执行这个“可信的动作”。,SCRF,攻击之所以会发生,其根本原因就是,Web,站点所验证的是,Web,浏览器而非用户本身。,安全性问题之四,SCRF,假如张三在浏览目标站点,A,,那么站点,A,便会给张三的浏览器一个,cookie,,用于存放一个伪随机数作为会话标识符,sid,,以跟踪她的会话。该站点会要求张三进行登录,当她输入有效的用户名和口令时,该站点会记录这样一个事实:张三已经登录到会话,sid,。当张三发送一个请求到站点,A,时,她的浏览器就会自动地发送包含,sid,的会话,cookie,。之后,站点,A,就会使用站点的会话记录来识别该会话是否来自张三。,安全性问题之四,SCRF,现在,我们假设张三访问了一个恶意站点,B,,该站点提供的内容中的,JavaScript,代码或者图像标签会导致张三的浏览器向站点,A,发送一个,HTTP,请求。由于该请求是发给站点,A,的,所以张三的浏览器自动地给该请求附上与站点,A,对应的该会话,cookie,的,sid,。站点,A,看到该请求时,它就能通过该,cookie,的推断出:该请求来自张三,所以站点,A,就会对张三的帐户执行所请求的操作。这样,,SCRF,攻击就能得逞了。,安全性问题之四,SCRF,客户端,(,认证,),服务器,Cookie:sid,第三方站点,客户端,(,恶意命令请求,),服务器,第三方站点内容:,指令:张三的账户,A,向账号,B,转账,交易金额,1000,安全性问题之四,SCRF,总之,只要身份认证是隐式进行的,就会存在,SCRF,攻击的危险,因为浏览器发出请求这一动作未必是受用户的指使。,原则上,这种威胁可以通过对每个发送至该站点的请求都要求用户进行显式的、不可欺骗的动作,(,比如重新输入用户名和口令,),来消除,但实际上这会导致严重的易用性问题。,大部分标准和广泛应用的认证机制都无法防止,CSRF,攻击。,安全性问题之四,SCRF,SCRF,成功发动攻击前提是,用户必须已经登录到目标站点,并且必须浏览了攻击者的站点或被攻击者部分控制的站点。,安全性问题之四,SCRF,SCRF,和,XSS,攻击的区别在于,,XSS,攻击需要,JavaScript,,而,CSRF,攻击不需要;,XSS,攻击要求站点接受恶意代码,而对于,SCRF,攻击来说,恶意代码位于第三方站点上。,防御,XSS,攻击的措施无法保护站点不受,SCRF,攻击的危害。如果站点具有,XSS,攻击漏洞,那么它也有,SCRF,攻击漏洞。但是,即使站点针对,XSS,攻击采取了全面保护,却仍然面临,SCRF,攻击的威胁。,安全性问题之五,XSIO,Cross Site Image Overlaying(XSIO):,跨站图像叠加,XSIO,是因为没有限制图片的,position,属性为,absolute,,导致可以控制一张图片出现在网页的任意位置。,那么我们就可以用这张图片去覆盖网页上的任意一个位置(,link,、,button,)。,这就可以导致页面破坏。而给图片设置一个链接后,很显然就可以起到一个钓鱼的作用。,由于对正常的,HTML,标签是没有做过滤的,所以我们可以用这些标签或,CSS,样式来实施,XSIO,攻击。,安全性问题之六,XSIO,Cross Site Image Overlaying(XSIO):,跨站图像叠加,测试方法,:,安全性问题之六,XSIO,XX.XXX.X.XXX/XX_bbs/websource/BBS/article_det.aspx?id=15&aid=2015,跨站图像叠加,安全性问题的根源,客户端数据的不可信任性。,Never under any circumstances trust data from the browser.,(从不要相信来自浏览器端的数据,因为你永远不可能知道在浏览器进行数据操作是你的用户还是正在寻找攻击漏洞的黑客),不信任客户端如何交换数据?,解决方法:安全性测试,安全性测试是一个很大的题目,首先取决于要达到怎样的安全程度。不要期望网站可以达到,100%,的安全。,解决方法:安全性测试,(1),如何进行,XSS,测试,?,首先,找到带有参数传递的,URL,如登录页面,搜索页面,提交评论,发表留言页面等等。,其次,在页面参数中输入如下语句,(,如,:Javascript,VB script,HTML,ActiveX,Flash),来进行测试:,alert(document.cookie),解决方法:安全性测试,(2),如何预防,XSS,漏洞,?,从应用程序的角度来讲,要进行以下几项预防,:,对,Javascript,VBscript,HTML,ActiveX,Flash,等语句或脚本进行,转义,。,在服务端正式处理之前对提交数据的,合法性进行检查,(,包括,:,数据类型,数据长度,敏感字符的校验,),等。,从测试人员的角度来讲,要从需求检查和执行测试过程两个阶段来完成,XSS,检查,:,在需求检查过程中对各输入项或输出项进行类型、长度以及取值范围进行验证,着重验证是否对,HTML,或脚本代码进行了转义。,执行测试过程中也应对上述项进行检查。,解决方法:安全性测试,一般实现业务的网站期望的安全指标:,1,、能够对密码试探工具进行防范;,2,、能够防范对,cookie,攻击等常用攻击手段;,3,、敏感数据保证不用明文传输;,4,、能防范通过文件名猜测和查看,HTML,文件内容获取重要信息;,5,、能保证在网站受到攻击后在给定时间内恢复。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服