SQL注入简介

发布时间:2024年01月20日

一、什么是SQL注入

1、通过把SQL命令插入到Web表单提交或者输入域名或者页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令

2、利用应用程序漏洞

3、恶意SQL命令注入到后台数据库引擎,并执行

4、注入流程:检测是否存在漏洞? -->? 探测后台数据库类型、属性? -->? SQL注入

二、SQL注入原理:

a、程序命令和用户数据(即用户输入)之间没有做到泾渭分明。

b、这使得攻击者有机会将程序命令当作用户输入的数据提交给web程序,以发号施令,为所欲为

c、接受相关参数未经处理直接带入数据库查询操作

d、以获得数据库的管理权限,然后提权至操作系统管理用户权限

e、最终控制服务器操作系统

f、万能密码:输入abmin' or 1=1 --发现输入任何密码都可以登入成功

三、SQL注入方法--要确定的三件事情

1、确定web应用程序所使用的技术

? ? ? ???注入攻击对程序设计语言或者硬件关系密切

2、查找注入点

Web应用的用户输入方式比较多

? ? ? ? ?明显的输入: HTML表单

? ? ? ? ?隐藏的输入: HTTP头部、cookics、甚至对用户不可见的后端AJax请求来跟Web应用进行交? ? ?? ?? ? ? ? ? ? ? ? ? ? ? ? ?互。一般来说,所有HTTP的GET和POST都应当作用户输入为了找出一个Web? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?应用所有可能的用户输入,我们可以求助于Web 代理如Bp等。

3、查找可以用于注入的用户输入

? ? ? ? ?输入方式进行筛选,找出其中可以注入命令的那些输入方式

方法:1、手工注入---->找到注入点,手工改造输入

? ? ? ? ? ?2、利用工具注入----->流行注入工具sqlmap

4、查找注入点

http:// www.*****.com/ ***.asp?id=x(ASP注入)

http:// www.*****.com/ ***.php?id=x(php注入)

http:// www.*****.com/ ***.jsp?id=x(jsp注入)

http:// www.*****.com/ ***.aspx?id=x(aspx注入)

http:// www.*****.com/ index.asp?id=8&page=99(注:注入的时候确定是id参数还是page参数,工具默认只对后面page参数注入,所以要对工具进行配置或者手工调换)。

http:// www.*****.com/ index/new/id/8伪静态

http:// www.*****.com/ inedx/new/php-8.html伪静态

四:SQL注入危害

1、数据库层面:a、非法读取、篡改、添加、删除数据库中数据

? ? ? ? ? ? ? ? ? ? ? ? ? ?b、盗取用户的各类敏感信息,获取利益

? ? ? ? ? ? ? ? ? ? ? ? ? ?c、通过修改数据库修改网页上的内容

? ? ? ? ? ? ? ? ? ? ? ? ? ?d、私自添加或者删除账号

2、操作系统层面:a、网页篡改

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?b、网络挂马

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?c、服务器远程控制

文章来源:https://blog.csdn.net/ting_liang/article/details/135705739
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。