web应用安全问题的本质解读
我相信你听到的更多或更少的各种Web应用安全漏洞,如跨站脚本攻击(XSS),SQL注入,上传漏洞&hellip,&hellip,各种各样的事情。我不否认各种命名和分类方法,也不想评价命名的合理性。我想告诉您的是,所有的安全漏洞实际上只包含一些安全问题,我个人将Web应用程序安全的本质归因于以下三个部分:
1,输入输出验证(输入/输出验证)
2,角色验证或身份验证(角色验证)
3,所有权验证(所有权验证)
说到这一点,读者必须想知道这三类与各种安全有什么关系,让我逐一给你一个简短的回答。
输入输出验证
输入和输出在这里实际上是在用户界面上发生的(用户界面)这样的水平,你的注册信息提交一个网站,往往会得到很多提示:,非法用户名称;名称无法使用英语hellip;hellip;事实上,这是输入验证。输出是什么例如,你成功提交注册信息,系统会返回一个确认页(注册确认),经常在这个页面将显示所有信息或提交你的注册部分,其中一个例子所示,输出的信息是我说什么,做什么,输入验证吗
如果您正在提交,请输入地址栏:
脚本警报(iwebsecurity ); /脚本
当你到达注册确认页面时会发生什么如果确认页不做输出验证,它是一个Javascript提示框将出现确认页面达到。事实上,这是一个跨站点脚本攻击的一个小例子。当然,简单的输入/输出验证是可以写一本小书,并尝试解释一下你在下面的文章。
角色验证或身份验证
We take the CSDN for example, the user has these characters: it can be said to be tourists, visitors is not logged in the role; the second is free for registered users; perhaps in the future development of CSDN, the business has been updated, there will be registered user fees.The above is just a user role, and there will be administrator roles within the CSDN company, and possible administrators can also be divided into different roles based on the plate.Let's see, how many roles are you likely to have for the CSDN you visit every day下一个问题是权力问题。为什么会有一个角色它是用来控制权限的,每个角色都有自己的特定和公共权限。这些权限之间的逻辑关系相当复杂。如果一个Web应用程序没有对角色进行详细而合理的设计,它将给开发者带来无限的痛苦和麻烦,所以现在我要问几个问题:你能保证每个角色只能在其中扮演角色吗你怎么保证呢方法可靠吗没有漏洞吗hellip;hellip;这是角色验证或认证我想say.btw:为什么我说验证或认证所以你可以理解,这个角色分两个阶段,第一个进入阶段,比如你登录的时候,你输入一个特定的角色;另一个阶段是维护阶段,你怎样确保你登录到登录操作中始终保持身份前者可以说是:身份验证,后者是验证。
给予角色认证/验证虚拟案例,如在线电影服务提供商,会给你免费试用,如果这一审判可能会导致不当的角色验证,并提高用户权利成为合法的用户收费,这收费用户往往不收取您任何费用为他的。
所有权验证
这个问题的存在,也是基于角色的,但它所关心的是同级别的角色之间的权限,以CSDN为例。我是一个自由的用户和你。
现在的问题是:我能为你做这件事吗我能为你出版这篇文章吗我能修改你的个性吗如果没有,怎么CSDN成真虽然你和我都是普通用户,但你有你的隐私和我的隐私,如何确保严格的所有权验证尤为关键。这就是我所说的所有权。
我可以告诉你很多的信心,只要Web应用程序的安全问题,它不能逃避在这三个部分,您也可以不应用Web安全问题的三个部分的每一个色调对应和合理的解释,但只有几个简单的部分。