电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

SQL注入原理深度解析VIP免费

SQL注入原理深度解析_第1页
1/6
SQL注入原理深度解析_第2页
2/6
SQL注入原理深度解析_第3页
3/6
对于Web应用来说,注射式攻击由来已久,攻击方式也五花八门,常见的攻击方式有SQL注射、命令注射以及新近才出现的XPath注射等等。本文将以SQL注射为例,在源码级对其攻击原理进行深入的讲解。 一、注射式攻击的原理 注射式攻击的根源在于,程序命令和用户数据(即用户输入)之间没有做到泾渭分明。这使得攻击者有机会将程序命令当作用户输入的数据提交给We程序,以发号施令,为所欲为。 为了发动注射攻击,攻击者需要在常规输入中混入将被解释为命令的“数据”,要想成功,必须要做三件事情: 1.确定 Web应用程序所使用的技术 注射式攻击对程序设计语言或者硬件关系密切,但是这些可以通过适当的踩点或者索性将所有常见的注射式攻击都搬出来逐个试一下就知道了。为了确定所采用的技术,攻击者可以考察Web页面的页脚,查看错误页面,检查页面源代码,或者使用诸如 Nessus等工具来进行刺探。 2.确定所有可能的输入方式 Web应用的用户输入方式比较多,其中一些用户输入方式是很明显的,如 HTML表单;另外,攻击者可以通过隐藏的HTML表单输入、HTTP头部、cookies、甚至对用户不可见的后端 AJAX请求来跟 Web应用进行交互。一般来说,所有HTTP的GET和POST都应当作用户输入。为了找出一个 Web应用所有可能的用户输入,我们可以求助于Web代理,如 Burp等。 3.查找可以用于注射的用户输入 在找出所有用户输入方式后,就要对这些输入方式进行筛选,找出其中可以注入命令的那些输入方式。这个任务好像有点难,但是这里有一个小窍门,那就是多多留意 Web应用的错误页面,很多时候您能从这里得到意想不到的收获。 二、SQL注射原理 上面对注射攻击做了一般性的解释,下面我们以SQL注射为例进行讲解,以使读者对注射攻击有一个感性的认识,至于其他攻击,原理是一致的。 SQL注射能使攻击者绕过认证机制,完全控制远程服务器上的数据库。SQL是结构化查询语言的简称,它是访问数据库的事实标准。目前,大多数Web应用都使用SQL数据库来存放应用程序的数据。几乎所有的Web应用在后台都使用某种 SQL数据库。跟大多数语言一样,SQL语法允许数据库命令和用户数据混杂在一起的。如果开发人员不细心的话,用户数据就有可能被解释成命令,这样的话,远程用户就不仅能向 Web应用输入数据,而且还可以在数据库上执行任意命令了。 三、绕过用户认证 我们这里以一个需要用户身份认证的简单的Web应用程序为例进行讲解。假定这个应用程序提供一个登录页面...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

SQL注入原理深度解析

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部