之前打CTF的时候遇到过很多次这个漏洞。渗透测试期间,我们研究了蜜罐的骚操作,比如获取百度ID、CSDN账号、微信ID等。,给攻击者一个攻击者的画像。学习原理,然后做一些改进,运用MySQL的漏洞获取攻击者的手机号。
这个系统的代码不是完全原创的,有些代码参考https://github.com/qigpig/MysqlPoLaypros。在MySQL任意文件读取漏洞方面,网上的许多大佬都写了非常详细的分析文章,这篇文章不再重复。与此同时,如果要重现漏洞,还可以在github上选择其洁的单个文件server代码。
顾名思义,FakeMySQL是一种虚假的MySQL。事实上,这个名词是我个人习惯的称呼,目前在网上还没有公认完整的定义。下面是个人理解,如果有问题,欢迎纠正。FakeMySQL是建立一个伪装的MySQL服务器,通过命令或引导将受害者连接到该服务器上,进而运用MySQL的相关漏洞读取文件,或反序列使用。
这篇文章不涉及反序列化的使用,能够 简单地理解为MySQL蜜罐,运用漏洞读取LOADMATALOCALIDMILed的任意文件。上述就是这篇文章的废话,话不多说,直接进入主题。
如下图所示,当我在服务器上运转payload代码,并设定我想要读取的文件时,就可以进入监听模式,这就是漏洞的再现和运用。如果攻击者连接到我的3306端口,就可以成功地读取攻击者计算机上的相应文件。
同样的道理,Linux能够 读取/etc/passwd等文件。因而,能够 浏览文件,如何进一步扩展?基于大人物的文章,我们可以通过浏览C:\Windows\PFLB.log文件来获得攻击者的登录名,并依据登录名浏览相应文件夹中的微信配置文件,进而获得微信ID。只需微信文件保存路径是初始的。取得登录名,如下图所示:但是这种方法的缺点是,只能单个文件浏览,每次都要重新设定文件名,不能实现循环浏览。因而,依据https:///github.com/qigpig/MysqlPoLaypros中的部分代码,进一步完善和修改,就有了以下内容:
工具相关,代码相关,开门见山。这个系统的代码乍一看是完美的,但是一般理性来说,只适合读取windows系统的文件。这个代码主要有两个功能:1。判断是扫描还是密码爆破工具,进行交互握手,效果是扫描直接爆炸3306弱密码。2.如果是直接连接,读取设定好的文件,写入本地保存。PS:为了防止读取文件内容不完整,添加了while循环。这个代码是从文件内容中获取信息并保存到数据库:1。从C:/Windows/PFLB.log中读取登录名。