文章目录

  • 前言
  • 一、我们为什么需要honeytokens?
  • 二、honeytokens分类
  • 1.HTTP token
  • 2.MS Word token
  • 3.MS Excel token
  • 4.还有其他
  • 三、如何在办公网部署honeytokens?
  • 1.简单web端
  • 2.powershell开发
  • 3.下发ps1文件到终端
  • 4.关注邮箱告警
  • 总结



前言

什么是honeytokens?简单来说就是有人打开某个文件时,你能实时知道这个文件被人打开了。可以是excel文件,也可以是word文件,甚至是图片、某个应用的key。
所以在各种复杂的生产和办公环境中,我们可以设置更多独立的陷阱,而不仅仅是蜜罐。


一、我们为什么需要honeytokens?

漏洞时有发生,我们无法准确的知道什么时候发生了入侵,但总能被发现。可是如果发现的时间是几个月或者几年之后,可能这意义就不大了,损失也会很严重。

honeytokens是一种免费、快速、简单的方式,可帮助防御者发现他们已被攻破(通过让攻击者宣布自己攻击成功的方式)。

二、honeytokens分类

1.HTTP token

当创建基于 HTTP 的 Canarytoken 时,系统会提供一个 URL。

任何试图浏览此 URL 的人都会生成警报。

为什么这很重要?一旦能够获得基于 Web 的令牌或基于 DNS 的令牌的警报,就拥有了在web应用中创建各种陷阱的基础工具。

2.MS Word token

这是一个 Microsoft Word 文档,每当它在 Windows 或 MAC OS 上的 Microsoft Office 中打开时都会产生告警。

这对于放入不应访问的文件夹内很有用。创建一个有趣的文件名(网络架构规划文档.docx、passwords.docx),将它放在文件夹或电子邮件中,然后等待告警告诉你有人在窥探信息。


3.MS Excel token

这是一个 Microsoft Word 文档,每当它在 Windows 或 MAC OS 上的 Microsoft Office 中打开时都会产生告警。

这对于放入不应访问的文件夹内很有用。创建一个有趣的文件名(网络架构规划文档.docx、passwords.docx),将它放在文件夹或电子邮件中,然后等待告警告诉你有人在窥探信息。


4.还有其他

可以去以下网页查看:https://docs.canarytokens.org/guide/

三、如何在办公网部署honeytokens?

1.简单web端

简单开发个web端,用于powershell脚本上报的信息存储。以此明确该token属于哪个用户。

2.powershell开发

开发一个powershell脚本,获取token,生成honeytokens的word、excel文件,放到指定目录,并将信息上报到web端进行存储。

3.下发ps1文件到终端

通过桌面管家或者edr、epp等将脚本下发至终端,也可以通过edr直接执行powershell命令,生成拉取honeytokens文件,并将终端的基础信息,通过post请求上报到简单web端进行存储。

4.关注邮箱告警

等待有攻击者触发该告警,或者核实处理误报

总结

该方式不仅可以用在办公网,还可以用于生产网,如mysql数据库、aws的keys等,在办公网也不仅仅限于文档,甚至可以是二维码、可执行的exe文件等。

这不是什么超前的技术!
基本概念其实是旧的。Lance Spitzner在 2003 年谈到了honeytoken, Spafford & Kim在 1994 年提到了这个概念。

事实上,数百年来,地图制作者一直在将虚假数据与真实数据混合以抓捕地图窃贼。

然而,Canarytokens 所做的是让每个人都能轻松使用这个概念,并实现了一系列尚未公开讨论的技术和方法。

如果攻击者将 canarytokens.org 域名列入黑名单怎么办?难道没其他办法吗?
其实我们可以自己搭建一个honeytoken服务。(你可以从github获取源代码来自己构建它)
链接: https://github.com/thinkst/canarytokens