知识点sql注入解析数据库类型

Posted 光荣之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识点sql注入解析数据库类型相关的知识,希望对你有一定的参考价值。

mysql、mssql和oracle数据库都有自己特有的一些命令,我们可以根据它们确定我们要注入的数据库类型。mysql与mssql中select @@version返回当前数据库的版本,oracle中 select banner from v&version 返回数据库版本。 不同数据库构造字符串的访问也不一样。如,要构造字符串“yeetrack”, oracle 中的命令是 ‘yee’||’track’ ,mssql中的命令是 ‘yee’+'track’,mysql中的命令是 ‘yee’ ‘track’,中间是个空格。

Oracle数据库:

1.、对于一个查询的URL,例如http://www.yeetrack.com/wordpress/?p=54,首先试探这个URL需要返回的列数,构造URL http://www.2cto.com /wordpress/?p=54%20union%20select%20null%20from%20dual–,查看返回结果,如果错误说明返回列数不为1,增加null的个数,http://www.yeetrack.com/wordpress/?p=54%20union%20select%20null%20null%20from%20dual–,直到结果不发生错误为止。

2、 确定了返回的列数,再来确认每一列的类型,依次将null改为’a',查看返回结果,返回a则正确;出现异常再修改’a'的位置,直到正确为止。

3、找到了一个正确的类型,就可以探测数据库的信息了。查询当前用户拥有的数据库的全部对象,select object_name, object_type from user_object.根据返回的信息,找到感兴趣的表,再探测该表的列。select column_name from user_tab_columns where table_name=’tablename’, 最后探测该表的数据, select username, password from user–

MSSQL数据库:

1、 同oracle数据库。

2、 同oracle数据库。

3、 探测数据库的信息,select name from sysobjects–,找到感兴趣的表,就可以提出表的字段和信息了。


更多测试招聘资讯,请关注光荣之路微信公众账号:gloryroadtrain


以上是关于知识点sql注入解析数据库类型的主要内容,如果未能解决你的问题,请参考以下文章

sql注入解析

SQL注入学习总结:其他类型SQL注入之SQL约束攻击

SQL注入详解

SQL注入的那些面试题总结

解析数据库以及SQL注入,大佬勿喷

SQL注入步骤和常用函数以及中文处理方法