微信钓鱼是目前最火热的攻击方法之一,也是近几年以来攻击成功率最高的攻击手法之一,有逐渐取代邮件钓鱼的趋势,导致很多公司谈“微”色变,究其原因就在于绝大多数企业不具备实时文件落地沙箱检测,导致微信钓鱼能轻易绕过前端防御,穿透防护体系,直达用户终端,从而出现内网终端失陷的情况。经调研目前市面上的各种企业防护软件,暂未发现任何针对微信钓鱼的可靠的实用拦截方法,而之前的文章“微信社工攻击防护方案”中并不具备普适性,存在推广困难的原因,鉴于目前微信钓鱼所带来的的各种危害,针对微信钓鱼攻击的手段进行分析,基于对攻击方式的总结,最终总结出终结微信钓鱼攻击的有效方法,构建了有效的防护体系,轻松应对微信钓鱼攻击。
微信钓鱼方法
根据微信钓鱼常见成功方法,大致分为三类:
微信钓鱼话术
微信钓鱼攻击者通常使用精心设计的诱导性话术来欺骗和诱导用户执行恶意操作。这些话术旨在引发受害者的好奇心、紧急感、好奇心或其他情感,从而使他们点击恶意链接、下载附件或泄露敏感信息。常见的场景为八卦,简历,求职,营销,等话术为主要文件名来源,比如今年出现的“单位职称人员情况统计表.exe”,“**衡出轨事实.zip”等。
思考一:如何发现微信钓鱼攻击?
要防范这些微信钓鱼话术,用户需要保持警惕,不轻信未经证实的信息,不点击可疑链接,不提供个人或敏感信息。同时,保持自己的安全意识,定期更新微信应用和操作系统,避免随意下载附件或点击未知来源的链接。
思考二:如何拦截微信钓鱼攻击?
从防守视角来看,所有的攻击方法最终都指向一点,即:诱导用户点击并执行恶意程序。
通过从防守视角的手法的解读和分析,针对木马程序最终的落地施行进行反制,即可以轻松做到终结微信钓鱼的攻击。
操作系统自带的软件限制策略(Software Restriction Policy)是一种基于Windows操作系统的安全功能,它旨在限制哪些程序可以在计算机上运行。通过配置这个策略,管理员可以指定微信文件存储路径,和限定文件扩展名,就可以轻松阻止未经授权的软件、恶意软件和病毒等运行在系统上。下面是构建步骤:
微信钓鱼传输可执行文件禁止执行具体成果截图:
微信钓鱼传输可执行文件监控事件告警截图:
坑点一:
在本微信盾防御的启用中,最需要关注的点就是如何获取微信的文件存储路径,从而为禁止执行做好相应的准备工作,经研究发现,微信的文件存储路径默认保存在当前用户的文档目录中,即%USERPROFILE%\Documents目录下,一旦用户自行修改过了文件存储路径,则该路径会显示在HKEY_CURRENT_USER\Software\Tencent\WeChat子键下的”FileSavePath”中,通过读取该键值中的数据,即可以获得大部分用户的文件存储路径,但是,在大量测试环境中发现,发现该键值经常性不存在,经过仔细研究,发现读取%APPDATA%\Tencent\WeChat\All Users\config\3ebffe94.ini的内容可以做到逻辑上识别该文件存储路径。(如果这里有其他更好的方法,欢迎在评论区提供)
坑点二:
微软从Windows 11 22H2开始禁用了SAFER的使用,导致上述拦截方法在Windows 11 22H2的操作系统中无效,解决办法是修改或者删除[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Srp\Gp]键值,所以在Windows 11 22H2中需要另外考虑在每次启动后将该键值删除或修改。当然,也可以修改微信盾代码将其作为常驻项启动,并联动日志监控功能发送告警或者通知。
坑点三:
目前微信盾的GUI版支持微信和企业微信两个平台,但是在进行批量推送的时候,通过轮询用户配置和HKCU可以查询PC微信的文件存储路径,但却因为无法找到准确的企业微信存储路径,只能在DOS版本中移除了该代码,避免出现无效性查询。
GUI版本没啥好说的,简单粗暴,启用即可,个人可以使用该版本进行防护。
DOS版本,用于批量部署,使用Start或者Stop开关即可进行参数化部署。
综上,通过部署该“微信盾”,未再出现微信钓鱼失陷事件,在本届H中取得了满意的效果,现特放出编译好的程序和源代码供大家使用。
源代码采用Delphi编写,传送门地址:微信盾