Microsoft Access Macro (.MAM) 快捷方式钓鱼测试

去年,我曾发表过一篇关于创建恶意.ACCDE(Microsoft Access数据库)文件,并将其作为攻击向量进行网络钓鱼的文章。作为扩展,本文将为大家引入一种新的钓鱼方案Microsoft Access Macro“MAM”快捷方式钓鱼。MAM文件是一个直接链接到Microsoft Access Macro的快捷方式(从Office 97开始)。

创建一个MAM文件

我们先来创建一个可以弹出本地计算机的,简单Microsoft Access数据库来练练手。首先,我们打开MS Access并创建一个空数据库。如下:

接着,找到Create ribbon并选择Module。这将为我们打开Microsoft Visual Basic for Applications design editor。

在Microsoft Access中,我们的module将包含我们的代码库,而macro将会使Access执行VB代码。

以下是我编写的一个简单的计算机弹出代码:

请注意这里我是如何将Function调用添加到此代码中的。当我们创建宏时,它将寻找function调用而不是sub。

现在,我们保存模块并退出代码编辑器。

模块保存后,我们可以创建宏来调用模块。打开Create ribbon并选择“macro”。 使用下拉框选择“Run Code”并指向你的宏函数。

接下来,我们点击“Run”菜单选项来测试宏,Access将提示你保存宏。如果你希望在打开文档时自动运行宏,请务必将宏保存为Autoexec。

保存项目,我们以.accdb格式保存,以便后续对该项目的修改操作。

然后,我们将再次保存我们的项目。这一次,我们选择Make ACCDE选项。这将为我们创建数据库的“execute only”版本。

我们可以将ACCDE作为钓鱼时的payload添加至邮件或链接当中。我们可以创建MAM快捷方式,它将远程链接到我们的ACCDE文件并通过网络运行其中的内容。

确保ACCDE文件已打开,单击鼠标左键并将宏拖到桌面上。这将为我们创建一个可以修改的初始.MAM文件。用你喜欢的编辑器或记事本打开它,看看我们有什么需要修改的地方。

正如你所看到的,快捷方式的属性并不多。唯一需要我们更改的就是DatabasePath变量,指定我们远程托管地址路径。我们可以通过SMB或Web托管ACCDE文件。通过SMB托管可以实现双重目的,捕获凭据以及允许端口445离开目标网络。在本文中,我将通过http演示如何做到这一点。

钓鱼

在远程主机上,使用首选的Web托管方法提供ACCDE文件。

编辑.MAM文件以指向Web服务器上托管的ACCDE文件。

现在我们的任务是将MAM payload传送给我们的目标。一些提供商默认阻止MAM文件和Outlook,因此在这种情况下,我们会向目标发送钓鱼链接,并且只会在我们的web服务器上托管我们的MAM文件,或者你也可以使用Apache mod_rewrite进行一些重定向操作。

一旦目标用户点击了我们的钓鱼链接(在使用Edge浏览器的情况下),系统将会提示他们打开或保存文件。

接着,系统会再次向用户弹出安全警告提示框。

最后,系统还会警告一次,并将向用户显示远程托管主机的IP或域名(希望会有说服力)。而在此之后将不会出现任何的安全警告,以及阻止此macro payload运行的情况。

用户单击“ Open”后,我们的代码就会被执行。

虽然这当中出现了好几次的安全提示,但对于毫无戒心的不知情用户而言,也很容易成功。此外,我们还可以结合一些社会工程学的技巧,以达到我们的最终目的。

OPSEC

在渗透测试的收尾阶段,我们不能忘的一件事就是擦干净可能遗留在目标系统上的痕迹。那么针对我们的这个payload在系统执行后,又会留下些什么蛛丝马迹呢?让我们通过procmon一探究竟。

第一个值得我们注意的条目是“CreateFile”调用,它执行上图所示命令。查找用于命令行审计的“ShellOpenMacro”字符串。

接下来,我们来观察下从本地计算机保存并被执行的远程ACCDE文件。虽然看起来好像我们的payload是远程调用的,但它却被下载到了“%APPDATA%\Local\Microsoft\Windows\INetCache\Content.MSO\95E62AFE.accde\PopCalc.accde”中。因此,一定要格外注意对该文件的清理。

缓解措施

在Microsoft Office 2016中,你可以启用GPO以阻止来自网络中的宏执行或为每个办公产品设置以下注册表项。

Computer\HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Access\Security\blockcontentexecutionfrominternet = 1

如果用户进行了此项设置后,钓鱼程序将会被拒绝执行。需要注意的是,即使宏被阻止了,MAM文件仍会向外pull down Access文件。所以,目标用户仍将会知道你是通过smb接收执行或窃取凭据的。

总结

本文我向大家展示了,如何使用Microsoft Access Macro快捷方式进行钓鱼的方法和步骤,以及后续痕迹的查找和清除还有缓解措施。希望通过这篇文章,能为你提供一个好的钓鱼思路,以及提高你们的安全防范意识。

*参考来源:specterops, FB小编secist编译,转载请注明来自FreeBuf.COM

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2018-07-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏维C果糖

详述 IntelliJ IDEA 创建 Maven 项目及设置 java 源目录的方法

Maven 是一个优秀的项目管理工具,它为我们提供了一个构建完整的生命周期框架。现在,就让我们一起看看如何利用 IntelliJ IDEA 快速的创建 Mave...

95090
来自专栏云计算教程系列

如何在Ubuntu 16.04上使用Distillery和edeliver自动化Elixir-Phoenix部署

Elixir构建于Erlang编程语言之上,是一种功能性编程语言,因其专注于开发人员的工作效率以及因为编写高度并发和可伸缩的应用程序而易于使用而闻名。

20100
来自专栏惨绿少年

企业架构规划及服务器优化参数

第1章 企业架构规划 1.1 架构图 ? 1.1.1 用户访问网站组成 类型 作用 实现方式 顾客-用户 访问网站的人员 ...

34800
来自专栏Java后端技术栈

Nginx初探

Nginx——Ngine X,是一款自由的、开源的、高性能HTTP服务器和反向代理服务器;也是一个IMAP、POP3、SMTP代理服务器;也就是说Nginx本身...

13130
来自专栏小狼的世界

让Mac风扇面对PD不再疯狂

对于所有喜欢Mac操作系统的用户来说,如果办公环境必须使用Windows及Windows程序,那一定会非常崩溃,因为你很可能使用了Parallels Deskt...

23520
来自专栏漏斗社区

FineCMS 漏洞不仅皮囊好看,灵魂更有趣

0x00 背景 最近在挖掘FineCMS源码的漏洞,发现了一些有趣的洞,斗哥计划先从配置文件写入开始分析,然后再结合存储XSS进行GetShell,本篇先分析配...

416120
来自专栏用户2442861的专栏

Nginx初探

http://blog.csdn.net/xlgen157387/article/details/49781487

15030
来自专栏Java职业技术分享

Java程序员必备的Intellij插件

支持lombok的各种注解,从此不用写getter setter这些 可以把注解还原为原本的java代码 非常方便

19100
来自专栏bboysoul

介绍一款facebook信息收集工具FBI

作为一个工具党,收集一些工具肯定是少不了的,今天介绍的是一款facebook的信息收集工具叫fbi,虽然对国内用户用处不大,哈哈

15020
来自专栏腾讯DevOps

5分钟入门git模式开发

目前项目已逐步从svn移步到git开发模式,其中也针对git统一协议了适合git的开发规范, 最重要一点就是分支模型的,为了规范开发,不直接在主干上修改代码,一...

7.5K30

扫码关注云+社区

领取腾讯云代金券