是否了解web注入攻击原理,说下原理,最常见的两种攻击了解到什么程度

导读:SQL注入攻击是一种非常有效且破坏性很大的渗透手段,它是针对于数据库的一种攻击手段,了解和熟悉SQL注入原理,掌握防御SQL注入攻击的原理和技巧就变得至关重要,SQL注入攻击的普遍性、难捉摸性、简易性等特点让其成为了网络中黑客主流攻击方式之,因为SQL注入是从正常的Web平台入口进行请求访问,大部分防火墙都不会对这类SQL注入攻击进行监控和发出警报,由于现在广泛流行的恶意攻击工具,SQL注入在西南科技大学本科生毕业论文 第1章
项目背景及意义 SQL注入攻击是一种非常有效且破坏性很大的渗透手段。它是针对于数据库的一种攻击手段,通过利用数据库的外部接口把恶意代码插入到SQL语言中使数据库服务器解析并执行,以达到入侵目标数据库及至整个操作系统的目的。了解和熟悉SQL注入原理,掌握防御SQL注入攻击的原理和技巧就变得至关重要。SQL注入攻击的普遍性、难捉摸性、简易性等特点让其成为了网络中黑客主流攻击方式之一。因为SQL注入是从正常的Web平台入口进行请求访问,和请求正常的Web页面没有什么区别,所以目前市面上除了专门的Web防御防火墙外,大部分防火墙都不会对这类SQL注入攻击进行监控和发出警报,若网站管理员没有经常查看IIS日志的经验和习惯,有可能被入侵很长一段时间后都没有任何发觉。由于现在广泛流行的恶意攻击工具,SQL注入在近年来呈现一种增长的趋势。 据OWASP(开放式web应用程序安全项目)每隔三年更新一次的“十大安全隐患列表”,在近几次公布的总结Web应用程序最可能、最常见、最危险的十大安全隐患中,SQL注入攻击一直排列靠前。OWASP TOP 10 2010中列出的最严重的Web应用程序的漏洞中,注入(Injection)风险位居第一。 Web应用的发展越来越成熟,应用的各项技术发展得也越来越复杂。它们涵盖了从外部动态展示INTERNET和内部工作网络到以WEB协议方式传递数据的企业工作应用(如文档管理系统等)。这些系统的实用性及其数据存储、处理内容的机密性和敏感性对于企业的主要业务而言都非常重要。 当前市面的注入攻击检测工具只能对单个网页或者单个URL进行检测和注入,无法对整个网站的漏洞进行检测。而漏洞扫描工具可以对整个网站漏洞进行扫描却无法进行进一步的注入攻击检测。很大程度上不能满足开发人员和管理人员对网站SQL注入漏洞全面了解的要求。本研究的最终目的是分析SQL注入攻击的类型、关键技术和原理,并研究SQL注入在实际应用中的操作方法,在此基础之上,设计并开发了一套自动注入工具。 因为恶意攻击者不仅可以通过SQL注入攻击对Web应用数据进行盗取、篡改信息,还可以进一步对于服务器进行恶意操作,并且植入木马或者后门程序,甚至控制整个服1 西南科技大学本科生毕业论文 务器,这就严重影响了应用的正常运行以及对于应用的信息安全带来严重后果。所以,对于功能齐备的SQL注入攻击扫描与检测工具的研究与开发具,具有非常重要的现实意义。应用程序开发者或网站管理人员使用此工具对自已的网站进行安全检测,以达到减小SQL注入的可能性。同时,在渗透测试工作中,对于安全测试也具有很大的帮助。 1.2
研究内容 1.2.1
自动注入攻击工具的研发 本研究首先理解Web应用的工作原理,首先简要概述Web应用系统通用的架构模式,理解了构建模式后能更清晰的了解SQL注入的产生过程,然后从Web应用的代码层来分析介绍是什么引起了通用的SQL注入,然后研究介绍SQL注入漏洞的利用过程。从框架到利用逐步分析SQL注入的过程和利用,然后根据分析的内容构建SQL注入的自动化检测及注入攻击利用框架。 1.2.2
SQL注入原理 SQL注入的原理,是将SQL代码插入或者非正常时添加到应用的参数当中,并且进行了一定的拼接传入到了后台的数据库服务器,最终使服务器执行了该拼接的恶意SQL命令。所有的是通过SQL语句执行的应用过程均存在被攻击的威胁,因为SQL的多样多变性语言结构特征使得攻击者可以拼接构建丰富的代码编码手段等来拼接语句来欺骗服务器。SQL注入攻击的主要方式就是直接将命令插入到应用服务的表单参数中传入到后台数据库查询字符串中,这些参数就会被带入到后台数据库服务器进行执行解析,攻击者便可以构造恶意命令来达到攻击目的。 1.2.3
SQL注入检测技术 检测发现SQL注入漏洞有一条简单的规则:SQL注入是通过发送特殊数据来触发异常操作。该规则包括如下含义: ? 检测Web应用上所有的输入数据; ? 集合SQL语法,归类所有可能触发异常的数据类型; ? 检测数据库服务器应用响应中的异常。 首先需要清楚Web浏览器向Web服务器发送请求的过程。不同的服务应用会有不同2 西南科技大学本科生毕业论文 的体现方式,它们均处在基于Web的环境中,所以基本原理是相同的。 识别和检测应用接受的所有数据,攻击一般都会修改这些数据,所以需要识别并分析服务器对它们的响应。有时响应中会直接包含来自数据库的SQL错误,有时需要不断的方式来检测和确定响应中细微的差别。 1.3
章节安排 本论文章节安排如下: 第一章 绪论:综述此研究设计的背景意义以及研究内容。 第二章 SQL注入技术研究:主要对SQL注入攻击方式过程和攻击特点进行归类、识别,首先理解Web应用的工作原理,概述Web应用通用的构建方式,为理解SQL注入的产生过程提供一些背景知识,接下来从Web应用的代码层介绍引发SQL注入的因素以及哪些开发实践和行为会引发SQL注入。分析SQL注入过程和利用,并架构如何将SQL注入的发现过程自动化以提高检测简单SQL注入的框架。 第三章 SQL注入攻击技术研究:根据SQL注入技术,研究利用数据库中的功能来攻击系统端口的技术。数数据库大多均带有丰富的数据库编程功能,可以利用SQL注入漏洞来访问文件系统以执行有效的任务,可以在基础操作上执行各种命令,扩大范围攻击的利用技术细节。当发现SQL注入漏洞以及初步的利用获取数据后,可以利用SQL注入漏洞来访问文件系统来扩大渗透范围。还可以在操作系统上执行各种命令,攻击可以使用它们扩展数据库的可达区域并在更大的范围内发动攻击。 第四章 注入高级技巧研究:Web应用通常会使用过滤应用,设计这些过滤的目的就是防御SQL注入在内的常见攻击。这些过滤方式可以是位于web应用的代码层中,也可以通过第三方的外部实现,如Web应用防火墙(WAF)或入侵防御系统(IPS)。当注入攻击碰到这些防御应用,若想进一步利用漏洞,则需要寻找一种能避开过滤器防护的高级方法以便恶意输入传递给易受攻击的代码。 第五章 自动注入工具框架设计:根据项目的设计需求,以及Python编程语言的特点,对自动注入攻击工具整体框架进行分析和设计。并且分析功能模块中的重点和关键技术。 第六章 SQL注入测试:自动注入攻击实例测试。 3 西南科技大学本科生毕业论文 第2章
SQL注入技术 2.1
Web应用工作原理和架构简析
不论是用何种脚本语言开发的Web应用,都有一个共同点:具有交互性并且大多是数据库驱动的。基于数据库驱动的Web应用一般都包含三层:a presentation tier(表示层,Web浏览器或呈现引擎)、a logic tier(逻辑层,如C#、ASP、.NET、PHP、JSP等编程语言)和a storage tier(存储层,如Microsoft SQL Server、MySQL、Oracle等数据库)。Web浏览器(表示层,如Internet Explorer、Safari、Firefox等)向中间层(逻辑层)发送请求,中间层通过查询、解析数据库(存储层)来响应该请求。
图2-1 简单的三层架构
Web三层架构解决方案没有扩展性,研究人员不断地对Web三层架构进行改进优化,在可维护性和可扩展性的基础上建立了一种新概念:n层应用开发模式。其中有一种就是Web四层架构解决方案,该方案在Web服务器和数据库之间使用了一层中间件服务器(通常称为应用服务器)。下图2-2中,Web浏览器(表示层)向中间层(逻辑层)发送请求,后者一次调用由位于应用层的应用服务器所提供的API,应用层通过查询、更新数据库(存储层)来响应该请求。 4 西南科技大学本科生毕业论文
图2-2 四层架构 2.2
识别SQL注入 SQL注入就是程序员对程序中动态的SQL语句没有作严格的过滤或检测,导致黑客能在注入点提交非法的SQL语句,导致程序和服务器的信息被泄漏。由于SQL注入的入门门槛低,隐蔽性好,破坏性大,杀毒软件无法查杀,是当前最主流的入侵手段。 SQL注入攻击的本质,就是服务器将用户传入的数据在数据库中当成了SQL代码执行。这里便有两个关键因素:第一个是用户有权限输入数据;第二个是服务器应用数据执行了用户传入的数据。 2.2.1
识别数据输入 Web环境是一种C/S(客户端/服务器)架构。客户端使用浏览器向Web服务器发送请求并等待响应。Web服务器接收到请求后,通过查询、解析数据库,将响应发送回客户端。很明显,双方便必须使用一种协议作为双方的约定,这种传输协议就是HTTP。 首先,必须识别远程Web应用所接收的所有数据输入。HTTP协议定义了可以发送给服务器的操作方式,这里只关注研究与SQL注入攻击相关的两种方法:GET和POST。 GET请求: GET是向服务器发索取数据的一种请求,是一种请求服务器的HTTP方法。使用GET请求时,信息是显示在URL中的。GET请求对用户是透明的,如下例,WEB服务器的GET请求如下所示: GET /general/vote/show/webst/list.php?VOTE_ID=131 HTTP/1.1 User-Agent: Opera/9.80 (Windows NT 6.1; U; Edition IBIS; zh-cn) Presto/2.10.229 Version/11.62 5 包含总结汇报、党团工作、外语学习、人文社科、经管营销、行业论文、工作范文、资格考试、旅游景点、word文档以及自动注入攻击工具的研发等内容。本文共10页
相关内容搜索请帮忙解释 SQL 注入攻击的原理,以及对数据库可能产生的不利影响。谢谢了展开全部下一篇:收房验房是直接关乎到业主日后居住、避免装修过程中出现问题的重大事项,为了更好的收房验房,有些业主会请专业的验房师帮忙,这涉及到金钱问题。最近微博比较火热的话题人物,莫过于佟大为了,因为其主演的电视剧,受到了广泛关注而引申而出的“#求佟大为别出轨#”,最近太多的明星出轨,让人们收房验房是直接关乎到业主日后居住、避免装修过程中出现问题的重大事项,为了更好的收房验房,有些业主会请专业的验房师帮忙,这涉及到金钱问题。可能很多业主听说邻里朋友在装修的时候请了装修监理,那么业主如果自己也想要请装修监理有哪些地方需要注意呢?另外该怎么选择合适的装修监理呢?不请设计师,一个户型能做出11套不同的方案吗?一般新房在交房的时候,都要先收房、验房确保房屋没有问题,再完成交房流程,不过很多业主由于是装修小白,对于验房的相关内容都不了解,于是打算请验不少人在家庭装修时,考虑要不要请装修设计师,现在很多装修公司都会免费提供设计,但是很多业主不放心,因为设计师与装修公司有材料合作的关系,因此姓名学解释有哪些呢?大家对于姓名学又有哪些比较全面的了解呢?装修需要花多少钱 请设计师装修一般花多少钱家装预算报价之厨房装修橱柜:不好具体预算,根据房子大小和要求,品牌,配置,造型,一般在2000-8姓名学是一门十分精深且博大的学问,一直以来受到人们的广泛关注,那么对于姓名学解释都有哪些呢?注入攻击原理及自己编写一个注入点
注入攻击原理及自己编写一个注入点
试看结束,请登录后观看完整视频
本节课程为收费课程,您登录后才能观看
Web安全工程师 收起>
第一章:黑客是如何工作的?
第二章:白帽黑客的法律约束
第三章:漏洞扫描工具:AWVS
第四章:网络安全审计工具:Nmap
第五章:Web安全基础入门
第六章:社工情报侦察神器:Maltego
第七章:入侵痕迹追踪溯源
第八章:社会工程学工具:SET
第九章:弱口令
第十章:SQL注入
第十一章:非法上传
第十二章:跨站脚本XSS
第十三章:Web漏洞分析技术
第十四章:渗透工具:SQLMap
第十五章:集成平台:Burpsuite
第十六章:漏洞检测工具:Metasploit
第十七章:Kali渗透测试教程
第十八章:安全开发设计
第十九章:PHP代码审计
关注(711)
目标入职Web安全工程师
课程评论()
第一章:黑客是如何工作的?
第二章:白帽黑客的法律约束
第三章:漏洞扫描工具:AWVS
第四章:网络安全审计工具:Nmap
第五章:Web安全基础入门
第六章:社工情报侦察神器:Maltego
第七章:入侵痕迹追踪溯源
第八章:社会工程学工具:SET
第九章:弱口令
第十章:SQL注入
第十一章:非法上传
第十二章:跨站脚本XSS
第十三章:Web漏洞分析技术
第十四章:渗透工具:SQLMap
第十五章:集成平台:Burpsuite
第十六章:漏洞检测工具:Metasploit
第十七章:Kali渗透测试教程
第十八章:安全开发设计
第十九章:PHP代码审计
快获得免费弹幕、提问、点赞、吐槽权限,已有账号直接
我在i春秋学习《Web安全工程师
》课程,很不错哦~更多网络安全学习内容,尽在i春秋
课时100分钟
课时1227分钟
课时28分钟
更新到第27
应该支付金额为45泉×
余额支付 当前余额44泉
还需支付:1&泉
1泉等于1元人民币
请到个人中心进行充值
支付提醒×
请在新弹出的支付宝页面进行支付,完成后本页面自动跳转
微信扫码支付×
请用手机打开微信,扫描上方二维码进行支付
北京五一嘉峪科技有限公司
海淀区中关村软件广场C座
京ICP证150695号
京公网安备37号
实验环境构建:0%
为了提供倍速播放、断点续看、学习时长记录等功能,推荐您使用Chrome、Firefox浏览器,点击下载前端面试题_中华文本库
第6页/共7页
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? WEB 应用从服务器主动推送Data 到客户端有那些方式? 对Node 的优点和缺点提出了自己的看法? 你有用过哪些前端性能优化的方法? http 状态码有那些?分别代表是什么意思? 一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么?(流程说的越详细越好) 部分地区用户反应网站很卡,请问有哪些可能性的原因,以及解决方法? 从打开app 到刷新出内容,整个过程中都发生了什么,如果感觉慢,怎么定位问题,怎么解决? 除了前端以外还了解什么其它技术么?你最最厉害的技能是什么? 你用的得心应手用的熟练地编辑器&开发环境是什么样子? 对前端界面工程师这个职位是怎么样理解的?它的前景会怎么样? 你怎么看待Web App 、hybrid App、Native App? 你移动端前端开发的理解?(和 Web 前端开发的主要区别是什么?) 你对加班的看法? 平时如何管理你的项目? 说说最近最流行的一些东西吧?常去哪些网站? 如何设计突发大规模并发架构? 说说最近最流行的一些东西吧?常去哪些网站? 是否了解开源的工具 bower、npm 、yeoman 、grunt 、gulp ,一个 npm 的包里的 package.json 具备的必要的字段都有哪些?(名称、版本号,依赖) 每个模块的代码结构都应该比较简单,且每个模块之间的关系也应该非常清晰,随着功能和迭代次数越来越多,你会如何去保持这个状态的? Git 知道branch, diff, merge么? 如何设计突发大规模并发架构? 当团队人手不足,把功能代码写完已经需要加班的情况下,你会做前端代码的测试吗? 说说最近最流行的一些东西吧?平时常去哪些网站? 知道什么是SEO 并且怎么优化么? 知道各种meta data的含义么? 移动端(Android IOS)怎么做好用户体验? 简单描述一下你做过的移动APP 项目研发流程? 你在现在的团队处于什么样的角色,起到了什么明显的作用? 你认为怎样才是全端工程师(Full Stack developer)? 介绍一个你最得意的作品吧? 你有自己的技术博客吗,用了哪些技术? 对前端安全有什么看法? 是否了解Web 注入攻击,说下原理,最常见的两种攻击(XSS 和 CSRF)了解到什么程度? 项目中遇到国哪些印象深刻的技术难题,具体是什么问题,怎么解决?。 最近在学什么东西? 你的优点是什么?缺点是什么? 如何管理前端团队? 最近在学什么?能谈谈你未来3,5年给自己的规划吗?
第6页/共7页
寻找更多 ""君,已阅读到文档的结尾了呢~~
web前端开发面试题大全
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
web前端开发面试题大全
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口

我要回帖

更多关于 web注入攻击原理 的文章

 

随机推荐