攻防实战|一次社工钓鱼全过程

admin 2024年8月5日16:16:14评论89 views字数 2458阅读8分11秒阅读模式

0x00 前言

在无法使用传统攻击手段突破目标系统的情况下,社会工程学的钓鱼攻击无疑是其中最佳的选择之一。作为一个刚入门的钓鱼攻击者,我对钓鱼攻击的经验也很有限,同时在制作免杀马和捆绑方面还有很大的提升空间。本文重点在于社工构思以及场景的构建,故不会过多描述免杀技术的细节(由于保护敏感信息的需要,所有数据已经脱敏,部分截图也可能不完整,请谅解)

0x01 免杀处理

现在的免杀技术确实有很多选择,其中常见的一种是使用分离加载的方法。在这里,我选择使用C++编写的加载器,并使用MSF作为C2。(当时我的马儿只能过火绒和360 捂脸)我就大概讲下实现的原理,很常规的操作:

  1. 使用msf生成原始格式的shellcode

  2. shellcode进行加密,以确保其不易被杀软检测。

  3. 将加密后的shellcode嵌入到一张图片中,生成一个木马图片。

  4. 将木马图片上传至HVV提供的VPS中并启一个可对外访问的服务,以便被害者能够访问并下载。

  5. 诱导被害者点击加载器,加载器会自动下载VPS上的木马图片。

  6. 加载器会解密木马图片中的shellcode,并将解密后的shellcode注入到内存中,从而实现上线。

这种方法的优点是利用了常见的图片格式作为载体,使得木马更不易被杀软检测。同时,加密和解密的过程增加了执行过程的隐蔽性,提高了免杀能力。

注:在MSF生成shellcode时,可以添加一些参数来进行混淆。在编写shellcode加载器时,尽量选择一些冷门的Windows API,以增加隐匿性。

0x02 社工构思

(PS:以下简历名称是与被害者沟通后专项制作的。由于懒,没有提供测试时的截图,请谅解。)

在深入研究私有资源池的目标后,我最终锁定了一个地方性的综合网站。这个网站包含了该地区的论坛、装修、买车、二手房、招聘等多个模块。我选择这个网站的原因是它拥有招聘模块,这对于进行钓鱼攻击来说非常合适。我意识到通过投递简历的环节进行钓鱼是一个非常合理的策略。

然而,一个关键问题是如何让受害者在没有察觉到安全隐患的情况下下意识地点击木马链接,从而使其上线。作为一个没有钓鱼佬并且身边也没有专家的新手,我不得不通过在各大论坛中寻找答案来解决这个问题。最终,我选定了压缩捆绑这种方法。

压缩捆绑的基本原理是制作一个看似合法的简历文件,并将加载器与其捆绑在一起。这样,当受害者下载并解压缩文件时,他们很可能会下意识地点击并查看简历,从而执行加载器。

这种方法的优点在于利用了人们常见的行为习惯,即下载和解压缩文件,以及应聘者常见的操作,即查看简历。通过伪装成一个合法的简历文件,我可以引导受害者在没有怀疑的情况下点击并查看其内容,从而执行加载器。

压缩捆绑的步骤是先制作一张简历与shellcode加载器

攻防实战|一次社工钓鱼全过程

然后同时选中点击加压,然后再加压界面选中创建自解压格式压缩文件

攻防实战|一次社工钓鱼全过程

然后选中高级 -> 自解压选项

攻防实战|一次社工钓鱼全过程

在设置中的提取后运行这里将加载器名称写进去

攻防实战|一次社工钓鱼全过程

选中模式->静默模式 ->全部隐藏

攻防实战|一次社工钓鱼全过程

加压后,最终得到以下文件

但是,生成的文件为exe,这我耍小聪明使用了Unicode RTLO方法构建恶意文件名,在本地实验是能双击成功上线的

攻防实战|一次社工钓鱼全过程

问题是经过微信传递的时候会显示该文件为EXE,并且下载后Unicode RTLO方法构建恶意的文件名会被打乱顺序

攻防实战|一次社工钓鱼全过程

这个该如何是好呢,时间也来不及去研究如何绕过微信的检测机制啊。。。

也试过在VPS上启一个服务让HR去服务器上下载,但是这可行吗?

后来我只想到一个办法,就是在exe捆绑马的外面再加一层压缩文件,这样可以让HR觉得更合理。他们解压了一层,还没得到简历,需要再次双击打开,这样操作起来更加合理。为了保护个人隐私,我还设置了密码。

攻防实战|一次社工钓鱼全过程

所以现在的流程就是:发送木马简历给HR -> HR从微信接受木马简历 -> HR解压后得到加密的简历(其实是捆绑器) -> 加密的简历解码后 ->触发加载器 -> 上线到我控制端 -> HR得到简历文件

这样,一切准备就绪,等待鱼儿上钩了

0x03 垂钓开始

然后当我点击简历投递的时候,发现该网站不支持自己编写的简历,只能从网站上进行编写。。。正当我百愁莫展的时候,看到该网站主页有客服二维码,于是抱着试一试的心态通过微信加上了客服好从微信下手,可能是企业微信的原因吧加了一段时间后别人都没鸟我

攻防实战|一次社工钓鱼全过程

于是躺平了一天后我继续寻找猎物。第二天中午,我在目标网站的招聘模块顶部发现了一个微小的二维码。我立即扫描添加,并在下午成功通过了微信验证。这让我心中升起一股胜利的喜悦,毕竟这是钓鱼中的一次重要进展。

我迅速向目标发送了一条消息,期待着对方的回应。没想到的是,对方竟然很快回复了!

攻防实战|一次社工钓鱼全过程

接着开始制作上一步中的简历,制作好设置解压密码后便将加载器与简历进行打包,然后最后再本地测试一下,双击输入密码上线成功。自我祈祷一下然后将“简历”发给客服

攻防实战|一次社工钓鱼全过程

0x04 收杆

接下来,我就忐忑不安地等待着,盯着监控端,希望能看到新的会话上线。然而,时间一分一秒过去,已经过去了两个小时,却还没有看到任何会话上线。

我开始思考,是不是在某个环节出了错误,或者我的免杀马被发现了,或者还有其他问题发生了...

当我主动发送了一条消息后,我发现监控端终于出现了一个会话上线的提示。我确认了一下,果然是客服解压了我发送的文件并上线了。于是,我开始了愉快的信息收集之旅。

攻防实战|一次社工钓鱼全过程

攻防实战|一次社工钓鱼全过程

0x05 经验与总结

在进行社工时,最重要的是准确判断出关键人物。本次钓鱼行动失败的原因是在后续信息收集中发现目标使用的是个人PC。

在进行钓鱼行动时,最好能广撒网,但对于专项钓鱼,务必在执行社工等操作之前确定对方的身份。

我之后会扩充其他的捆绑技术和word宏木马等。因为我所使用的捆绑木马在解压后会一直停留在文件夹中,没有找到合适的位置隐藏起来,这显得比较明显。此外,在上线后,我还需要立即执行进程迁移,以防对方在任务管理器中直接终止我的shellcode,否则我们的行动就会失败。


原文链接:https://www.freebuf.com/articles/web/373168.html

原文始发于微信公众号(LK安全):攻防实战|一次社工钓鱼全过程

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月5日16:16:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   攻防实战|一次社工钓鱼全过程http://cn-sec.com/archives/2016960.html

发表评论

匿名网友 填写信息