什么是 OSINT?
OSINT是开源情报(Open-Source Intelligence)的缩写。它指的是从公开可获得的资源和数据中收集威胁情报。与某些需要权限并访问的机密信息不同,OSINT 的核心是开源,即尽可能利用可以合法获取的开源数据。这些数据包括互联网上的信息、公共记录、新闻文章、社交媒体平台、和一些免费商业数据源等等。
OSINT 被安全团队用来收集关于公司自身所面临的外部威胁 or 情报。它通过整合相关的公开数据来辅助安全专家描绘企业的数字足迹和攻击面。这就使得安全运营和分析师能够识别自身基础架构、应用等存在的潜在漏洞,这些漏洞可能会被攻击者利用。在网络安全中的 OSINT 常见用例包括外部威胁情报、攻击面映射、基础设施映射、识别网络漏洞等。
为什么需要在 SOC 中使用 OSINT?
一方面是付费的威胁情报源真不一定能满足企业对情报的需求,另一方面是安全团队也希望能通过开源情报工具来加强内部情报体系的建设。一般在安全运营中心(SOC)中使用 OSINT 工具和技术来能很大程度上加强企业的安全态势感知能力:
威胁情报——OSINT 可以辅助安全团队研究最新的入侵技术、新兴威胁、漏洞和利用手段等。
事件响应——在发生安全事件期间,OSINT 有助于快速收集有关可疑指标(如IP地址、域名、文件哈希等)的背景信息,这些指标可能与攻击有关,从而加速事件调查和响应的过程。
攻击面映射——通过使用 OSINT,可以发现自身暴露在外的系统、开放端口、使用的技术栈、子域和其他面向外部的资产等,通过攻击面映射可以绘制潜在的攻击面并减轻风险。
基础设施映射——OSINT 工具能方便地可视化企业内部在云提供商、域名、网络和服务中的整个在线基础设施足迹,尽量保证资产的整体可见性。
漏洞评估——在怀疑企业遭受攻击的情况下,OSINT 还能通过搜索暗网市场(虽然不一定有效)和其他公共来源中被出售的公司数据来评估本次攻击造成的影响。
总之,整合 OSINT 可以为 SOC 提供更丰富的上下文、可见性和洞察力,使其能够更好地准备、检测、响应和恢复。
使用 OSINT 工具时试图收集什么信息
对于 SOC 的运营团队来说,实际上大部分工作都在监控和调查可疑的安全事件和事故。安全运营们总是在寻找关于新恶意软件、漏洞、攻击活动、安全更新等的威胁情报和信息。但是吧,OSINT 这类工具来只能收集公开可用的数据并生成相应的情报,它不能用于"窃取"隐藏的某些数据,如下:
威胁情报——新的黑客工具、恶意软件活动、正在被大范围积极利用的漏洞、攻击者基础设施及其战术、技术和程序(TTPs)等技术细节。
域名信息——WHOIS记录、DNS配置、子域名、邮件服务器和其他与公共域名和资产相关等。
网络信息——外部基础设施的信息,如IP地址范围、开放端口、连接互联网的设备、运行的服务等。
资产信息——公共资产的具体情况,如存储桶、数据库、代码库和数据存储等。
员工信息——员工在社交媒体和专业平台上暴露的与他们自己、内部系统、公司数据相关的信息。
泄露数据——监控各种公共数据泄露网站、论坛 OR 市场,搜索查询与公司自身相关数据被出售的情况。
通过 OSINT 类工具想达成的目标是:通过合法和道德的手段收集上述外部情报;分析这些数据使企业自身能够持续评估风险、调整控制措施,并在动态威胁环境中改进整体安全态势。
在SOC中使用的 OSINT 工具
在上家公司中我们团队使用了一系列付费和免费的 OSINT 工具来收集、分析和可视化安全情报。虽然每个工具都有其特定的优势和局限性,但综合使用这些工具,可以实现持续监控、全方位的可见性,并在快速变化的威胁环境中做出决策。这里面的 OSINT 工具大概有这些:
Recon-ng
用Python编写的高拓展性开源侦察框架,可以利用 Recon-ng 访问 API 和公共数据源来收集关于域名、公司和某些个人的情报。
优点:
免费开源
安装和使用方便
通过模块高度可定制
可以覆盖很多API和数据源
适用于收集威胁情报
缺点:
只有命令行
比较高级的工作流程需要脚本编写
Recon-ng 这个工具还可以,我就是用它自动化从各种公共资源和 API 收集数据。它有交互式解释器,可以很方便的配置模块和执行一些命令。这框架包含几十个内置模块,适用于常见的侦察活动,如解析域名、查找子域、获取WHOIS记录等。
但我认为 Recon-ng 的优势是开发自定义模块,安全运营可以创建适合特定数据收集需求的模块,并集成专有数据源。利用 Recon-ng 的这个特性能实现针对性目标,如收集关于威胁行为者、被crack的凭证、易受攻击的系统等情报。它将结果输出到 db,可以过滤、分析、关联。
Maltego
Maltego 专注于图形分析,用于收集和连接互联网上的公开信息。可以利用 Maltego 的可视化功能进行临时研究和调查。
优点:
强大的可视化链接分析
集成在线数据源
Case 管理功能
缺点:
贵(可能不是它的问题
扩展性不太好
Maltego 的套路大概是这样:
从短语、名字、网站、域名等种子数据点入手,将它们转换成网络图,展示实体之间的连接和关系。这使得理解复杂的现实世界互联关系变得比查看数据表格更加轻松。
安全运营可以通过点击可视化图表,快速收集威胁情报。例如,从一个可疑的IP地址开始,分析师可以通过所有者、连接的主机、使用的技术、地理关联和相关泄漏信息等,逐步揭示隐藏的威胁。案件管理功能允许协作调查事件。
Maltego 与其他安全工具集成不错,可以实现无缝工作流。它有基于云的服务,比较适合全球分布式团队。
URL Scan
URL Scan 是一款非常有价值的免费在线服务,我们在 SOC 中使用它来分析和扫描网站以发现潜在威胁,它能够安全地渲染提交的页面并提取有用的安全洞见。
优点:
免费
快速分析页面内容
可以和流行的工具集成
缺点:
自定义选项很少
动态加载的内容是扫不到的
需要手动分析
URL Scan 会接受输入的 URL,并在一个隔离的沙箱环境中渲染页面以研究其行为。这使我们的安全运营者能够看到加载的内容,而不会直接暴露我们自身的资产。
它可以提取很多有用的元数据,如 cookie、加载的资源、跟随重定向、执行的脚本等,提供网站在访问时试图进行的活动的可见性;URL Scan还基于服务指纹和常见模式检测一些已知的威胁漏洞。
URL Scan 这个工具比较厉害,它对于快速初步分析可疑网站、域名和页面非常方便,分析者还可以共享报告,提供额外的上下文和取证快照,以便与其他团队协作。
虽然相比其他工具,自动化、自定义和数据保留方面有所限制,但 URL Scan 的简单、免费和比较靠谱的网站安全洞见使它成为开源情报分析能力中不可或缺的一部分。
SpiderFoot
SpiderFoot是一款开源情报自动化工具,集成了200多个模块,从各种公共数据源中收集情报。一般利用 SpiderFoot 对域名、网络块、电子邮件、姓名等进行分析 OR 侦察。
优点:
免费、开源
高度自动化的数据收集
适用于威胁狩猎
集成数据源
还提供云服务
缺点:
数据流程复杂
可扩展性有限
SpiderFoot 通过输入 IP 地址、域名、电子邮件等种子数据,自动查询100多个公共数据源,如搜索引擎、Pastebin、WHOIS记录、卫星地图等,以绘制关联的实体。这有助于揭示相关的基础设施、技术、文档、泄漏等,几乎不需要手动操作。
安全运营可以选择涵盖威胁、网络、位置等的预构建模块和数据源,结果存储在本地数据库中,方便筛选和分析。它的 Web UI 还能管理扫描和查看结果。但尽管这工具的工作流程对初学者来说比较复杂,但 SpiderFoot 拥有相对广泛的数据源、自动化能力和战术集成使其成为现代 SOC 外部情报收集工具包中的重要环节,既适用于威胁狩猎,也能加速事件响应。
FOCA
FOCA(Fingerprinting Organizations)是通过提取公共文档和文件中的元数据和隐藏信息来揭示公司的数字足迹,在实际运营时,一般利用 FOCA 从 PDF 和 DOCX 等文档中收集情报。
优点:
从文档中自动提取数据
处理多种文件类型
适用于调查
免费开源工具
缺点:
仅支持Windows
信息太分散了
FOCA 允许上传在侦察过程中收集到的潜在敏感文档,如各种 Word、PPT 和 Excel等。它可以提取文件中嵌入的所有元数据、作者信息、哈希值、URL、电子邮件等。
Shodan
Shodan是一款开源情报搜索引擎(类似钟馗之眼 Zoomeye),聚合了互联网上连接设备和系统的情报。我们经常利用 Shodan 收集有关IP、域名、技术、漏洞等的信息。
优点:
极其有用的情报来源
与其他工具集成能力很优秀
过滤和摘要功能
免费(但有限
缺点:
付费计划太贵
查询语法在前期看有点复杂
结果不一定准确,还是要专家亲自分析一下才行
Shodan 通过持续扫描和记录公共系统的信息,提供全球互联网连接资产的全局视图。这包括开放端口、服务、技术、物理设备等详细信息。
团队内的运营和分析师之类都可以使用它做有针对性的查询,例如易受攻击的软件版本、未打补丁的系统、配置错误的服务、暴露的特权账户等。它还提供有关所有者、位置、漏洞等的有用摘要和元数据。
在实际的威胁狩猎和调查过程中,我们发现 Shodan 对可疑IP、域名和系统的初步侦察非常有帮助,可以协助我们团队快速评估相关的弱点,并转向其他情报来源。
theHarvester
theHarvester是一款便捷的开源情报工具,从数百个公共来源收集电子邮件、姓名、子域、IP、URL等信息。我们利用 theHarvester 自动化初步外部侦察。
优点:
结果比较可靠
兼容Linux和Windows
公共源覆盖广
缺点:
配置数据源较复杂
缺乏自定义功能
theHarvester 通过分析指定域名、公司或关键字,自动扫描搜索引擎、DNS 记录、WHOIS 数据库、PGP 存储库、甚至招聘网站等,检索相关的电子邮件地址、主机、员工姓名和其他初步情报,从而简化早期侦察。
虽然 theHarvester 初期需要用户熟悉命令行界面,并且缺乏本地可视化功能,但其简单性、可靠性和广泛的公共来源覆盖,使其成为许多 SOC OSINT 收集工作流程中的必备工具。
Google Dorks
谷歌是全世界最大的搜索引擎,人们可以通过它找到很多信息。同样,黑客也可以利用它来找到一些有漏洞的网站、数据库、监控摄像头、物联网设备,只需要使用一些特别的查询语句就可以找到这些信息,这些语句被称为 Google Dorks。
优点:
免费使用的公共搜索
揭示无价的洞见
数据覆盖面广
缺点:
受 Google 使用限制
可能出现误报
学习曲线较高
需要手动验证
Google Dorks 通过搜索语法、操作符和设置,利用Google庞大的索引数据进行安全侦察,我们可以通过串联 Dorks 来全面扫描表面网页,并找到一些暴露的文档、凭证、敏感流程等。
例如,可以通过不小心对外公开的登录门户、备份文件、服务器手册等找到企业易受攻击的系统;还可能查找到暴露的员工凭证、缓存中的数据、代码库、粗心上传等。
OSINT Framework
OSINT Framework 属于无价的公共资源,提供了一个集中目录,方便分类列出了 OSINT 工具和来源。它在开发时组织了超过450个OSINT工具,涵盖网络、电子邮件、用户名、文档、图像、位置等类别。通过在公共平台上进行结构化知识共享,像OSINT Framework这样的资源支持了开源情报技艺的进步。
Trape
Trape是一款开源人员跟踪工具,能够隐秘地跟踪目标的网络浏览活动并聚合留下的追踪信息。
优点:
有助于威胁画像
部署简单
轻量级
集成数据源
缺点:
实用性比较有限
操作需要定制化
Trape 通过利用网站会话标识符和非通道浏览器指纹,允许安全运营隐秘地跟踪指定用户的网络活动。当目标在不知情的情况下浏览互联网时,Trape 能默默地观察页面访问、设备类型、位置等,建立详细的用户行为档案。
虽然表面上是分析公开活动,但对于这种对抗性跟踪,尤其是现在的隐私法规限制条件下,还是比较危险的...
TweetDeck
TweetDeck是一款可定制的社交媒体仪表板,用于汇总来自Twitter、Facebook、Instagram等平台的实时流。SOC 利用 TweetDeck 监控相关的威胁、活动和事件。
优点:
专业的实时监控
跨平台内容聚合
方便的集成和过滤
缺点:
需要手动筛选
需要验证准确性
TweetDeck 允许创建可定制的 feeds 和警报,针对社交网络上的组织利益进行调优,可以做到在一个大页面上关注威胁行为者、漏洞讨论、品牌威胁、泄漏等。关键词警报、地理标签和用户过滤器还有助于从海量无效信息中筛选有效信息。然而,鉴于可能存在虚假信息和嘴炮侠,我们还是需要谨慎验证社交媒体上内容的可信度。
谁还能使用这些OSINT工具?
虽然我们在安全运营中心(SOC)的背景下讨论了OSINT工具,但这些技术和工具在多个领域有广泛应用。例如,渗透测试员和专门做漏洞赏金的分析师可以收集公共情报,以帮助他们优先测试暴露的技术和漏洞。威胁分析师可以研究最新的黑客技术、攻击活动和易受攻击的软件版本,以提高威胁检测能力。事件响应人员可以迅速利用IP地址或文件哈希等指标来确定安全妥协的范围。安全研究人员可以监控黑客论坛和代码泄漏,以了解对手的战术。商业分析师可以监控竞争对手的技术变化和产品路线图,为内部利益相关者提供建议。
使用这些工具不必局限于安全领域。由于这些是开源工具,任何人都可以使用这些开放源情报资源。OSINT工具具有多种用途,可以被各类个人和组织使用。
最后
没有任何公司能仅依靠内部和自身完成情报收集和体系建设,外部的公共数据蕴含着大量线索,随着恶意行为者越来越多地利用 OSINT 来针对受害者,作为防御者,企业安全建设团队和安全运营重心必须通过更好的开放数据能力来创新。
最后的最后,我想说在使用这些工具时,必须确保合法、合规,特别是在大型公司更要注意这一点。