社会工程学信息搜集
在之前,我们已经搜集到了一些很有料的信息,那我们来看看如何利用这些搜集到的信息进行社会工程学攻击。我们能想到的场景之一,是借用求职者的身份与公司的HR进行联系,包括但不局限于LinkedIn在线私信、电话联系、邮件联系。尤其是邮件联系,现在的企业往往都有自己的邮件过滤系统,对于非内部的邮件地址都会进行banner标记,甚至比较明显的诈骗邮件、广告邮件直接会被拦截,收件者根本没有机会看到。
我们在之前看到,SmartBear公司具有HE部门,我们可以在LinkedIn上搜索该公司IT部门的员工,虽然不一定所有员工都在用LinkedIn。另外,在OSINT信息收集阶段我们得知该公司的邮件地址方案是 [名].[姓]@smartbear.com,例如 Lindsey.Beaudoin@smartbear.com.
并且我们在之前看到,该公司IT部门有一些岗位是开放的,我们可以声称自己是应聘IT岗位的人员,因为IT人员对公司的基础设施更为了解,如果在询问目标公司的基础设施相关信息的时候,引起怀疑的概率要低一些。例如这么一个语境:“HR你好,作为一个IT系统管理员,我对各家厂商的VPN的配置有一定经验。我可否知道贵公司的VPN供应商?”。如果得到了回答,那么可以查看有关厂商VPN产品的漏洞以及配置不当。
此外,需要注意的是,与HR进行交互,一般分为两种。一种是在求职页面直接填写个人信息、上传简历等。并且我们看到该公司是使用Office工具组的,而允许上传的文件包含word格式,doc格式是支持插入宏的。因此我们可以准备一个插入了宏并且能躲避AV/EDR的doc文档并且上传。但是,通过这种方式上传,对于攻击者来说是没有“回显”的。攻击者甚至不知道HR是否查看了该文件。现在的企业大都有简历过滤系统,会根据关键字进行自动的第一轮筛选。
而另外一种交互方式,则是亲自与HR交谈,例如在LinkedIn上与HR在线交谈、发送邮件表达自己求职意愿并且附上带有宏的doc文档。如果HR回复了,那么很大可能他们将会亲自打开该文档。虽然大家都知道宏是个危险的功能,但因为其拥有一定的用途,在企业里并非完全被禁用。但假如即将打开doc文件的HR的默认设置是禁用宏,那么我们需要额外的话术去诱导该HR先开启宏功能。
那么在技术上如何实现呢?Word有个特性叫自动图文集,即可以把特定内容保存进去,当然也可以在后续把保存的图文集提取出来插入到文档中。这个特定配合特定的macro脚本,可以实现伪加密效果。
1:新建一个doc文档,填写一些可信的内容,例如个人简历。
2:选中内容,将所选的内容保存到自动图文集中(插入 ->文档部件 -> 自动图文集)
3:删除个人简历内容,填写语境,例如 “出于个人隐私考虑,该文档进行了加密,请启用宏以解密该文档查看个人简历”
4:编辑宏,插入宏代码用于删除当前页面并且插入保存的图文集。
5:当受害者打开文档时,显示的是一份“加密”的文档,即我们的语境,点击启用宏之后,当前的内容会被宏删除,并且插入自动图文集中保存的内容,即我们的简历。
6:在此基础上,加上载荷,并且隐藏powershell窗口。
7:打开文档,受害者启用宏,然后我们的C2就能接收到Shell了。
图中的宏是进行了免杀化处理的,但这不是我们现在要学习的,因此只是作为此效果展示。