使用canarytokens进行入侵检测

news2024/9/24 11:29:04

canarytokens

基本概念

canarytokens是一种用于识别网络入侵的工具。它们是一种虚拟的“蜜罐”,可以在网络上放置,当有人尝试访问它们时,可以立即触发警报,以便及时发现潜在的安全威胁。这些token可以是各种形式,可以是一个文件、电子邮件地址、API 调用、DNS 请求、Web Bug/URL、QR 码等等,其目标是在攻击者访问或交互这些 token 时发出报警。通过监视这些canarytokens的活动,网络管理员可以更好地了解潜在的威胁,并及时采取行动。

工作原理

它们工作原理是生成一个或多个canarytokens(即“蜜标”),这些蜜标可以放置在各种位置,例如电子邮件、文档、数据库记录或者网站上。然后,当这些蜜标被访问或使用时,Canarytokens服务会向你发送警报,从而通知你可能发生的安全事件或数据泄露行为。

基本分类

Canarytokens(Canarytokens)可以生成多种形式的蜜标,例如:

  • 伪造的URL:如果有人访问这个URL,你会得到通知。
  • 伪装成文件的蜜标:比如放置在一个敏感目录中的Word文档,如果文件被打开,你会得到通知。
  • 邮件中的Web bug:如果有人打开了邮件并触发了隐藏的Web bug,你会得到通知。
  • DNS查询:如果有人尝试解析某个特定的DNS记录,你会得到通知。
  • ......

如图所示:

反正就是很强大!!种类很多,这里简单介绍一下web bug和canarytokens docx的使用和技术原理。

web bug/URL token

简单测试

首先使用web bug/URL token生成一个一个蜜饵,这里输入俺的邮箱接收告警,填写告警的描述如:测试URL token,如图所示:

点击create my Canarytokens,就可以生成一个web token啦

Canary token URL为:http://canarytokens.com/traffic/tags/terms/jxk469f48nu2lcd25vdegpojq/post.jsp,这里里面的“token”是用来识别访问者的唯一字符串“jxk469f48nu2lcd25vdegpojq”,当有人访问这个URL时,它将触发一个事件,Canary token服务将通知URL的创建者关于此次访问的详细信息。如来源的IP地址、使用的浏览器类型,UA等,这个URL结尾一个名为post.jsp的文件,文件内容如下:

从内容的开头“GIF89a”是一个GIF文件的头部标识,说明这个文件里面嵌入了一个图片。

我这里直接访问一下这个URL:http://canarytokens.com/traffic/tags/terms/jxk469f48nu2lcd25vdegpojq/post.jsp

邮箱就收到了告警,并且获取到我的出口IP和UA等信息,如图所示:

Web Bug

Web Bug也被称为网页信标(web beacons),常常用来追踪用户的网络活动,例如他们何时访问了某个网页,是否打开了某封电子邮件等。它通常是一个小的透明图像或者其他嵌入式对象,它被嵌入到网页中,但用户通常无法察觉到它的存在。当用户访问包含web beacons的网页时,web beacons会向远程服务器发送请求,从而记录用户的访问信息。

从这个链接提供的信息来看,Web Bug使用的技术原理包含以下几个关键点:

  1. 图片元素的嵌入:通常通过在网页或邮件中嵌入一个非常小的、通常是1x1像素的透明图片来实现。
  2. 链接定制:图片的源(src)是一个定制的链接(在该案例中是一个.jsp页面),并且包含了一些唯一的跟踪标签,例如terms/jxk469f48nu2lcd25vdegpojq。
  3. 服务器端数据记录:当一个用户的浏览器尝试加载这个图片时,其实就是对服务器发起了一个GET请求。Web服务器可以记录这个请求的详细信息,例如IP地址、浏览器类型、访问时间等元数据。
  4. 回应伪装:链接返回的内容是基本的GIF格式的开头——GIF89a——这表明服务器的响应被设计成伪装成一个GIF图片。尽管后续的字符是乱码,但足以让浏览器认为这是一个图片资源。

这个Web Bug可以实现无形中追踪用户的访问行为,服务器接收到请求后,即使图片看起来是空白或透明的,通过记录请求的细节数据,追踪者便能完成对用户行为的定位。

canarytokens docx

首先,进行canarytokens网站生成token页面,选择Microsoft Word Document,第二行填写接收通知邮箱,第三行填写通知时的文本内容,然后生成就可以了。

然后下载就行了

docx文件本质就是压缩文件,所以可以改后缀名为.zip后利用解压软件解压缩。这里我直接使用unzip解压缩,直接执行

unzip riu5lhrjxssj9s0fobsnr8hig.docx

通过检索,可以发现word目录下footer2.xmlfooter2.xml.rels带有canarytokens的网站链接。

grep -Ri canarytokens *

通过检索,可以发现word目录下footer2.xmlfooter2.xml.rels带有canarytokens的网站链接。footer2.xml 是文档中页脚的实际内容,而 footer2.xml.rels则定义了页脚内容中涉及的外部关系这些代码共同实现了Canarytoken 在 Word 文档(docx 格式)中的部署。

footer2.xml文件包含了 Word 文档页脚的实际内容。在这个例子中,它包含了插入图片的字段(field)。字段代码如下:

<w:fldChar w:fldCharType="begin"/>
<w:instrText xml:space="preserve"> INCLUDEPICTURE  "http://canarytokens.com/terms/stuff/tags/riu5lhrjxssj9s0fobsnr8hig/contact.php" \d  \* MERGEFORMAT </w:instrText>
<w:fldChar w:fldCharType="separate"/>
...
<w:fldChar w:fldCharType="end"/>

这段字段代码告诉 Word 在文档中插入一张图片,图片的 URL 为 http://canarytokens.com/terms/stuff/tags/riu5lhrjxssj9s0fobsnr8hig/contact.php。\d 和 \* MERGEFORMAT 是字段指令,用来控制图片的显示方式。INCLUDEPICTURE 是一个 Word 字段,用来插入外部图像。当 Word 尝试渲染这个字段时,它会向给定的 URL 发起请求以检索图片。如下所示:

INCLUDEPICTURE  "http://canarytokens.com/terms/stuff/tags/riu5lhrjxssj9s0fobsnr8hig/contact.php

footer2.xml.rels文件指明了页脚中提到的外部资源的关系定义。在此示例中,有一个关系标识符 rId1,指向一个外部的图像资源,contact.php也是一个图片,如图所示:

INCLUDEPICTURE域通常被用在 Word 文件中 (通常是 .docx 格式) 来插入一张远程图像。当文档打开,且域更新时(例如,当视图图像时),Word 会尝试从远程服务器加载图片。而riu5lhrjxssj9s0fobsnr8hig 是一个唯一的标识符(Token),它是与 Canarytoken 相关联的一个特定的字符串,这个标识符用于追踪和识别访问该 URL 的请求。在这种情况下,当 Word 文档中的图片 URL 被访问时,Canarytoken 服务记录下事件,并可通知文档的所有者。这样可以跟踪到文档是否被打开,以及什么时候被打开。

使用场景

Canarytokens 可以用于多种不同的安全监控和预警场景,其灵活性和低侵入性让其可以广泛应用在许多环境中。以下是一些常见的使用场景:

文档和数据泄露检测

  • 隐藏在敏感文档中的 tokens 被访问,这可能表明有人在未经授权的情况下查看或窃取了这些文件。
  • 在数据库的敏感字段中放置 tokens,当有SQL注入或其他未授权访问时会触发警报。

网络入侵检测

  • 在网络中设置虚假的服务或设备(如假SSH服务)并关联 with tokens,一旦有人尝试连接这些服务,就会触发警报。
  • 配置 DNS tokens,当攻击者尝试解析某些域名或子域名时,可以检测到潜在的网络扫描活动。

内部威胁监测

  • 在隐蔽的URL中嵌入 tokens。如果员工或合作伙伴访问了这些不应该公知的链接,可能意味着内部信息被泄露。
  • 在看起来像是密码、密钥或访问凭证的文件中放置 tokens,用来检测是否有人在试图获取这些信息。

云服务监控

  • 配置用于云存储桶(如AWS S3)的 tokens,任何未授权的存储桶访问都会被检测到。
  • 生成看起来像是有效API密钥的 tokens,并监控其使用情况来检测潜在的API滥用。 

研究与取证

  • 在蜜网中部署 tokens,来吸引攻击者,并监控他们的活动。
  • 将 tokens 放置在故意泄露的数据中,以调查和跟踪数据在黑市中的传播。

办公终端蜜饵和应用访问预警

  • 在配置文件、注册表项或系统文件中加入 tokens,当攻击者试图修改这些关键设置时会收到通知。
  • 在web应用的敏感部分嵌入 tokens,如管理面板或配置界面,以检测未授权的访问尝试。 

敏感行为监控

  • 在代码库或代码片段中嵌入 tokens,用于侦测源代码的未授权拷贝或访问。
  • 更多可参考官方文档:https://docs.canarytokens.org/guide/

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,需要点击下方链接即可前往获取 

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)

同时每个成长路线对应的板块都有配套的视频提供: 

大厂面试题

 

视频配套资料&国内外网安书籍、文档

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料

所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~ 

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击) 

特别声明:

此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1706333.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python bqplot:轻松打造炫酷交互式数据可视化

更多Python学习内容&#xff1a;ipengtao.com bqplot是一个用于Jupyter Notebook的交互式数据可视化库&#xff0c;由Jupyter团队开发。它基于HTML5 Canvas和d3.js&#xff0c;并使用ipywidgets进行交互&#xff0c;允许用户通过Python代码创建复杂的交互式图表。bqplot的设计目…

注意力机制篇 | YOLOv8改进之引入用于目标检测的混合局部通道注意力MLCA

前言:Hello大家好,我是小哥谈。注意力机制是可以帮助神经网络突出重要元素,抑制无关元素。然而,绝大多数通道注意力机制只包含通道特征信息,忽略了空间特征信息,导致模型表示效果或目标检测性能较差,且空间注意模块往往较为复杂。为了在性能和复杂性之间取得平衡,本文提…

28 Debian如何配置PXE网络装机(全自动无人值守)

作者:网络傅老师 特别提示:未经作者允许,不得转载任何内容。违者必究! Debian如何配置PXE网络装机(全自动无人值守) 《傅老师Debian小知识库系列之28》——原创 ==前言== 傅老师Debian小知识库特点: 1、最小化拆解Debian实用技能; 2、所有操作在VMware虚拟机实测完成…

文件压缩-42的魅力

让我们以一个非常简单的程序为例&#xff0c;一个什么都不做的程序 将数字返回给操作系统。为什么不呢&#xff1f;毕竟&#xff0c;Unix 已经附带了不少于两个这样的程序&#xff1a;true 和 假。由于已经取了 0 和 1&#xff0c;我们将使用数字 42。 所以&#xff0c;这是我…

AIGC行业:巨头引领的创新浪潮与市场前景

AIGC&#xff08;AI Generated Content&#xff09;技术&#xff0c;作为新兴的技术力量&#xff0c;正逐渐改变内容创作的生态。在这一变革中&#xff0c;国内科技巨头如百度、阿里巴巴、腾讯等的积极参与&#xff0c;不仅为行业带来资本和技术支持&#xff0c;更预示着AIGC技…

企业微信H5授权登录

在企业中如果需要在打开的网页里面携带用户的身份信息&#xff0c;第一步需要获取code参数 如何实现企业微信H5获取当前用户信息即accessToken&#xff1f; 1.在应用管理--》创建应用 2.创建好应用&#xff0c;点击应用主页-》设置-》网页-》将授权链接填上去 官方文档可以看…

西安航空学院电子工程学院领导莅临泰迪智能科技参观交流

5月26日&#xff0c;西安航空学院电子工程学院院长杨亚萍、专业教师刘坤莅临广东泰迪智能科技股份有限公司产教融合实训基地参观交流。泰迪智能科技董事长张良均、副总经理施兴、产品中心负责周东平、校企合作经理吴桂锋与泰迪智能科技韩伟进行热情了接待。双方就专业建设、协同…

不仅能逃生,更能自动灭火!神奇的全氟己酮灭火毯的原理是什么?

很多朋友对灭火毯的印象&#xff0c;还停留在火灾发生时披覆在身上逃生时使用&#xff0c;可以隔离火源。近年来兴起的全氟己酮自动灭火毯可以说大为颠覆大家的想法&#xff0c;这是一条真的可以自动灭火的神奇灭火毯&#xff01;为什么能做到这一点&#xff1f;全氟己酮灭火毯…

(1) 初识QT5

文章目录 Qt Quickdemo信号的命名方式 qml语言一个很重要的概念 qt 模块 Qt Quick Qt Quick是Qt5中⽤户界⾯技术的涵盖。Qt Quick⾃⾝包含了以下⼏种技术&#xff1a; QML-使⽤于⽤户界⾯的标识语⾔JavaScript-动态脚本语⾔Qt C具有⾼度可移植性的C库. 类似HTML语⾔&#xf…

MySQL连表查询练习

– 34. 查询所有员工的姓名和部门名称&#xff0c;没有部门的员工不需要展示 SELECTe.NAME 员工姓名,d.NAME 部门名称 FROMt_emp eINNER JOIN t_dept d ON e.dept_id d.id;– 35. 查询所有员工的姓名和部门名称&#xff0c;没有部门的员工展示BOSS SELECTe.NAME 员工姓名,i…

从华为云Redis到AWS ElastiCache的操作方法

越来越多企业选择出海&#xff0c;那么就涉及到IT系统的迁移&#xff0c;本文将详细介绍如何将华为云Redis顺利迁移到AWS ElastiCache的操作方法&#xff0c;九河云将为您介绍迁移步骤以帮助您顺利完成这一重要任务。 **1. 确定迁移计划** 在开始迁移之前&#xff0c;首先要制…

基于Freertos的工训机器人

一. 工训机器人 V1 1. 实物 将自制的F4开发板放置车底板下方&#xff0c;节省上方空间&#xff0c;且能保证布线方便整齐。 2. SW仿真 使用SolidWorks进行仿真&#xff0c;且绘制3D打印件。 工训仿真 3.3D打印爪测试 机械爪测试 二. 工训机器人 V2 1. 实物 工训机器人V2不同于…

效果炸裂!使用 GPT-4o 快速实现LLM OS

使用 GPT-4o 快速实现LLM OS 什么是 LLM OS&#xff1f;LLM OS 主要有以下5个部分组成&#xff1a; LLM OS 开源实现运行 LLM OS 开源实现 什么是 LLM OS&#xff1f; 关于 LLM OS 的最初构想源自karpathy 在2023年11月11日发布的一条Twitter 动态&#xff0c;这是 LLM OS 概念…

mipi-csi笔记

数据格式 长包&#xff0c;短包 用DI来判断数据类型 测试帧率&#xff0c;如用1G的示波器 下面的代表这是一张图片,用帧间隙来测试YUV422视频的帧率 fps10hz的外同步

JavaScript(ES5) 入门

01-简介 1)JavaScript 发展史 [1] 1995年,navigator(导航者),netscape(网景);用户体验性特别好 [2] 表单验证难题,表单验证都是在后台处理.当时处在网速特别慢的时代,发送一个请求,接收响应 需要5分钟左右的时候提高表单验证的速度,想开发一种语言在前端进行表单验证. [3] 1995…

vue数字翻盘,翻转效果

数字翻转的效果 实现数字翻转的效果上面为出来的样子 下面为代码&#xff0c;使用的时候直接引入&#xff0c;还有就是把图片的路径自己换成自己或者先用颜色替代&#xff0c;传入num和numlength即可 <template><div v-for"(item, index) in processedNums&quo…

电脑怎么恢复刚删除的文件?别急,教你几招

在日常使用电脑的过程中&#xff0c;误删文件的情况时有发生。无论是由于操作失误还是病毒攻击&#xff0c;文件丢失都可能给我们的工作和生活带来不小的困扰。然而&#xff0c;不必过于焦虑&#xff0c;因为在大多数情况下&#xff0c;我们仍然有机会恢复这些丢失的文件。下面…

Linux--构建进程池

目录 1.进程池 1.1.我们先完成第一步&#xff0c;创建子进程和信道 1.2. 通过channel控制&#xff0c;发送任务 1.3回收管道和子进程 1.4进行测试 1.5完整代码 1.进程池 进程池其产生原因主要是为了优化大量任务需要多进程完成时频繁创建和删除进程所带来的资源消耗&#…

windows 执行node报错 800A1391

在项目下执行node -v的时候&#xff0c;抛了这个错误&#xff0c;一开始没发现有啥问题 现在一看&#xff0c;这个报错里的node怎么是个文件... 出现这个问题&#xff0c;是因为项目下&#xff0c;有个同名的文件叫node.js&#xff0c;搞得windows一时不知道是想打开node.js文…

gem5模拟器入门(一)——环境配置

什么是gem5&#xff1f; gem5是一个模块化的离散事件驱动的计算机系统模拟器平台。这意味着&#xff1a; GEM5 的组件可以轻松重新排列、参数化、扩展或更换&#xff0c;以满足您的需求。它将时间的流逝模拟为一系列离散事件。它的预期用途是以各种方式模拟一个或多个计算机系…