WEB常见安全漏洞讲解.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WEB常见安全漏洞讲解

WEB常见安全漏洞讲解Ana资产资产应用程序安全风险攻击攻击攻击控制控制控制功能影响影响影响攻击者攻击向量安全漏洞安全控制技术影响业务影响攻击攻击功能资产影响影响攻击注入跨站脚本失效的身份认证和会话管理不安全的直接对象引用跨站请求伪造安全配置错误功能级访问控制缺失未验证的重定向和转发敏感信息泄露使用含有已知漏洞的组件OWASPTOP10漏OP-1注入原因:应用程序缺少对输入进行安全性设计。方式:攻击者将一些包含指令的数据发送给解释器,欺骗解释器执行计划外的命令。危害:读取或篡改数据库的信息,甚至能够获得服务器的包括管理员的权限。TOP-1注入什么是SQL注入?通过把SQL命令用户提交的数据中,代码原有SQL语句的语义,从而达到服务器恶意的SQL命令。插入改变控制执行可以插入SQL语句并执行TOP-1注入应用程序在下面存在漏洞的SQL语句的构造中使用不可信数据: Stringquery=SELECT*FROMaccountsWHEREcustID=+request.getParameter(id)+; 攻击者在浏览器中将“id”参数的值修改成10000’or’1’=’1。如:/app/accountView?id= 这样查询语句的意义就变成了从accounts表中返回所有的记录。SELECT*FROMaccountsWHEREcustID=10000;SELECT*FROMaccountsWHEREcustID=;‘‘‘‘漏洞案例10000’or’1’=’1TOP-1注入如何识别SQL注入 数字型单引号:/xx.asp?id=1’提示错误逻辑真假:/xx.asp?id=1and1=1返回正确/xx.asp?id=1and1=2返回错误加减符号:/xxx.asp?id=2-1返回与id=1相等字符型单引号:/xx.asp?name=xx’提示错误逻辑真假:/xx.asp?name=xx’and‘a’=‘a返回正确/xx.asp?name=xx’and‘a’=‘b返回错误加减符号:/xxx.asp?name=pet’+’ter返回与name=petter相同搜索型单引号:/xx.asp?keyword=1’提示错误逻辑真假:/xx.asp?keyword=1%’and‘%’=‘返回查询1的内容/xx.asp?keyword=1%’and‘%1’=‘无内容返回或不是1的内容TOP-1注入防范1 参数校验:  传递的参数做校验,如果不合法,直接拒绝请求。  1.1 如果是数字类型,判断是否为数字,如果不是,直接拒绝请求  1.2 如果有格式的类型(比如 日期,email,电话,身份证号码等等),判断是非符合格式,如果不符合格式,拒绝请求。  1.3 如果是字符串类型,没有特殊的格式,需要对字符串长度做校验,如果长度大于数据库该字段的定义长度,直接拒绝请求。     比如 姓名,数据库定义的事 varchar(12),如果输入超过12个字符,直接拒绝请求2使用 PrepareStatement。PrepareStament可以有效防御sql注入攻击。    PrepareStatement原理是:mysql执行树会根据预设的参数做转义,可以把注入的sql当作一个参数执行,而不会当作语句执行   php 应用, 可以使用PrepareStatement 替代  Statement写法。3数据库权限做限制3.1不能对业务账号开selectinformation_schema权限。因为一旦某个漏洞被成功注入,information_schema库暴露所有库,所有表,字段的定义。给sql注入者提供了便利,,,注入者不需要猜测表结构,就能轻松获取所有表的定义,进而轻松获取所有表的数据3.2各个业务账号只能访问自己业务的数据。这样即使某个漏洞被注入,也只是影响到该业务的数据,不会影响到其他业务的模块 TOP-2失效的身份认证和会话管理漏洞案例 案例#1:机票预订应用程序支持URL重写,把会话ID放在URL里: /sale/saleitems;?dest=Hawaii 该网站一个经过认证的用户希望让他朋友知道这个机票打折信息。他将上面链接通过邮件发给他朋友们,并不知道自己已经。当他的朋友们使用上面的链接时,他们将会使用他的会话和信用卡。案例#2:应用程序超时设置不当。用户使用公共计算机访问网站。离开时,该用户没有点击退出,而是直接关闭浏览器。攻击者在能使用相同浏览器通过身份认证。案例#3:内部或外部攻击者进入系统的密码数据库.存储在数据库中的用户密码,所有用户的密码都被攻击者获得。jsessionid=2P0OC2JDPXM0OQSNDLPSKHCJUN2JV泄漏了自己的会话ID一个小时后没有被加密TOP-2失效的身份认证和会

文档评论(0)

yy558933 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档