SQL注入之非MySQL数据库注入技巧

今天继续给大家介绍Linux运维相关知识,本文主要内容是非MySQL数据库注入技巧。

免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!

一、非MySQL数据库SQL注入简介

除了MySQL数据库以外,我们在进行渗透测试时,还经常遇到很多非MySQL的数据库,常见的数据库有Access、SQL Server、MongoDB、postgresql、sqlite、db2等等。
不同的数据库有其自身的一些特性,进行SQL注入的语句也有所不同,我们在进行SQL注入的渗透测试时,要注意针对这些不同的数据库进行不同的渗透。
针对非MySQL数据库的情景,我们一方面可以利用工具来进行探测其数据库类型,另一方面也可以结合当前网站搭建的特点,例如,asp的网站通常使用Access数据库。但是,这两种方式,都会存在误报的风险,我们还需要进行确认。
在这些常用的数据库中,Access、MongoDB与MySQL数据库有较大不同,其他的则与MySQL数据库相类似,因此在后文中会单独介绍。

二、Access数据库特性与注入

Access数据库是一款轻量级的数据库,该数据库与MySQL不同的是没有“库”的概念,Access数据库下面只有一张张的数据包,并且也不存在存储数据表和字段信息的“元数据”表格(类似MySQL中的information_schema数据表)。因此,我们在进行渗透测试Access类型的数据库时,只能对数据表、字段内容进行猜解。
此外,Access数据库没有内置参数和函数,供我们查询数据库的版本、用户、系统信息等等。此外,Access数据库也不支持对文件进行读写。Access数据库的数据信息,通常就存储在网站根目录下面。

三、MongoDB数据库特性与注入

在上面列举的诸多数据库中,MongoDB是一个非常常用的数据库,也是上面这些数据库中唯一的NoSQL数据库。
SQLMAP渗透测试工具支持很多种类型的数据库注入测试,但是不支持MongoDB的数据库探测。如果我们相对MongoDB数据库进行渗透测试,一方面可以使用手工的方式进行,另一方面还可以找专业的NoSQL渗透测试工具,如NoSQLAttack等来进行注入。
在这里插入图片描述
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

猜你喜欢

转载自blog.csdn.net/weixin_40228200/article/details/125400110