蜜罐是什么?为啥某些行业注重蜜罐?蜜罐的效费比高吗?蜜罐真的是未来的主流吗?安全运营对蜜罐什么态度?这些问题一直困扰着当时攻防演练结束后的笔者。多年笔者立下了flag要讲明白什么是蜜罐,蜜罐有什么用,蜜罐的定位,企业环境下蜜罐的规划;犹记当时鲜衣怒马,流觞赋曲,何其自傲!经过雨打风吹,才知天外有天,今日文章(参考图一),一为笔者兑现诺言,二为抛砖引玉,降低以后其他关于蜜罐文章的阅读门槛。
图一
那么,蜜罐是什么呢?答:蜜罐是一种网络陷阱或诱饵(图二),其设计看起来像是系统、网络或其他数字环境的合法部分。蜜罐用于引诱攻击者远离真正的企业资产,蜜罐可以根据软件、服务器基础设施甚至整个网络进行建模,以使攻击者错误的认为这是企业资产。用通俗的话讲,蜜罐就是虚假的企业资产,在通过创建漏洞,引诱攻击者使用漏洞进行黑客攻击。
图二
蜜罐是发现企业系统漏洞的好帮手(例如:蜜罐不仅可以显示对物联网设备的攻击所造成的高度威胁,还可以提出改进安全性的方法)。使用蜜罐有如下几个优点:蜜罐获得的流量都是非法的,因此记录的事件都可能是探测或入侵尝试。这使得发现攻击的特征变得更加的容易(例如:用于进行网络扫描的相似IP地址或全部来自一个国家/地区的IP地址)相比之下,其他安全设备时刻产生大量的可疑流量,蜜罐可以更好的帮助企业SOC的监测和研判。使用蜜罐安全性也是一大优点,蜜罐当中的恶意地址可以作为企业IOC的参考指标,从而更容易识别恶意攻击。一个好的、配置合理的蜜罐会欺骗攻击者,让攻击者相信自己已获得真实系统的访问权限。攻击者会获得具有与真实系统相同的登录警告消息、相同的数据字段甚至相同的外观和配置策略。但是,如果攻击者成功将其识别为蜜罐,攻击者就会转而攻击企业的其他系统,避免与蜜罐接触的同时,攻击者会提供错误的信息给蜜罐。攻击者还可能会使用蜜罐作为进入系统的一种方式,这就是蜜罐永远不能取代防火墙和其他入侵检测系统等足够安全的控制措施的原因。由于蜜罐可以用作进一步入侵的踏板,因此请确保所有蜜罐都得到良好保护。
蜜罐的种类有哪些呢?答:如下图三所示
图三
电子邮件蜜罐:电子邮件蜜罐使用欺骗性电子邮件地址,只能使用自动地址收集器等可疑方法才能检测到该地址,这意味着合法用户无法找到该地址。因此,发送到该地址的所有邮件都会被归类为垃圾邮件,并且这些电子邮件的发件人会立即被网络阻止。这有助于互联网服务提供商阻止垃圾邮件
数据库蜜罐:组织经常创建包含虚假内容的诱饵数据库,以识别和消除系统漏洞。数据蜜罐可以收集有关SQL 注入和黑客用来访问虚假数据库的其他方法的信息,它们还可以用于分析攻击中窃取的虚假数据的传播和使用。
恶意软件蜜罐:恶意软件蜜罐是一种旨在通过模仿软件应用程序或 API 来吸引恶意软件的技术,创建一个受控环境,让创建者可以安全地分析恶意软件攻击。然后,该信息可用于构建更复杂的恶意软件防御措施
蜘蛛蜜罐:网络爬虫或“蜘蛛”是此类蜜罐陷阱的预期目标。蜘蛛蜜罐创建只能由自动网络爬虫或机器人访问的网页和链接,使组织能够深入了解它们的运作方式以及它们可能导致的任何潜在问题
客户端蜜罐:传统的蜜罐是被动等待攻击的服务器蜜罐。但客户端蜜罐(或计算机蜜罐)是主动安全机制,寻找发起攻击的服务器。客户端蜜罐模拟客户端设备,与服务器交互,并调查是否发生了攻击。
其实蜜罐的分类方式有很多按照学术的标准分为:生产蜜罐\研究蜜罐;按照按交互级别划分,蜜网和其他形式的蜜罐安全可以根据三个不同的交互级别进一步分为:纯蜜罐、高交互蜜罐、低交互蜜罐......(如图四、图五所示)
生产蜜罐:被大型组织用作主动防御的诱饵,引导黑客远离主网络。组织使用从这种“受控”黑客行为中收集的数据来消除其防御中的任何弱点,并更好地保护其真实网络免受黑客攻击
研究蜜罐:是复杂的陷阱,通常由政府或大型网络安全组织用来跟踪高级持续威胁的发展并掌握不断发展的黑客技术
图四
纯蜜罐:最复杂且维护起来最具挑战性的综合操作系统。纯蜜罐配备模拟敏感文档和用户数据,向潜在入侵者呈现最真实的外观
高交互蜜罐:复杂的蜜罐允许黑客在基础设施内自由活动,为分析师提供有关网络犯罪分子活动的最多数据。高交互蜜罐需要更多维护,并且可能带来更高风险
低交互蜜罐:这些诱饵不是模仿整个系统,而是代表公司系统和服务中对黑客最有吸引力的部分。因此,它们提供的有关攻击者的信息更加有限,但可以使用TCP/IP 协议更轻松地进行设置
图五
蜜币是蜜罐的一个子集,其设计与合法的凭证或秘密泄露的密钥有关(如图六)。当攻击者利用蜜币的时候,会立即触发相应的警告。这使得企业SOC能够根据告警讯息(例如:IP地址(用于区分内部和外部来源)、时间戳、用户代理、以及在 honeytoken操作的日志)迅速采取行动。对于蜜币来说,诱饵就是凭证。当企业遭到入侵时,攻击者通常会寻找薄弱的企业资产进行横向移动、提权操作或窃取敏感数据。在这种情况下,API密钥等编程凭证是理想的入侵目标,原因是密钥具有可识别的权限,并且通常包含对攻击者有用的企业信息。因此,它们是攻击者在违规期间搜索和利用的主要目标,也是防御者最容易传播的诱饵。
企业SOC通过在多个位置传播蜜币(例如:托管在云资产、内部服务器、第三方SaaS工具以及工作站或文件上),企业安全运营团队可以在几分钟内检测到漏洞,从而增强软件交付管道的安全性,防止潜在的入侵。蜜币的简单性是一个显着的优势,企业可以轻松地在企业范围内创建、部署和管理蜜币,同时保护数千个代码存储库,从而达成在入侵检测方面"左移"的需求。运营人员创建蜜币并将其放置在代码存储库和软件供应链中。当在代码中放置honeytoken时,利用GitGuardian可以确定它们是否已在公共 GitHub 上泄漏以及泄漏位置,从而显着减少安全告警。
图六
面包屑(Breadcrumb)是蜜罐的"变种",针对闯入企业员工PC的情况,攻击者通常会转到注册表和浏览器历史记录,以查看该用户在何处查找内部服务器,打印机和其他设备。面包屑的作用就是模仿这些设备的诱饵的地址。常见的面包屑的用法(图七)是将这些诱饵的地址放在最终用户设备上。如果设备受到威胁,攻击者可能会跟随面包屑进入诱饵,从而警告企业运营人员已发生入侵。随着软件行业的不断发展,让企业低成本获得安全防护是未来的发展趋势。Honeytokens提供了一种主动且简单的解决方案,可以尽快检测软件供应链中的入侵。可以帮助企业保护其系统,无论其堆栈或使用的工具有多复杂(源代码控制管理 (SCM) 系统、持续集成、持续部署 (CI/CD) 管道和软件工件注册表等)。
图七
蜜网由网络上的两个或多个蜜罐组成(如图八)。拥有一个互连的蜜罐网络对于溯源有着巨大的优势。蜜网使得企业能够时时跟踪攻击者与一个资源或网络点交互的过程,还可以监视入侵者如何在网络上的点之间移动以及同时与多个点交互的状态。目标是让攻击者相信他们已经成功突破了网络,因此拥有更多虚假网络目的地可以使设置更有说服力。
图八
蜜罐又是如何工作的呢?答:蜜罐通过诱饵引诱攻击者,就像蜂蜜会吸引熊一样。在网络安全领域,蜜罐是旨在诱导攻击者攻击的虚假数字资产或环境(这些资产看上去和合法计算机系统一样运行的软件应用程序和数据没有什么不同), 蜜罐通常包含一个不太明显的安全漏洞,但足够合理,以至于许多攻击者错误的认为真实的企业资产。这会诱导攻击者远离受到更好保护的真实系统。网络安全人员可以监控所有未经授权的蜜罐流量,并在可控环境中了解攻击者的策略,同时保持企业网络的安全。在设置蜜罐时,可将其装扮成对不同类型的攻击者来说是必要的目标或者是唾手可得的目标,蜜罐通常还会被植入易于跟踪的数据,使运营人员能够实时的监控数据泄露,并监控整个攻击流程。
蜜罐在笔者看来最的基本用途就是提高攻击者的攻击门槛(成本可控),攻击者在蜜罐上浪费精力的时间越多,攻击者用来入侵实时系统并对企业资产造成实际损害的时间就越少。蜜罐同时也能够提供有关攻击路径如何演变的可靠情报,同时提供有关攻击资产、漏洞利用和恶意软件的信息;蜜罐有助于确定新出现的威胁和入侵,企业SOC可以充分利用蜜罐有利于消除安全盲点。由于,攻防演练的普及,部分企业对蜜罐的溯源能力比较看重,这就是业务需求导致的变化吧。在国内蜜罐的存在和溯源密切相关,各大厂商的产品不提一句无感溯源,那就是对不起自己家的产品,但是企业需要蜜罐干什么?这企业SOC的目标契合吗?笔者不敢苟同。我们站在企业安全视角下审视蜜罐糖度问题,糖度也可以作为欺骗技术的衡量指标,欺骗技术可以有效检测恶意活动的主动安全防御方法;一方面,这种策略构建了一个虚假信息和模拟环境来误导对手的判断,使毫无戒心的攻击者陷入陷阱,浪费时间和精力,增加了入侵的复杂性和不确定性;另一方面,运营人员可以收集更全面的攻击日志,部署对策,追踪攻击者的来源并监控其攻击行为。记录所有内容以研究攻击者使用的策略、技术和程序 ,这对安全运营人员有很大帮助。
话说回来,数据采集分析能力和厂商的售后服务(威胁情报)也是企业采购考虑的重要指标,由于蜜罐处理的流量非常有限,因此蜜罐的资源也很有限。蜜罐对硬件要求不高,企业可以使用淘汰的计算机设备来设置蜜罐,降低成本。软件方面可以从在Github上获得许多开源的蜜罐,进一步减少了启动和运行蜜罐所需的内部工作量。蜜罐的误报率很低,这与传统的入侵检测系统 (IDS) 形成鲜明对比,传统的入侵检测系统会产生大量的错误警报,这有助于优先考虑工作并将蜜罐的资源需求保持在较低水平(事实上,通过使用蜜罐收集的数据并将其与其他系统和防火墙日志相关联,IDS 可以配置更多相关警报,以减少误报。这样,蜜罐可以帮助完善和改进其他网络安全系统)。
蜜罐可以为企业提供有关威胁情报、攻击媒介、漏洞利用和恶意软件的信息。网络蜜罐有助于发现新出现的威胁和入侵。充分利用蜜罐也有助于消除安全盲点。蜜罐是一个受控且安全的环境,用于展示攻击者如何工作并检查不同类型的威胁。有了蜜罐,安全人员就不会因使用网络的真实流量而分心——他们将能够专注于事件分析。蜜罐还可以捕获内部威胁,大多数企业都会花费大量时间保卫外部资产,并确保外来者和入侵者无法进入。但是,如果企业只保卫外围,那么任何成功突破外部网络的攻击者都可以成功获取企业内部权限,防火墙也无助于抵御企业内部威胁(例如,员工想要在辞职前窃取文件)。但是蜜罐可以为您提供有关内部威胁的同样好的信息,并显示允许内部人员利用系统的权限等领域的漏洞(如图九)。
图九
蜜罐的好处有不少,笔记将从捕获、溯源、监视三个反面来说。针对于安全预算不够充沛的企业来说,开源蜜罐通常搭建方便,独立运行,运用灵活,因此蜜罐具有成本效益且维护成本低的优点。企业在不追求"溯源"的情况下,是不错的选择。蜜罐对于以低风险的方式暴露组织安全漏洞非常有价值。通过分析攻击者使用哪些漏洞来攻击蜜罐中的资产,企业可以根据自身情况实时监测响应,以帮助阻止这类攻击。同时蜜罐还可在企业内部网络环境受到实际性损害之前识别和捕获恶意攻击。如果企业内部的权限存在缺陷,导致有员工利用公司的数据为自己谋取利用,蜜罐也可以有效地先发制人地识别内部弱点和威胁。
至于某些金融行业(银行、券商......)、运营商、能源、电力行业,由于资金充沛,且对于安全较为重视,蜜罐的另一个特点将被重点放大,那就是溯源能力。蜜罐是有效的威胁检测器,可引诱黑客进入受控环境,以便监控他们的活动。他们从事有关网络攻击的真实数据收集,包括有关黑客行为、工具、技术和新攻击媒介的信息。这有助于安全团队了解网络攻击的运作方式。相较于其他类型的识别安全威胁的技术通常误报率很高,其中警报会标记不存在的威胁。但由于蜜罐无法通过合法手段访问,因此误报率非常低。
针对攻防演练来说,蜜罐的作用就相对比较单一,那就是溯源得分。攻防演练时期,笔者非常困惑,到底咋做到溯源获得好几千分的呢?笔者后来和蓝队大佬们请教后发现,部署蜜罐才是核心,通过部署蜜罐诱骗攻击者,从而获取攻击者信息(例如:蜜罐可以模拟企业运行环境和配置,从而引诱攻击者渗透企业虚假资产。通过这种方式,企业SOC将能够抓住攻击者投放的有效负载,即可以通过Web应用程序中的 JavaScript获取有关攻击者主机甚至Web浏览器的信息,也可以通过 JSONP 劫持了解攻击者的社交媒体帐户,并通过"蜜文件"反击攻击者,参考图十)。
图十
随着网络安全技术的发展,蜜罐欺骗已应用于网络、数据库、移动应用程序和物联网等各种环境中。可以预见,未来几年欺骗技术将会更加成熟和广泛应用。由于笔者在某跨国实体企业工作,所以接触了不少不错的IOT设备蜜罐、Docker蜜罐和面包屑,在这里笔者推荐给大家,用法如下。
Conpot(工业蜜罐):一款开源低交互蜜罐,支持各种工业协议,包括IEC 60870-5-104、楼宇自动化和控制网络(BACnet)、Modbus、s7comm以及HTTP、SNMP和TFTP等其他协议
Whaler(Docker蜜罐):一款Docker蜜罐/沙箱,Whaler完全在Docker中运行,该蜜罐的核心是Docker in Docker(DinD)容器,通过暴露了一个不安全的Docker Daemon API,吸引和捕获尝试运行恶意容器的尝试
honeybits(面包屑):一个简单的 PoC 工具,旨在通过在生产服务器和工作站上传播面包屑和蜜币来引诱攻击者进入蜜罐,从而提高陷阱的有效性
Pre-Build镜像:
1、docker pull honeynet/conpot
2、docker run -it -p 80:80 -p 102:102 -p 502:502 -p 161:161/udp --network=bridge honeynet/conpot:latest /bin/sh
3、conpot --template default
源代码编译:
1、git clone https://github.com/mushorg/conpot.git
2、cd conpot
3、docker build \-t conpot .
4、docker run \-it \-p 80:80 \-p 102:102 \-p 502:502 \-p 161:161/udp \-\-network\=bridge conpot
curl https://raw.githubusercontent.com/oncyberblog/whaler/master/get-whaler.sh | sudo sh
export LOGZIO\_TOKEN\=<API KEY\>
export LOGZIO\_ENV\=whaler
./reset-redeploy \-d
$ go build
$ sudo ./honeybits
Failed reading remote config. Reading the local config file...
Local config file loaded.
\[failed\] honeyfile already exists at this path: /tmp/secret.txt
\[done\] go-audit rule for /home/test/secret.txt is added
\[done\] honeyfile is created (/home/test/secret.txt)
\[done\] go-audit rule for /opt/secret.txt is added
\[done\] sshpass honeybit is inserted
\[done\] wget honeybit is inserted
\[done\] ftp honeybit is inserted
\[done\] rsync honeybit is inserted
\[done\] scp honeybit is inserted
\[done\] mysql honeybit is inserted
\[failed\] aws honeybit already exists
\[done\] hostsconf honeybit is inserted
\[done\] awsconf honeybit is inserted
\[done\] awscred honeybit is inserted
\[done\] custom honeybit is inserted
笔者作为安全运营工程师在实体企业呆过一段时间,实体企业由于安全预算的原因,蜜罐的优先级是不高的,为了搭建完善的安全防御体系,开源的蜜罐就成为了企业SOC团队的首选。实体企业经常遭受勒索软件、数据泄露、APT(高级持续性威胁)等安全事件,严重影响企业生产经营,威胁企业信息安全。一般来说,这类企业由于其简单的架构、使用较低的处理能力和内存而容易被攻击者利用。保护ICS免受恶意活动的攻击具有挑战性,因为ICS的组件由于其简单的架构而不太可能进行任何更新或补丁。安装端点保护代理通常也是不可能的。考虑到这些挑战,欺骗可能是安全方法的重要组成部分。通过欺骗技术诱导攻击者访问蜜罐,安全团队就可以跟踪他们的行动(图十一所示),从而使企业运营人员能够通过了解黑客的操作方式和他们的目的来检测和防御网络犯罪。
图十一
蜜罐不仅可用于确定哪些安全措施正在发挥作用以及哪些需要改进,还可用于检测和防止外部试图闯入内部网络。蜜罐可以放置在外部防火墙之外来吸引、偏转和分析流量。蜜罐应用成熟的欺骗技术可以弥补未知威胁检测系统效率低下的问题,对于保障企业网络的安全可以发挥重要作用。这些应用程序可以帮助检测企业网络攻击并显示总体风险趋势。可以捕获攻击者利用的0day漏洞并将其发送给安全研究人员,从而及时提供补丁和情报。除此之外,还可以在勒索软件爆发之前收到及时警报,避免企业遭受巨大的损失。蜜罐系统通常采取了额外的安全措施以最大程度地减少受到威胁的风险。国有企业、跨国企业和外企是蜜罐的常见用户,用于识别和防御高级持续威胁 (APT) 攻击。蜜罐是大型企业用来对攻击者进行主动防御不可或缺的工具,对于想要更多地了解攻击者使用的工具和技术的网络安全研究人员来说,蜜罐是一种性价比较高的0day捕获设备。虽然维护蜜罐的成本很高,但是可以作为诱饵,吸引攻击者的精力,从而使企业能够在攻击造成重大损害之前发现和响应威胁。
图十二
Project Honey Pot数据库是笔者觉得不错的IP数据库之一。Project Honey Pot 社区就可以跟踪垃圾邮件发送者、垃圾邮件机器人和其他试图窃取带宽、容量、收集电子邮件地址和垃圾邮件的恶意活动。使用该网站数据并通过AI赋能,可以降低人力成本,大幅度提高研判效率(如图十二所示)。利用splunk检测内部受感染主机(如图十三所示),从默认网关获取防火墙日志。这允许安全运营人员创建由内部系统生成的被拒绝流量的报告。在大型客户网络中,将拥有一个很长的列表。获取此报告并使用威胁评分丰富目标地址,并据此进行排序,这样就拥有了一组自动确定优先级的目标,它定义了安全运营人员应该首先调查哪些客户端。如果得分高于零,则在企业网络中发现了受感染的客户端,该客户端正在运行试图与外部通信的活动恶意软件。
检测欺诈:考虑一下您想要监控哪些关键应用程序是否存在潜在的欺诈活动。安全运营人员可以将订单与IP地址相关联,并根据IP威胁评分较低的用户发出警报
监控企业环境,以免列入黑名单:白皮书指出,70%的网络犯罪受害者已收到外部实体的通知。根据此统计数据,定期跟踪在这些威胁情报源上拥有的所有公共 IP 地址绝对是有必要的。
威胁情报信息:借助Splunk的强大功能,可以针对历史数据运行定期报告。这可以帮助安全运营人员识别过去一段时间的恶意活动。也许几周前IP分类还为白,但现在已标记为红。因此可以了解企业历史数据的上下文并查看交易或订单,甚至是已被感染的潜在风险客户,很久以前就与互联网上的恶意IP进行通信,然后恶意软件在给定时间段后被自动删除。
图十三
如何合理的搭配蜜罐?在攻防演练当中,互联网重型蜜罐作为得分手段,在告警准的情况下,还要得分“简单粗暴”,抓住IP还不够,最好能抓到社交ID、攻击者主机信息,甚至反制攻击者。最后,高交互工控蜜罐消耗大量资源,维护成本高。显然,蜜罐往往需要引入物理系统或设备来构建真实运行的模拟环境。然而,工业控制系统和设备成本高昂、难以重复使用且维护困难。即使看似相似的ICS设备在功能、协议和指令方面也往往非常不同。过去几年针对企业资产的攻击迅速增加。众所周知,大多数攻击都是从实体企业外部突破的。这是可以预料的,尽管目前的数据并未表明许多攻击者专门针对实体企业进行攻击,但一旦攻击IOT设备成功,实体企业将承受巨大的损失。所以攻击者会利用一切机会敲诈企业,这只是时间问题。因此,实体企业的网络安全建设非常重要。虽然蜜罐等防御用途的欺骗技术已经大幅度提高了攻击门槛,但由于所使用的协议等根本差异,仍然一些不足,需要安全人员注意。
企业外部用重型蜜罐,企业内部全量部署轻型蜜罐。重型蜜罐是对企业外部防御手段的补足,蜜罐最好部署在攻击者直接能接触的位置;至于内部的轻型蜜罐,应该是灵敏度高、一触碰就告警,用HIDS启全量轻蜜罐最合适不过的了;这样一个企业安全蜜网就搭建成功了。蜜罐凭借其低成本和易于使用的优势,帮助企业在上创建、部署和管理蜜罐节省不少人力成本,从而显着降低潜在安全事件的发生率。基于本文,蜜罐欺骗技术应考虑与新方法相结合,通过模拟真实的企业环境并与之交互,捕获的攻击者留下的敏感信息和攻击流程。这些敏感信息具有很大的价值,通过人工智能或大数据工具进行分析,有助于深入分析蜜罐提供的情报。欺骗技术对于ICS网络安全的快速发展、提高智能化和防御能力发挥着至关重要的作用。
最后,笔者希望企业安全运营中心(SOC)能够建立完备的协作机制,依托乙方的情报信息,包括威胁情报、蜜罐情报等做好充分的利用,压榨出所有攻击线索的价值,从而提高攻击者的攻击成本,维护企业安全。本文是笔者对自己工作经历的小结,希望帮助大家了解蜜罐的原理和使用方法。以上就是我对蜜罐的一点点个人见解,如有不足欢迎指正!
参考资料
https://thehackernews.com/2011/01/be-aware-hacker-honeypots-now-in-india.html
https://github.com/paralax/awesome-honeypots
https://github.com/XiaoXiaoGuaiXiaShi/OpenSource-HoneyPot/blob/master/conpot.md