自营网站业务逻辑漏洞的检测与防范.docx
《自营网站业务逻辑漏洞的检测与防范.docx》由会员分享,可在线阅读,更多相关《自营网站业务逻辑漏洞的检测与防范.docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘 要本文主要介绍了对自营网站进行的检测技术,从当下常见的web安全漏洞开始讲述,直到本文主题漏洞,同时分析了国内外web环境的安全性,阐明了对于web安全漏洞的防范意义以及一些基本的防范技术。叙述完web漏洞大家族后,单独对业务逻辑漏洞进行了介绍。从介绍业务逻辑漏洞开始到业务逻辑漏洞的特点,再到说明数据篡改型、暴力破解型、越权型业务逻辑漏洞所产生的原理,最后叙述了业务逻辑漏洞可能带来的危害。在阐明危害之后,介绍了对业务逻辑漏洞检测的常用方法及技术,而后介绍了本文所使用的检测方法的思路及相关技术,最后对各种类型的业务逻辑漏洞的防范方法进行阐述。文章末尾对本次研究做了总结和展望。关键词:web安
2、全漏洞;漏洞危害;业务逻辑漏洞AbstractThis paper introduces the detection technology of self-operated websites, from the current common web security vulnerabilities to the theme of this article. At the same time,the website security environment home and abroad is analysed, and the significance of preventing web se
3、curity vulnerabilities and some basic prevention technologies are discussed. After describing the web vulnerability family, the business logic vulnerabilities are introduced separately. From the introduction of business logic vulnerability concept to the characteristics of business logic vulnerabili
4、ty and then to explain the principles of data tampering, password violence and overweightbusiness logic vulnerability, and then, the paper describes the possible harm of business logic vulnerability and introduces the general methods and technologies for detecting the vulnerabilities, then introduce
5、s the ideas and related technologies used in this paper, and finally the prevention methods for various types of business logic vulnerabilities are introduced. In the end, the research of the project and its further development are summaried.Key words: Web security vulnerability;Vulnerability hazard
6、;business logic vulnerability目 录第一章 绪论11.1 课题背景和意义11.2 web安全漏洞11.2.1 web安全漏洞的定义11.2.2基本的web安全漏洞11.2.3 web漏洞的危害31.3 web安全现状与防范41.3.1 国内外现状41.3.2 防范的意义41.3.3 防范的技术41.4 章节安排5第二章 认识业务逻辑漏洞62.1 业务逻辑漏洞的定义62.2 业务逻辑漏洞的特点62.3 产生业务逻辑漏洞的原理62.4 业务逻辑漏洞的危害72.5 本章小结7第三章 检测业务逻辑漏洞83.1 检测流程83.1.1 一般的渗透测试流程83.1.2 业务逻辑测
7、试流程93.2 检测方法与例子93.2.1 检测方法93.2.2 检测例子113.3 检测技术研究143.3.1 socket代理获取request请求143.3.2 模拟请求重发request请求153.4 本章小结15第四章 防范业务逻辑漏洞174.1 数据篡改型业务逻辑漏洞防范174.2 越权型业务逻辑漏洞防范174.3 暴力破解型业务逻辑漏洞防范184.4 本章小结18第五章 总结与展望195.1 工作总结195.2 展望19参 考 文 献21致 谢22附 录23广东东软学院本科生毕业设计(论文)第一章 绪论1.1 课题背景和意义 作为二十一世纪人类最重要的产物互联网。互联网在人们各种
8、技术的诞生下正日复一日地变得复杂起来,但任何事都离不开安全俩字,所以网络安全问题也愈发明显,渐渐地根据各种类型的安全问题出现了多种多样的检测手段以及防御方法,但就目前而言针对业务逻辑漏洞的问题,主要依赖人工检测,所以开发出能实现简易对自营网站的业务逻辑漏洞检测是具有重要意义的。如今的社会正越来越数字化,而个人信息变成了可以谋利的资源,然而用户的个人隐私与信息泄露连年加剧甚至已变成一种常态,久而久之不从事网络安全事业的人们就会产生无可奈何、任其发展的错误态度和思想,但保护好个人隐私,事关我们每个人。目前,网络攻击无处不在。2019年1月,拼多多优惠券活动被黑灰产团队利用;原年2月抖音App上千万
9、账户遭受库攻击,其中上百万账户密码被泄露;6月,美国佛罗里达州莱克城,由于勒索病毒攻击导致各项市政工作停摆两周时间等等。可见网络安全是一个我们无法回避的问题,虽然我们无法实现零危害,但我们还是要尽可能避免发生安全问题1。所以对自营网站的检测是十分有必要的。1.2 Web安全漏洞1.2.1 web安全漏洞的定义Web安全漏洞一般是指在网站程序上所出现的漏洞,该漏洞出现的原因是程序员在开发时考虑不周等因素所造成的。如果一个站点存在Web漏洞同时又被不法网络攻击者利用,攻击者可能会轻易地控制整个网站,并有可能深入一步获得网站服务器的shell,进而掌控整个服务器。有时候一些不起眼的漏洞却能在别的方面
10、对你造成危害。1.2.2 基本的web安全漏洞首先介绍的是注入漏洞,注入漏洞也是网络安全新手入门必学的安全知识,而注入漏洞又分为SQL注入、Xpath注入、SQL盲注。SQL注入是程序员在开发阶段,没有对有SQL查询语句的地方做严格的过滤,导致不法分子使用特殊构造的SQL语句插入到用户提交的数据中,以这样的方式欺骗服务器,从而令服务器执行恶意的SQL命令,进而获取到敏感信息。而SQL注入分为数据数字型和字符型,而注入方式一般为GET或POST注入、伪静态注入以及Cookie注入。SQL注入还有一种特殊的方式,那就是SQL盲注。而盲注分为两种方式,第一种基于时间的盲注,在这种情况下,注入的SQL
11、语句会对后台的数据库功能造成影响,可Web前端的显示一直为True,但返回的响应存在差别,从而可以通过这个时间的差异来判断真假,进而获得相关的信息。而第二种是基于布尔值的盲注,在基于布尔值的盲注下,应用程序只是返回True或者False页面,导致无法根据所返回的内容得到有用的信息,但可以通过发送构造比较大小、等于或否等逻辑条件给服务端,然后通过返回的信息来判断是否所需信息。还有一种注入是Xpath注入,它是利用了解析器过于宽松的输入和它本身就具有容错性,导致不法分子利用在表单、URL或者其它的信息上携带不法分子精心编写的具有恶意的代码,进而获取到一些敏感的信息内容,更甚者可能会获得管理权限进而
12、控制服务器。弱口令漏洞虽然少见,但它确实是不可忽视的漏洞,对于该漏洞没有非常准确的定义,在通常情况下指的是容易被别人根据你的基本信息猜出来或者容易被破解工具攻破的口令。在平常,个人的名字拼音字母、个人生日或者是有顺序并只是简单排列的数字和字母,都是弱口令。跨站脚本漏洞,是开发人员在编写代码阶段没有对用户所输入的内容做严格的过滤、转换,从而导致被不法分子在输入框中输入精心构造的JS或者HTML代码,并成功上传,而被服务器执行语句,从而敏感的信息就有可能被泄露。值得一提的是,跨站脚本攻击分为反射性、存储型以及DOM,三者的相互比较下,反射型和DOM的危害没有存储型的危害大,一旦发生存储型的跨站脚本
13、攻击漏洞,在条件充足的情况下,将会出现大范围的敏感信息泄露。在一个网站上,文件上传是一个在常见的功能,如果这个功能出现漏洞,可想而知它的危害有多大。文件上传漏洞通常是指不法分子上传了一个精心构造并且可以执行的文件,这个文件可以是木马、病毒、亦可以是脚本等。在条件充足下,不法分子上传恶意文件,然后利用恶意文件对服务器进行攻击从而操控服务器。在web服务器上上传的文件一般都是asp、php、jsp,这些类型的文件可以在web服务器上执行,从而达到控制服务器的目的。还有就是敏感信息泄露,这是比较具有影响力又容易被人忽视的漏洞。在网络安全领域常见的漏洞就是忽略对敏感信息进行加密。如果在对数据的加密过程
14、中,使用弱加密算法、弱协议和弱密码,尤其是使用弱的哈希算法来对密码进行加密是十分危险的。这样会被不法分子从传输过程中将敏感信息截获并破解出来,从而导致高危漏洞。跨站请求伪造CSRF是使用web应用程序在条件充足下被攻击者判别出一种操作的流程。在用户正常登录一个网站后会得到Cookie,而非法分子就使用浏览器主动发送会话Cookie凭证的特点,就能新建一个存在恶意代码的web页面来生成伪造请求。而这些恶意的伪造请求一般是很难与用户的合法请求区别开的。这样不法分子能以受害用户的身份去实现受害者权限下的操作,如:篡改用户密码、注销用户账号、甚至是盗用用户账号进行违法操作等。缓冲区溢出是安全威胁性高的
15、漏洞,该漏洞所产生的原理是:在计算机里输入的数据都会被寄存在临时空间里,而这个临时空间就是我们所说的缓冲区,这个缓冲区的长度一般情况下都是已经被规定了的。一旦缓冲区输入的数据的长度超过了缓冲区规定的长度,那就会导致数据溢出这个缓冲区,但要注意的是溢出来的数据会去覆盖掉前面的数据,这样就会导致出现合法数据丢失、服务器瘫痪等情况。业务逻辑漏洞是一种由于开发时存在缺陷所导致的漏洞。业务逻辑漏洞的逻辑弊端是开发人员在开发阶段所编写的代码存在明显或隐含的错误逻辑。非法分子就会非常注意地去测试目标操作流程所使用的方式,尽可能地去摸透开发者做出的流程操作,然后就利用这些存在逻辑问题的操作流程进行攻击。而业务
16、逻辑漏洞常常会出现在账户的登录、注册、密码找回、交易支付以及个人的信息修改中2。还有许多漏洞,例如:错误的安全配置、使用含有漏洞的组件、日志记录和监控的缺失等等,所以说web安全十分的重要,它关乎我们的信息安全以及网络安全。1.2.3 web漏洞的危害在一个网站中,如果存在web漏洞并被不法分子利用是十分危险的,在条件充足的情况下,不法分子可能轻而易举地就控制了整个网站,并可能进一步提权,以得到网站服务器的权限,进而控制整个服务器,例如,sql注入漏洞如果被不法分子利用,爆出了管理员的账号密码,就等于说这个网站已经被不法分子控制了;又如文本上传漏洞,如果被上传了后门文件,导致敏感文件泄露,进而
17、危害整个网站服务器。而有些低、中危的漏洞也是不可小觑的,例如,反射型的跨站脚本攻击漏洞或者是逻辑漏洞,这些都可能造成敏感信息泄露,从而危害用户甚至是网站。网络与我们息息相关,关于web安全的问题,我们不可小觑。1.3 Web安全现状与防范1.3.1 国内外现状Web漏洞具有的渗透性以及驱使人谋利的特点,已经成为在网络中增长最快、最危险的因素。而网络罪犯已经变得日益频繁并渐渐地在Web方面频频出现。眼下Web安全漏洞已经成为对企业来说是最为频繁常见的攻击手段,单单使用传统的防御方式会让人显得力不从心。目前Web安全不仅仅是技术上的博弈,同时也是心理上的博弈,在技术上不能落后,在心理上更要别人琢磨
18、不透,这样才能保证相对的安全。1.3.2 防范的意义有很多非专业人员有时候对于这些安全问题毫不在乎甚至会参与进去,这些人的心理是不可取的,如果不齐心协力共同抵制,只会让不法分子更加猖狂。 在Web环境下,也许会发生很多情况不同亦可能是多种情况糅合在一起的安全威胁,例如:勒索病毒、蠕虫、间谍软件、网络钓鱼电子邮件、漏洞利用、恶意程序等,如果在遇到这些威胁时,我们不警惕并积极防御的话,大多数情况都是用户的敏感信息可能遭受泄露,同时也可能导致服务器被控制或者瘫痪,从而遭受巨大的经济损失。 Web在现在的社会当中扮演着十分重要的角色,每年都在不断发展和创新。Web不仅仅改变了人们解决个体、社交业务的方
19、法,同时使更多的人更容易、更高效地找到针对某些问题的解决办法。因此,安全人员有必要了解Web的新走势,提高相应的知识,同时在日益复杂的网络世界当中保护个人、企业甚至是国家的安全。Web应用开发是不太可能退出网络社会的,所以Web安全也是无法绕开的话题。新技术的到来,意味着安全也要随之发展与进化,网络安全同样也是当今社会不可无视的话题。1.3.3 防范的技术 从根源来说,Web安全漏洞其实能够大致分为两种威胁分别是内、外部威胁。内部威胁是普遍都信任的网络的威胁,有很大的可能性的情况是用户在不知情的情况下就执行了某些并未授权的命令又可能是无意中运行了某些恶意的文件;外部威胁主要是因为网站自身就已存
20、在漏洞,而被不法分子使用或是遭到恶意的针对的攻击。对于Web来说,URL是一个防御的着手点。通过URL过滤以及内容检查过滤,能有效地防范已知的风险。但这种普通的防范方法还是比较被动,必须由安全维护人员不停地去更新纪录特征的特征文件。但如果我们采用动态技术,让服务器主动更新特征文件,这样的话效率就大大提高了。从另外的方向来思考,网络安全的威胁越来越多是经过Web以及E-Mail的方式,所以很有必要对Web和E-Mail实施防御策略,可以在信息流设置安全闸道,经过有效的过滤把威胁隔绝在外。换而言之,技术纷繁,对症下药即可,例如:在针对SQL注入时,避免网站运用动态的拼接字符串的方法去连接数据库;同
21、时有必要减少数据库所抛出的报错信息;可以对数据库的一系列操作做好严格的权限把控3。与此同时防御的技术跟上了,保护自我的意识也要跟上,要抑制住自己的好奇心,做到不访问不安全、不合法的网站,不要打开来路不明的邮件及其附件,还有就是不要随便在网上泄露有关自己的私密信息。提升安全防范认知,这也是能有效降低安全风险的。1.4 章节安排本文将分为五大章节,章节的主要内容如下:第一章:介绍本文的题目研究背景及意义,然后介绍web安全漏洞的定义以及详细介绍基本的web漏洞及web漏洞的危害,然后介绍有关国内外web安全的现状、防御的意义以及一些技术,最后阐明关于本文的结构。第二章:主要介绍本文的主要对象业务逻
22、辑漏洞的定义、特点以及该漏洞发生的原理,然后阐明该漏洞的危害,最后章节小结。第三章:主要介绍漏洞检测的基本流程,以及对业务逻辑漏洞的检测流程和方法,同时举一个实例说明方法,而后介绍检测功能的相关代码,在最后章节小结。第四章:对业务逻辑漏洞防御提出防御措施,主要类型有:数据篡改型、越权型、暴力破解型,三种类型。第五章:对本文所研究的内容进行总结,并对将来的进一步研发工作和目标进行了展望。26第二章 认识业务逻辑漏洞2.1 业务逻辑漏洞的定义业务逻辑漏洞顾名思义业务逻辑上出了问题,开发人员在开发阶段如果对业务应用逻辑考虑不够严谨或太过于杂乱,会让业务应用逻辑无法正常地执行操作流程,而以这些问题为根
23、源的web漏洞统称为业务逻辑漏洞。在这里要注意一点:业务逻辑漏洞可能只发生在某一个业务流程中,即网站的功能模块上,换句话说就是业务逻辑漏洞可能只发生在网站的某部分。2.2 业务逻辑漏洞的特点业务逻辑漏洞在业务多或者复杂的网站都有可能存在,该漏洞具有多样性、局部性、易操作性。多样性体现在业务逻辑漏洞可能出现多种多样的场景,例如:忘记密码、短信验证、支付交易、横向越权、信息篡改等;局部性体现在业务逻辑漏洞一般都是发生在局部的功能模块上,与其他模块并不冲突;易操作性体现在只要将数据包截下来并对相关部分数据进行修改,最后重新发送即可。2.3 产生业务逻辑漏洞的原理产生说其根本就是在开发阶段,开发人员在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自营 网站 业务 逻辑 漏洞 检测 防范
限制150内