识别数据库

要想成功发动sql注入攻击,最重要的是知道应用正在使用的DBMS(数据库管理系统)。没有这一数据,就不能向查询注入信息并提取自己感兴趣的数据。


  1. web应用技术
    Microsoft SQL Server:ASP和.Net
    MySQL:PHP
    Oracle/MySQL:java
  2. 底层操作系统
    安装IIS(Internet信息服务器)作为服务器服务平台标志着应用是基于windows架构,那么,后台数据库很可能是SQL Server;
    运行Apache和PHP的Linux服务器则很可能使用的是开源数据库,比如MySQL
    当然,也不是绝对的,因为管理员很可能将不同技术以不平常的技术组合起来使用。
  3. 是否处于盲注
    识别数据库最好的方法在很大程度上取决于是否处于盲注。
    3.1 非盲跟踪
    大多数情况下,要了解后台DBMS,只需要查看一条非常详细的错误信息即可。
    获取标志信息:错误信息可以帮助我们相当准确的关于数据库所使用的技术。但是这些技术还不够,需要获取更多的信息

    查询各种DBMS版本

    数据库服务器查询
    Microsoft SQL Serverselect @@version
    MySQLselect versuon(),select @@version
    Oracleselect banner from v$version,select banner from v$version where rownum=1

    3.2 盲跟踪
    从字符串推断DBMS版本

    数据库服务器查询
    Microsoft SQL Serverselect ‘some’+’string’
    MySQLselect ‘some’+’string’ , select concat(‘some’,’string’)
    Oracleselect ‘some’ `[双竖线] ‘string’ , select concat(‘some’,’string’)

    从数字函数推断DBMS版本

    数据库服务器查询
    Microsoft SQL Server@@pack_received,@@rowcount
    MySQLconnect_id(),last_insert_id(),row_count()
    OracleBITAND(1,1)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值