文章目录
- 前言
- 一、我们为什么需要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