事件响应中的OSINT实战(第二部分)
案件背景:新型银行抢劫案
某些案件总是比其他案件更有趣。当你以事件响应为生时,必须从工作中寻找乐趣。有时,在与客户初次通话后,你就想要接手这个案件——几乎愿意免费完成(虽然我们还没那么不擅长资本主义!),因为它充满诱惑、神秘和挑战。这就是其中之一。
客户是一家金融服务机构,在全美设有分支机构,受到高度监管,拥有高度隔离的技术和工作流程。他们从终端到边界都部署了深度防御安全解决方案,环境中实现了微隔离,具备广泛的审计和监控能力,所有涉及重大金融交易的工作流程都实现了职责分离。简而言之,他们检查了所有“网络安全最佳实践”的框框,甚至更多。但他们仍然遭到抢劫。
我相信所有金融服务机构都会因欺诈交易而遭受一定程度的损失。但FFSI银行(“虚构金融服务机构银行”,因为我就这么有创意)在最近几个月内,特定类型交易的欺诈活动显著增加。尽管他们管理严格,发现并阻止了大部分交易,但尽管进行了广泛的内部分析,仍未能识别或阻止源头。
在初次通话中,他们显然是一个非常聪明能干的团队,似乎对自己无法独立解决这个问题感到沮丧和有点尴尬。这可能是内部威胁,有多个内部合作者?可能是某种新的、极其隐蔽的恶意软件?是否可能他们的多层安全和隔离从外部被攻破?
这类合作中不有趣的部分是准备拟议的工作声明。“嘿,Derek,你觉得这要花多少小时?”Derek回答:“哦,大概在40到400小时之间。”没错。我的意思是,这些是聪明人,拥有一些相当酷的能力。要做得“更好”,我们需要更深入、更广泛地挖掘。但首先……OSINT。
我们回到客户那里,警告他们这可能会很昂贵,但建议先花几个小时进行一些外部分析,看看我们能从互联网上“看到”和学到什么。
根据“事件响应中的OSINT – 第一部分”,入侵通常是因为某些事情发生了变化,从错误配置到零日漏洞利用,再到最终用户行为,而攻击途径最常是互联网。如果互联网知道,威胁行为者(银行劫匪?)就知道,作为事件响应者,我们需要知道!
我有一个标准的5分钟OSINT for IR流程(见第一部分),我运行了它。我相当确定这不会那么容易,但这仍然是一个很好的起点,并产生了一些有用的信息,尽管没有确凿证据。
OSINT调查过程
许多OSINT工作是审查 intentionally “公开”的信息,如DNS记录,然后侦查出 tangential 或 inferred 数据。例如,如果FFSI有一个DNS“A”记录将名称“portal.ffsibank.com”映射到50.x.x.100,另一个将“support.ffsibank.com”映射到50.x.x.102,我们可以假设50.x.x.101很可能属于FFSI(当然需要验证)。如果我拉这条线,查找50.x.x.101,并找到映射到“dev.ffsibanking.com”的反向DNS记录,这略有不同(“bank” vs “banking”),但很明显相关,我现在有额外的域可以枚举!
可悲的是,在这个案例中,我拉了所有“IP地址和DNS/域”的线,但什么都没有解开。所以,我挠了挠头,思考如何“更深入、更广泛”,并 ponder 这个问题:“我能执行的最细粒度的搜索查询是什么,仍然能唯一识别客户?”我不能很好地搜索“F”或“FF”并获得有用的结果,但如果我基于“FFSI”或“FFSIB”或“ffsibank”进行OSINT搜索呢?
于是,我访问了 https://shodan.io,运行了这些查询,但一无所获。然后我访问了 https://leakix.net,并得到了一个有希望的“ffsibank”命中。抱歉图片被大量编辑,但它们 hopefully 仍然具有代表性!讽刺的是,下面的结果是一个实际的、相当近期的相关搜索词(‘visit_log.txt’ – 见下文)命中,针对一个完全不同的非虚构金融机构。
基于我的leakix.net结果,我突然有了多个额外的线索可以拉,包括一个新的IP地址、一个域名、一个服务提供商(Digital Ocean)、一个地理位置等。我先拉哪一条?老实说,我想浏览相关网站,但我想安全地、从一个不可归因的IP进行,因为如果可能的话,我不想向威胁行为者透露我的手牌。Browserling来救援!Browserling基本上是一个托管的、虚拟化的浏览器会话, primarily 设计用于网页测试和开发。你可以免费使用它,有一些限制,或支付非常合理的价格来扩展功能:www.browserling.com
我首先访问了裸URL“mail.redacted-pid.com”,在那里我纠结于是做我的个人银行业务还是试试数字老虎机的运气!抱歉 intentionally 模糊的截图,因为它实际上来自案件数据。
为什么一个柬埔寨赌博网站会有“ffsibank”的引用?而且这不应该是一个“邮件”服务器吗?情节变厚了!让我们看看是否能在“安全”浏览Browserling时找到“ffsibank”引用。
浏览网站内容揭示了一个“ffsibank”文件夹。该文件夹的内容结果是“FFSI”银行客户登录门户的高质量模仿。
确凿证据?是的,我想是的。但我们还没完!我们还能看到、学到、推断出什么?你认为这是唯一试图镜像“FFSI”银行客户门户的网站吗?
返回父目录,如上所述,注意“visit_log.txt”文件。我们想非常小心地访问网站上的内容,所以我们可以尝试通过Browserling进行,或者你可能有另一个授权机制来访问“可疑”网站,比如在隔离虚拟机上的curl或wget(命令行网页浏览器)(那完全是另一篇博客文章!)。在这个案例中,该文件确实只是一个文本文件,包含用户代理字符串(关于用于访问的浏览器的信息)和所有被欺骗访问上面“Index of”图像中文件夹的人的IP地址。一举两得,既是确凿证据又是金矿!
其他潜在恶意网站呢?让我们拉“证书”线,看看能找到什么!接下来,我访问了 https://search.censys.io 以利用其证书服务搜索功能。由于现代浏览器非常 aware of “不安全”网站或证书与域名不匹配,威胁行为者通常足够聪明地使用“https”和有效证书。毕竟,他们现在可以轻松免费做到。
在search.censys.io上,我将首先进行“证书”通配符搜索‘names: “ffsib*”’,然后,根据结果,我可能会深入到一个特定的免费证书服务提供商,例如“Let’s Encrypt”。
“bank”到底怎么拼?当我第一次执行通配符名称搜索时,大约返回了425+个结果,其中许多可能有效/合法。但我注意到一个模式,有三四个证书的“通用名称”(CN)中“bank”一词有轻微拼写错误(如上所示)。重新运行搜索并过滤证书服务提供商为“Let’s Encrypt”,很明显确实有更多伪造的恶意网站被用来针对“FFSI”银行客户。
结论与下一步
此时,我们准备向客户汇报,对他们的客户遭受的针对性攻击有了相当重要的洞察。我们还能够推导出高保真情报,以帮助识别现有恶意网站并监控新恶意网站,例如“ffsibank”目录、“visit_log.txt”文件、“Let’s Encrypt”关联证书等。我很高兴地报告,我们在远低于最初预测的“40到400”小时的时间范围内完成了所有这些。OSINT获胜!
如“OSINT for IR – 第一部分”所述,作为数字取证和事件响应顾问,很大程度上是关于未解答的问题。当我们与客户合作时,他们知道发生了或正在发生坏事,但他们不确定“如何、何时、何地以及为什么”。我们工作的一个重要组成部分是梳理出“已知的已知”、“已知的未知”,并有效且高效地帮助客户回答他们的问题。OSINT for IR 可能非常有价值,应该成为调查过程的一部分。
案件#3:元数据和通过域账户锁定的拒绝服务
在“OSINT for IR”的下一部分中,我们将继续我们的元数据侦查冒险,并解开一个企业范围的Active Directory账户锁定“拒绝服务”攻击。感谢阅读!
阅读:第一部分
务必在下周四,3/14,美国东部时间下午1点收听Patterson的网络直播: 揭秘Windows恶意软件调查与Patterson Cake 你可以在此注册!
准备好了解更多吗? 通过Antisyphon的实惠课程提升你的技能! Pay-Forward-What-You-Can培训 提供直播/虚拟和点播