SQL注入 – 作者:HideYourTail

本文仅用于技术交流!严禁用于非法用途!

原创文章

联系方式:[email protected]

原理:用户提交的数据在变量参数中,由于服务器端过滤不严格,误把数据当作命令执行。
 
网站分层:browser —> web server —> web application —>database
 
应用场景:所有需要调用数据库的变量都有可能存在sql注入
 
危害:sql注入是针对数据库的攻击,但不仅限于数据库,也可以利用sql注入执行操作系统层面的命令。
 

验证方法:

基于报错的检测方法
可以在 ‘ ‘ 中在输入一个 ‘  导致查询语句无法完美闭合(语法错误,数据库无法识别),就会报错(也可也输入 ” % / * ( )等特殊字符)。若服务器端执行并返回报错信息,就可以模糊判断目标存在sql注入漏洞,因为服务器已经执行我们的特殊符号。
注意:报错是数据库的报错信息,但不应该返回给客户端
dvwa为例:
图片[1]-SQL注入 – 作者:HideYourTail-安全小百科输入 ‘ 就会报下面的错误,接下来就可以依据报错信息拼接sql语句进行查询了
图片[2]-SQL注入 – 作者:HideYourTail-安全小百科
基于布尔的检测方法
and 1=1        and运算,必须都为真,结果才为真
例如: and前的1为真(直接输入1就可以查询结果),and后1=1也为真。
            注意:查询语句需要根据实际情况进行拼接。语句中 ‘ 是用来闭合目标查询语句的
图片[3]-SQL注入 – 作者:HideYourTail-安全小百科
or 1=1           or运行,有一个为真,结果就为真
                        a为假,但1=1为真,所以结果也为真
图片[4]-SQL注入 – 作者:HideYourTail-安全小百科

危害:

通过order by 语句判断目标字段数。
 
 ‘ 用来闭合目标查询语句,#用来注释后面的 ‘      
输入order by 3会报错,因为没有3个字段,order by 2 没有返回信息,但也没报错,由此可判断目标查询语句,查询了两个字段。
图片[5]-SQL注入 – 作者:HideYourTail-安全小百科图片[6]-SQL注入 – 作者:HideYourTail-安全小百科图片[7]-SQL注入 – 作者:HideYourTail-安全小百科

现在已经判断出目标存在sql注入,也判断出目标查询语句和查询了多少字段,接下来就可以用union select查询数据了。
 
用databse(),version()两个数据库默认函数,查询出当前库名以及版本信息。(通过版本信息可判断目标是mysql数据库)
图片[8]-SQL注入 – 作者:HideYourTail-安全小百科

通过@@datadir和user()两个函数查询出当前数据库所在位置和用户

图片[9]-SQL注入 – 作者:HideYourTail-安全小百科
通过@@hostname,@@version_compile_os两个函数,可判断目标当前主机名和当前操作系统版本
图片[10]-SQL注入 – 作者:HideYourTail-安全小百科
 
 
可以直接查询mysql默认表:information_schema    。
table_name查询表名,table_schema查询库名,(– 表示注释。注意:–后面有一个空格)
可以直接查看所有库,所有表
图片[11]-SQL注入 – 作者:HideYourTail-安全小百科
 
 
查询information_schema库需要mysql的root权限,如果没有root权限,就需要进行猜测列名,表名等。
 
这条语句用来猜测目标是否存在user列,并且查询列中的空字段,如果有就返回,如果没有就报错,可进一步结合burp等工具加字典猜测目标列名
图片[12]-SQL注入 – 作者:HideYourTail-安全小百科
 
猜解出列名后,进一步猜解表名,原理与猜解列名一样,也可以结合burp加字典进行爆破
 
图片[13]-SQL注入 – 作者:HideYourTail-安全小百科
 
进一步猜解库名
 
图片[14]-SQL注入 – 作者:HideYourTail-安全小百科
判断出列名后,猜解字段内容
or运算,只要有一个内容为真,结果就为真,由此可判断user列中存在admin
图片[15]-SQL注入 – 作者:HideYourTail-安全小百科
模糊查询
 
图片[16]-SQL注入 – 作者:HideYourTail-安全小百科

 
 
总结:
sql注入设计范围很广,所造成的危害更多的取决于攻击者的利用方式。
 
文章内容便基础,笔者也只是安全圈新人,不足之处,还望前辈指点。

来源:freebuf.com 2020-07-14 23:40:30 by: HideYourTail

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论