← 文章 / 科技资讯
Hacker News 1小时前 · 2026-10-16 07:54:51 · 7 阅读

AdFection:定向广告沦为零点击雇佣兵间谍软件的投放管道

  • 国际新闻机构半岛电视台(Al Jazeera)的设备通过定向在线广告被植入 Candiru(现更名为 "Integrity Labs")的雇佣兵间谍软件。我们首次公开确认了这种通过定向广告投放的零点击雇佣兵间谍软件攻击,并将其命名为 AdFection。
  • 这些恶意广告由 Discover-Tech 购买。这家以色列公司表面上是一家正规广告公司,但我们发现它实际上充当多家雇佣兵间谍软件合作伙伴的中介。
  • Discover-Tech 运营着一个平台,让雇佣兵合作伙伴能够在广告展示的瞬间对设备去匿名化、采集指纹并自动植入恶意软件——这是一种零点击攻击。
  • 对 Discover-Tech 四十亿条竞价记录的分析显示,在四个月时间里,该公司的广告覆盖了近 20 万个独立网站和 Android/iOS 应用,遍布数十个国家。
  • Discover-Tech 的广告还暗中指挥数百万台设备连接 Candiru 的服务器,很可能用于大规模追踪与侦察。除 Candiru 外,Discover-Tech 还与 Intelos、Bindecy 等雇佣兵间谍软件及情报威胁行为者存在关联。
  • 另一个我们将代称为 的威胁行为者,正利用 Discover-Tech 的基础设施,利用众多移动运营商的漏洞将设备广告 ID 与电话号码关联起来,大规模去匿名化互联网用户。我们将在后续单独报告中详述关于该威胁行为者的发现。
  • Discover-Tech 曾出现在 Google 和广告行业协会 IAB Europe 维护的"认证"及"核准"供应商名单上,并通过 Google、Yandex、Beeswax 等主流广告网络投放广告。它还利用欧盟《通用数据保护条例》(GDPR)的同意框架定向欧盟境内的用户。
  • Discover-Tech 的大规模滥用行为、对用户隐私的侵犯,以及为雇佣兵间谍软件攻击提供便利,暴露出在线广告体系中的结构性缺陷——该体系未能发现或阻止本报告所记录的滥用行为。 我们呼吁监管机构调查 Discover-Tech 以及 Candiru / Integrity Labs 是否违反了相关法律法规,并向立法者、安全防御方和广告行业提出建议,探讨如何阻止 AdFection 式的攻击与间谍活动。 我们已向广告供应商和行业组织披露了调查结果。Google、IAB Europe、Beeswax、Vungle (Liftoff) 和 Eskimi 已采取行动,切断 Discover-Tech 对数字广告生态系统的访问权限。参与 Discover-Tech 运营的其他广告供应商则未在我们规定的时间范围内对我们的置评请求作出回应。我们也在积极与供应商合作,以缓解 的大规模去匿名化攻击。 This report is co-timed with an investigation by Confiant. Read the Executive Summary of this report 1. Introduction 本节概述了在线广告生态系统,并总结了我们关于 Discover-Tech 的发现。 在线广告生态系统易受滥用 当用户在应用或网站上看到一条广告时,这通常是实时拍卖的结果。广告商在拍卖中竞价,争取向特定用户展示特定广告。所谓的实时竞价(Real-Time Bidding, RTB)拍卖由包括 Google 在内的公司运营的广告交易平台承载,每天发生数百亿次。在不到一秒的时间里,用户设备发出竞价请求,广告商提交出价,广告交易平台确定赢家,并将广告推送给用户。除了图片或视频外,在线广告还可以包含在展示该广告的应用或浏览器中运行的代码。

    广告主和应用/网站发布方都依赖广告服务商作为这些拍卖活动中的中介。广告主通常通过需求方平台(DSP)购买广告,而供给方平台(SSP)则负责在各类网站和应用中出售广告库存。

    Figure 1
    在线广告生态系统的基础架构。

    恶意行为者利用了在线广告生态系统的两个相互关联的方面:

    广告生态系统收集大量数据并支持个体级精准投放:当应用或网站的发布方希望展示广告时,他们会将 SSP 提供的代码集成到自己的应用或站点中。这段代码会向广告交易平台收集并共享关于用户及设备的详细信息,以邀请各方对广告位进行竞价。这些信息可以包括设备标识符及特征、精确地理位置、IP 地址数据,以及关于应用/网站的信息和广告位的规格要求。随后,DSP 或广告主会分析这些信息,决定是否对该次曝光进行竞价以展示广告。拍卖系统旨在基于移动广告 ID、Cookie ID、IP 地址及其他标识符,实现对单一用户的精准定向。

    广告生态系统中,大量第三方可以在应用和网页里运行代码:很多人以为在线广告无非是一段视频或一张图片,但事实并非如此。广告本身可能包含来自广告主、DSP 以及其他各方的代码,并在广告展示给用户的同时在应用或浏览器中运行,用来追踪用户、广告曝光量和点击行为。广告主、DSP、SSP 等第三方在应用和网页中运行的代码,通常被称为“tags”、“pixels”、“SDK”,或笼统地叫做“第三方追踪”。

    利用广告技术进行监控

    广告竞价收集到的信息整体而言价值极高。能够获取竞价数据的公司,可以通过观察与特定标识符关联的竞价请求如何随时间变化位置或 IP 地址,在用户毫不知情的情况下追踪其在现实世界中的移动,包括切换蜂窝网络、Wi-Fi 和 VPN 的过程。实际上,监控行业已经在出售所谓的广告情报(ADINT)平台,它们利用的正是这类数据,并常常与第三方追踪数据结合使用。近年来,多起调查和媒体报道揭露出一些向国防、情报和执法机构出售 ADINT 的供应商。

    通过定向广告投放的零点击间谍软件:AdFection

    除了被动地收集数据,恶意行为者还能利用这套基础设施,根据广告竞价中包含的用户数据锁定特定目标,并在其设备上执行恶意代码。当广告向用户展示时,广告主或需求方平台(DSP)可能会运行 HTML 和 JavaScript 代码。这些代码会获取额外的 JavaScript 代码,进而加载更多代码(例如用于安装间谍软件的浏览器漏洞利用程序)。由于代码中可以包含用户或设备标识符,因此可以将任意的 JavaScript 代码精准投递到单一用户的设备上。本报告的调查发现,该架构确实被滥用于投递零点击定向间谍软件,且仅仅展示一条定向广告就足以导致设备感染。

    此前已有一些报道涉及间谍软件与广告生态的交叉领域。然而,雇佣间谍软件公司具体如何接入广告生态系统以锁定特定用户,一直鲜为人知。本报告揭露了通过定向广告投递的零点击间谍软件,我们将其称为AdFection,并首次从技术层面证明,雇佣间谍软件正在通过定向广告进行分发。

    Discover-Tech 是雇佣间谍软件公司与广告生态系统之间的桥梁

    我们提供了技术证据,证明总部位于以色列的 Discover-Tech 公司虽然自称是合法的广告公司,但实际上似乎是大规模广告间谍滥用行为的幌子,其中包括在广告展示给目标时自动投递雇佣间谍软件,以及对用户进行大规模画像和去匿名化。

    该公司充当着广告供应商与雇佣间谍软件生态系统之间的桥梁。事实上,充当这一桥梁似乎正是 Discover-Tech 的主要目的。其平台 Controlium 允许恶意行为者精准地画像和去匿名化数百万用户,对其设备做指纹识别,并利用一种零点击黑客手段锁定他们,使设备在广告展示时自动被感染。

    图 2
    Integrity Labs(Candiru 重新品牌后的名称)的网站,该公司是一家为 Discover-Tech 提供服务的军用间谍软件供应商之一。

    Discover-Tech 似乎与多家军用间谍软件、黑客攻击及广告供应商合作,将间谍软件行业与在线广告生态系统连接起来。正如本报告所详述的,Discover-Tech 的广告被用于代表军用间谍软件供应商 Candiru 进行感染和画像。我们还详细说明了 Discover-Tech 与另一家军用黑客公司 Bindecy 以及军用 ADINT 公司 Intelos 之间的联系。

    什么是 Discover-Tech?它是如何运营的?

    Discover-Tech 由首席执行官 Dekel Boni 领导,他拥有数字广告领域的背景。Eran Banoun 被《国土报》(Haaretz)描述为“以色列进攻性网络领域的先驱之一”,他在该公司 2020 年成立后不久便加入董事会,并留任至 2025 年。2020 年至 2026 年 3 月期间,Discover-Tech 的股东包括一家与 Sara Hamou 相关的公司,她曾管理军用间谍软件组织 Intellexa 的企业网络。

    Discover-Tech 似乎使用多种技术投放广告。首先,该公司运营一个名为 MyDSP 的平台,该接口连接 Google、Yandex、Vungle (Liftoff) 和 Sunteng 等在线广告供应商。其次,独立于 MyDSP 之外,它还通过广告供应商 Eskimi 和康卡斯特(Comcast)旗下的 Beeswax (Freewheel) 购买广告。

    Discover-Tech 投放的大量广告中都包含一个 script 标签,指向该公司所谓的“NOAS 服务器”(也叫“getAd 服务器”)。广告渲染时,这个标签会让广告回连 Discover-Tech,提交用户的广告标识符(cookie ID 或移动广告 ID),并自动执行服务器返回的任何 JavaScript 代码。NOAS 服务器会综合来源 IP 地址和广告标识符等信息,判断目标是否有资格接收 JavaScript 代码:符合条件就返回代码,不符合则返回 0 字节的响应。NOAS 服务器是 Discover-Tech 策略中的关键一环,让它无需向投放和展示广告的公司直接共享恶意代码,甚至连指向恶意代码的线索都不必暴露。

    图 3
    Discover-Tech 把雇佣间软件行业与在线广告生态连接了起来。

    如第 9 节所述,从 2020 年到 2026 年,Discover-Tech 一直出现在 Google 和广告行业组织 IAB Europe 维护的“认证”和“核准”广告供应商名单上。这些名录让 Discover-Tech 显得像一家正规广告供应商,也帮助它大规模参与数字广告生态。

    由于本次调查,Google 和 IAB Europe 已于 2026 年 10 月初将 Discover-Tech 从各自广告供应商名录中移除。Google 在调查中提供了配合,终止了 Discover-Tech 对其广告交易平台的所有访问权限;Beeswax 将其从广告购买平台中移除;Vungle(Liftoff)在审查期间暂停了其访问权限;Eskimi 则封锁了其账户和域名。

    报告概览:揭露 Discover-Tech 的 AdFection 攻击链

    本报告将概述 Discover-Tech 实施的各类广告滥用行为、其广告定向系统与投放手法,以及它的合作伙伴和企业关系网络。

    第 2 节 展示了 Candiru 如何与 Discover-Tech 协作实施 AdFection 攻击,并描述了一次针对 Al Jazeera 国际媒体网络的攻击案例,其设备因此被 Candiru 的雇佣间谍软件感染。

    第 3 节 分析了 Controlium,这是 Discover-Tech 提供的一个平台,具备控制面板式的界面,允许雇佣间谍软件的客户通过“受控广告”定向追踪特定用户。

    第 4 节 揭示了 Discover-Tech 与雇佣间谍软件公司 Candiru/Integrity Labs 和 Bindecy 之间的关联。随后,我们概述了它们与其他商业监控公司的关系,包括广告情报(ADINT)供应商 Intelos,以及我们称为 DARK CARTOGRAPHER 的另一家 ADINT 供应商,后者正在建立数据库,将用户的移动广告标识符与其电话号码联系起来。

    第 5 节 分析了 Discover-Tech 的恶意广告投放地点。我们发现一台 Discover-Tech 服务器发布了近 40 亿条广告竞价记录。这些记录显示,Discover-Tech 的广告已在近 200,000 个不同的 Android 应用、iOS 应用及众多国家的网站上展示。我们还指出了 Discover-Tech 广告产生曝光量的特定国家和政府网络。

    第 6 节 利用技术分析,我们研究了 Discover-Tech 如何部署广告、追踪用户,以及与其他广告供应商(包括 Beeswax、Yandex 和微软广告系统 Xandr)交换用户标识符。

    第 7 节 介绍了我们对 Discover-Tech Ltd 的研究,涵盖其公司网络、与该公司有关联的关键人物、其 MyDSP 广告技术的起源,以及它与更广泛广告生态系统的联系。

    第 8 节 总结了目前关于商业监控公司 Candiru、Bindecy 和 Intelos 的已知信息,并结合报告中的发现,进一步考察了它们的业务活动和公司网络。

    在第 9 节中,我们将探讨主要行业组织和广告供应商(包括 Google、IAB Europe、Beeswax(FreeWheel/Comcast)、Vungle(Liftoff)、Eskimi、Sunteng 和 Xandr(Microsoft))如何协助 Discover-Tech 的广告运营。

    在第 10 节中,我们将讨论 AdFection 对用户安全和人权的影响。

    在第 11 节中,我们将为立法者、监管机构、防御者及广告行业提供建议,以缓解和阻断 AdFection 式攻击带来的威胁。

    Citizen Lab 已向 13 家公司发出征求意见请求,其完整回复收录于“与公司的通信”章节。

    2. Discover-Tech 的 AdFection 零点击攻击是如何运作的

    本节首次公开证实了野外环境中通过定向广告实施零点击间谍软件攻击的技术细节:即国际媒体网络 Al Jazeera 的设备如何被定位并感染佣兵团间谍软件。 我们将此类攻击称为 AdFection。利用网络分析、基础设施指纹识别和植入体行为分析,我们将 Discover-Tech 的基础设施与 Candiru 佣兵团间谍软件的分发联系起来。

    AdFection 的攻击形态

    通过 Discover-Tech 广告实施的 Candiru AdFection 案例均具有相似特征。首先,Discover-Tech 赢得竞价,其广告随即被推送到用户设备上打开的网站或应用中。用户可能会看到该广告,如图 4所示,但在某些情况下,广告可能在后台渲染。

    图 4
    可能让用户感染间谍软件的 Discover-Tech 广告。我们在浏览 CBC 和 Yahoo 网站以及使用 Android 上的数独应用时,都收到了这些广告。

    网站或应用收到广告后会将其渲染出来,并从广告内嵌的 Discover-Tech 服务器请求 JavaScript。在大多数情况下,看到广告的用户并不会被选为攻击目标,服务器也不会返回任何可供执行的 JavaScript。但广告依然会从用户的浏览器收集数据并回传给 Discover-Tech,其中可能包括承载该广告的网页上设置的 Cookie,以及设备的公网 IPv6 地址。

    确认 Al Jazeera 因 Discover-Tech 广告而遭 Candiru 间谍软件定向攻击

    2024 年至 2025 年间,国际新闻媒体 Al Jazeera(半岛电视台)遭遇了一系列零点击攻击,我们高度确信这些攻击利用的是通过 Discover-Tech 广告投放的 Candiru 间谍软件。Al Jazeera 内部至少有 45 台设备在这些攻击中成为目标。

    Al Jazeera 提供给 Citizen Lab 的攻击期间网络日志经过分析,清晰呈现出攻击执行的时序特征。受感染设备首先与 Discover-Tech 基础设施的域名产生接触,表明广告被展示;随后设备连接到一台 Candiru 验证服务器,该服务器会在设备被进一步画像和感染之前进行初步检查;最终,受感染设备会与 Candiru 的命令与控制(C&C)服务器通信。这一时序特征见图 5。

    图 5
    借助 Discover-Tech 完成 Candiru 感染的时序特征。

    对 Candiru 服务器进行指纹识别

    我们构建了一套针对 Candiru 验证服务器的指纹特征。在 Censys 上,keyadapter[.]com 和 sharethere[.]net 返回的 Banner 均匹配下列正则表达式。1 我们将此定义为 指纹 V1:

    HTTP/1\.1 [^\r\n]+\r\ndate: [^\r\n]+\r?\n(connection: [^\r\n]+\r\n)?content-type: [^\r\n]+\r\nserver: Apache[^\r\n]*\r\ncontent-length: [0-9]+\r\n.*
    HTTP/1\.1 [^\r\n]+\r\ndate: [^\r\n]+\r?\n(connection: [^\r\n]+\r\n)?content-type: [^\r\n]+\r\nserver: Apache[^\r\n]*\r\ncontent-length: [0-9]+\r\n.*

    我们在 Censys 上检索了 2022 年 8 月至 2026 年 7 月间匹配 指纹 V1 的主机,但注意到在 2026 年 5 月和 6 月,这种行为开始逐渐停止。总共,我们发现了 319 个 IP 地址上的 305 个独立域名,尽管为了节省查询成本,我们每个月仅搜索了一个 Censys 历史快照。我们找到的 305 个验证服务器域名集合中,包含了 Sekoia 公开归因于 Candiru 的域名,以及 Recorded Future 报告的域名。

    我们还识别出了攻击中使用的 C&C 服务器的另一套独立指纹,称为 指纹 C1。四台服务器与该指纹匹配(fearevolve[.]com、insightenterprisells[.]com、jobmarcher[.]com、plasticbells[.]com)。我们未能从互联网扫描数据中定位到其他三台服务器的响应。

    HTTP/1\.1 [0-9]+ \r\nDate: [^\r\n]+\r?\nContent-Type: text/html[^\r\n]*\r\nContent-Length: [0-9]+\r\nConnection: keep-alive\r\nserver: nginx\r\n$
    HTTP/1\.1 [0-9]+ \r\nDate: [^\r\n]+\r?\nContent-Type: text/html[^\r\n]*\r\nContent-Length: [0-9]+\r\nConnection: keep-alive\r\nserver: nginx\r\n$

    将攻击归因于 Candiru

    Al Jazeera 从其中一台被入侵设备中分离出一个 Windows DLL 文件,该文件包含硬编码的命令与控制服务器,且匹配指纹 C1。该样本已在 VirusTotal 上公开。

    Candiru 间谍软件样本 SHA256:255869de85e2a171993fc5eb8a556d873a1b8966e040f6f55926f2fa2d595cc8

    该样本硬编码了两个符合 Fingerprint C1 特征的 C&C 服务器:fearevolve[.]com 和 jobmarcher[.]com。其功能与我们 2021 年报告中提到的 Candiru 链大致重合。举例来说:

    • 两个样本都通过 COM 劫持实现持久化,但使用的 DLL 不同。
    • 两个样本均使用 48 字节循环 XOR 密钥混淆字符串,尽管密钥各异。两者还都有一个有趣的怪癖:混淆后的字符串中包含一个未参与去混淆的“占位”空终止符(若按密钥对其执行去混淆将毫无意义),该字符会被静默丢弃。这个占位空终止符似乎仅用于确保分配了正确大小的内存块来存放 XOR 解密后的输出。
    • 两个样本内部的配置都硬编码了相同的域名顺序列表,用于检查网络连通性:http://www.google.com 和 http://www.microsoft.com。

    COM 持久化劫持、独特的带“占位”空终止符的 48 字节循环 XOR 混淆技术,以及特定的硬编码网络连通性检查,这些特征结合在一起,使我们高度确信该样本是我们在 2021 年捕获的 Candiru 攻击链的新版本。

    3. 揭秘 Discover-Tech 的 Controlium:恶意广告定向平台

    本节考察 Controlium,这是一个提供控制面板风格接口的平台,允许雇佣兵间谍软件客户通过“受控广告”向特定用户投放恶意软件。Discover-Tech 在应用的登录页面上发布了 Controlium 前端的完整源代码,使我们得以审查并重建其用户界面。

    Discover-Tech 向客户提供的一个名为 Controlium 的平台,看起来是专门为了让客户能够在投放广告的同时,向特定目标用户推送恶意内容而设计的。客户可以在 Controlium 中根据移动广告标识符(iOS 或 Android)、浏览器标识符(MyDSP 或 Beeswax cookie ID)和/或 IP 地址,选定某个用户进行感染或画像分析。Discover-Tech 的恶意广告(称为“受控广告”)有时还会带有与 Discover-Tech 关系密切的公司的品牌标识,或者明显毫不知情的第三方公司的品牌,其中包括 Amazon 和 AliExpress。我们没有证据表明这些广告是由 Amazon 或 AliExpress 购买投放的。

    与许多 Web 应用一样,Controlium 前端的全部源代码都包含在其登录页面中。我们用浏览器访问该登录页面并将页面保存到本地,从而获取了前端的副本。2 我们修改了这份代码副本,移除了与外部服务器的所有通信,并让 UI 中的所有界面都显示出来,然后在浏览器中打开这个版本,以探索该应用的用户界面。

    在分析 Controlium 的过程中,我们只下载了公开可访问的资源,没有绕过任何访问控制。Controlium 的大部分数据,例如 Discover-Tech 客户及其运营的信息,都有意通过授权令牌加以保护。不过,我们还是通过一个无需认证的 API 端点获取了 Controlium 用户登录数据(见下文“未认证端点”一节)。我们还评估认为,黑客有可能伪造有效的授权(见下文“认证漏洞”一节),但我们并未实际测试这一点。

    归因到 Discover-Tech

    我们在以下网站上发现了 Controlium 平台:

    www.controlium[.]net
    powerium[.]net
    adv45.volasim[.]com
    adv50.volasim[.]com
    www.controlium[.]net
    powerium[.]net
    adv45.volasim[.]com
    adv50.volasim[.]com

    这些域名的 CNAME 记录都指向一个名为以下的 AWS Application Load Balancer(ALB):

    discovertech-alb-100966113.us-east-1.elb.amazonaws[.]com
    discovertech-alb-100966113.us-east-1.elb.amazonaws[.]com

    此外,Controlium 代码中的多个字符串直接引用了 Discover-Tech:

    controlium-discover-tech
    https://discovertech.us.auth0.com
    controlium-discover-tech
    https://discovertech.us.auth0.com

    更进一步,若用户尝试访问应用中名为 “/jsConfig” 的端点,应用会显示如下消息,这似乎是在指 Discover-Tech 的 CEO Dekel Boni:

    message = 'ONLY DEKEL IS ALLOWED!!!';
    message = 'ONLY DEKEL IS ALLOWED!!!';

    最后,一个未受认证保护的 API 端点(见下文“未认证端点”)显示,有频繁登录活动的用户,其姓名与 LinkedIn 上 Discover-Tech 的员工存在重叠。

    Controlium:审查管理员模式

    在 Controlium 平台上,被指定为“管理员”的账户可以为客户配置多项参数。首先,管理员可授权客户访问 Web 界面或 API。此外,Controlium 产品似乎支持“白标”功能,即更换 Logo,且访问权限可限定到特定 IP。

    图 6
    Controlium 的用户管理界面

    其次,管理员可限制客户能运行的广告活动类型。这些限制控制着他们获准竞价的 user ID 与 IP 地址组合,以及可访问的“URL 类型”。

    图 7
    Controlium 管理界面截图,所有选项均已勾选

    客户的广告竞价可设置特定的“OpSec”限制,这看起来是为了确保客户不会过度频繁或过于广泛地进行竞价:

    图 8
    Controlium 管理界面的截图。

    还有一种被称为“广告 URL OpSec(运营安全)”的操作安全类型,我们将在第 4 节中详细探讨。

    图 9
    Controlium 管理界面的截图。

    此外,客户还可根据每日或每月可运行的广告活动数量受到限制,或者通过“域名白名单”或“应用白名单”进行限制,后者似乎用于控制广告可以竞价的域名或移动应用。与攻击平台的授权惯例一致,客户还可以被限制仅通过允许列表或阻止列表在特定国家内参与广告竞价。

    图 10
    Controlium 管理界面的截图。

    Controlium:客户模式详解

    用户或客户使用该平台的具体步骤尚不明确。Controlium 的用户界面包含多个模块和表单,它们在功能上部分重叠,用于设置广告活动和监控广告数据。

    Controlium 用户可以创建一个“标签”(tag),用于定义广告图片、落地页、“NOAS URL”(详见下文:“NOAS 服务器概览”)以及用于记录展示量和点击量的 URL 的组合。

    图 11
    Controlium 标签生成器模块的截图。

    用户可以选择使用 DSP(需求方平台)来投放广告。可用选项包括 Beeswax、Eskimi 以及 Discover-Tech 自家的 MyDSP。选择 MyDSP 时,还可以进一步选择使用 Google 或 Yandex 广告交易所。

    Figure 12
    Controlium 的 Tag Generator 模块截图。

    Controlium 的 “OP Creative Upload” 模块允许用户上传并配置广告素材(例如一条广告),然后将数据上传到 DSP。用户可以为广告附加一个 tag:方式是定义落地页、NOAS URL 以及用于记录曝光和点击的 URL,或者直接粘贴由 “Tag Generation” 模块生成的 “Custom Tag”。

    Figure 13
    Controlium 的 “OP Creative Upload” 模块截图。

    可选的 DSP 包括 “MyDSP WW”、“MyDSP Yandex RU”、“Beeswax (Palm 3)”、“MyDSP Google (Palm 3)” 等。用户还可以勾选多个 “Add Ons”,例如 “Infinite FIFO”、“Detect Zuid” 和 “User Agent”。

    另一个名为 “Campaigns” 的模块允许 Controlium 用户将 “Ad URLs” 关联到选定的 “controlled ads”。根据 Controlium 的源代码,这些广告可以在移动应用或网站上投放。如截图所示,该模块允许用户设定目标 “User IDs” 并选择 “URL Type”。

    Figure 14
    Controlium 的 “Campaign” 模块截图。

    可选择的 URL 类型包括 “Ad URL”、“Test URL”、“Script”、“User Agent”、“Monitor”、“Pixel” 和 “De-anon”。我们不确定其中大部分选项的含义,但我们认为对于 “Ad URL”,NOAS 服务器会返回一段 JavaScript,向页面添加一个指向指定 URL 的 1×1 iframe;而 “Script” 可能旨在允许运行任意 JavaScript。所有 URL 都通过 NOAS 服务器投放(见下文“NOAS 服务器一瞥”)。

    身份认证漏洞

    虽然与 Controlium 客户及其操作相关的数据在名义上受授权令牌保护,但黑客似乎可以轻易伪造一个有效令牌。我们认为利用此漏洞将构成对 Discover-Tech 系统未经授权的访问,因此未尝试实际利用该问题。

    图 15
    Controlium 错误地从加密的用户元数据中推导身份验证令牌,而非使用由 Okta 返回的已签名 JWT。

    根本问题源于 Discover-Tech 对 Okta 旗下 Auth0 产品的不当使用。当 Controlium 客户通过 Auth0 进行身份验证时,浏览器会接收一个 JWT。该令牌由 Auth0 进行数字签名,包含后端服务器应当验证的作用域和过期时间等信息。然而,Controlium 忽略了此令牌,转而将一个单独的 user 对象作为令牌传递给后端服务器。该 user 对象仅包含未经验证的用户元数据,例如姓名和电子邮件地址。Controlium 使用发布在 Controlium 平台上的密钥对信息进行加密。

    值得注意的是,使用 JWT 作为授权令牌的 正确 代码实际上存在于 Controlium 平台中,但被注释掉了,以采用存在漏洞的代码替代。

    未认证端点

    在分析 Controlium 平台期间,我们发现源代码中提到了一个名为“/csv-download”的端点,该端点接受开始日期和结束日期参数。我们向该端点发送普通的 HTTP GET 请求,未提供密码、特殊头部或身份验证令牌,却收到了日志,显示了哪些用户登录了 Controlium 以及他们使用的 IP 地址。我们成功导出了长达 128 天的身份验证日志,并识别出 120 个不同的用户名登录了 controlium[.]net 和 powerium[.]net 上的 Controlium 实例。我们将在第 4 节中进一步深入分析这些数据。

    查看 NOAS 服务器

    我们通过测试“虚拟”用户 ID 值,能够从 NOAS 服务器获取代码。例如,我们发现访问:

    返回了以下内容: https://pqv2.mtrtb[.]com/getAd?idfa=test2
    var ifrm = document.createElement("iframe"); ifrm.setAttribute("src", "https://logger.powerium.net/register_event?user=dbdt&user_id=test2&bundle=&domain=&user_sha1=&exc=&name=test2&bt=&ai=&referer=&devicemodel="); ifrm.style="width:1px; height:1px; border:none;"; document.body.appendChild(ifrm);
    
    https://pqv2.mtrtb[.]com/getAd?idfa=test2 我们还能向部署在 `events-ui.myweb3id[.]io` 上的另一款 Discover-Tech 应用“Mini Platform C”发出类似 NOAS 服务器指令。
    图 16
    “Mini Platform C”应用截图。
    我们在表单中输入用户 ID“test123”和广告 URL“https://example.com/”,然后访问以下 NOAS URL 观察任务执行过程:
    https://events.platc-tester[.]com/cplatform/getAd?idfa=test123
    https://events.platc-tester[.]com/cplatform/getAd?idfa=test123 首次访问时,URL 返回如下内容:
    var ifrm = document.createElement("iframe"); ifrm.setAttribute("src", "https://example.com/"); ifrm.style="width:1px; height:1px; border:none;"; document.body.appendChild(ifrm);
    var ifrm = document.createElement("iframe"); ifrm.setAttribute("src", "https://example.com/"); ifrm.style="width:1px; height:1px; border:none;"; document.body.appendChild(ifrm); 后续访问均无任何返回。

    这个版本的"Mini Platform C"在给 NOAS 服务器下发任务时,似乎只支持"Ad URL"这一个选项,没有其他配置项。在 events-ui.discover-tech[.]io 网站上还存在一个类似的"Mini Platform C"应用版本。两个版本的 JavaScript 代码都可以在 archive.org 上找到(1、2)。

    Customer 模式的其他功能

    通过分析该应用的用户界面和源代码,我们发现 Controlium 平台还提供了多个其他模块。

    Controlium 有两个模块,名为"Targeting"(又称"Targeting Config")和"cTargeting"(又称"Upload Audiences"),用户可以通过它们上传指向单个或多个目标对象的数字标识符,包括 Android 和 Apple 设备的移动广告 ID、Beeswax 用户 ID、MyDSP 用户 ID 以及 IP 地址。"Targeting Config"模块会把上传的标识符关联到一个"segment"(受众分组)上——这是数字广告行业的通用术语,指用于定向投放的标识符列表。

    Controlium 用户可以查看某个目标标识符或 IP 地址在过去 30 分钟内的广告曝光数据:

    图 17
    Controlium"Ads Impressions"模块截图。

    另一个类似的模块名为"Bid Requests",用户可以用它查看某个特定目标标识符或 IP 地址近期的广告竞价请求数据。该模块以列表形式展示记录,内容包括用户 ID、用户访问的网站或使用的应用、用户设备的 IP 地址等属性。

    Figure 18
    Controlium 的“Bid Requests”模块截图。

    “Events Logger”模块可用于访问与广告投放相关的活动记录。Controlium 另一个名为“OP Reporting”的模块中,可选的数据源包括 MyDSP、Beeswax、Google 和 Facebook。我们不确定该模块会显示何种类型的报告数据。“Ads Dashboard”模块则提供关于广告展示量、触达用户数以及活跃活动支出金额(以美元计)的报告。

    三个名为“User Info”、“User API Info”和“User Sync Info”的 Controlium 模块,似乎在输入用户标识符后,会提供针对特定用户的关键值信息。它们提及了多个我们尚未完全理解的属性。例如,它们提供标有“UUED”和“UUPD”的用户标识符展示。其中一个模块提供“User ID Type”选择,可用选项包括“EYield”、“TYield”、“VYield”、“SYield”、“Sync_User”、“Sync_Domain”、“Sync_App”和“AH_User”。这些选项中的一些似乎与跨不同厂商的用户 ID 同步有关,详见第 6 节的进一步分析(第 6 节)。

    提供竞价请求、广告展示、事件和用户信息访问的模块,既可以用于故障排查和验证目的,也可以用来刺探目标及其他包含在竞价请求中的数据所属用户的动态。

    4. Discover-Tech 与雇佣兵间谍软件、ADINT 及大规模监控厂商的关联

    本节调查了 Discover-Tech 与雇佣兵间谍软件公司 Candiru 和 Bindecy 之间的关联。我们还展示了,除了为雇佣兵间谍软件的分发提供便利外,Discover-Tech 还与包括 Intelos 在内的 ADINT 公司存在联系。Discover-Tech 还支持一个我们称之为 DARK CARTOGRAPHER 的攻击者对互联网和应用程序用户进行大规模去匿名化操作,该攻击者利用移动网络中的漏洞来揭露用户的电话号码。

    与 Candiru/Integrity Labs 的关联

    我们观察到,Discover-Tech 利用 Controlium 的“Ad URL OpSec”功能,向 Candiru 传输加密的广告展示数据。我们识别出多条针对至少六个符合 Fingerprint V1 特征的 Candiru 感染链接(分别生成于 2024 年和 2025 年),这些链接均包含 “?q=” 参数,其值为 16 字节的 Base64 编码数据。在所有案例中,该 “?q=” 参数值均可使用网站 myipinfo[.]io 上名为“Ad URL OpSec Decoder”的页面所公开的 “V1” AES-256 密钥成功解密。myipinfo[.]io 网站显然与 Discover-Tech 有关联:被动 DNS 数据显示,该网站与 Discover-Tech 的其他网站(包括 powerium[.]net 和 myweb3id[.]io)在 IP 地址和 CNAME 记录上存在多处重叠(另见 第 7 节)。

    一个带有 Discover-Tech Ad URL OpSec 参数的 Candiru 感染链接 已在 VirusTotal 上公开列出。该链接中的 “?q=” 参数解密后指向一个注册于沙特阿拉伯外交部的 IP 地址,这表明该机构可能是 Candiru 间谍软件通过 Discover-Tech 广告进行攻击的潜在目标:

    Figure 19
    Discover-Tech 的“Ad URL OpSec Decoder”显示,提交至 VirusTotal 的 Candiru 感染链接携带运营数据,表明沙特阿拉伯外交部可能是其潜在的间谍软件目标。

    我们认为,包含此类 OpSec 数据是为了促成 Discover-Tech 与攻击者之间的安全交接。攻击者可能会将感染链接的访问者 IP 与 Discover-Tech 加密的 IP 进行比对,以确认广告展示触发的链接未被静默替换至其他设备(例如,安全研究人员可能会这样做以捕获漏洞利用载荷)。

    追踪 Candiru/Integrity Labs 的销售团队

    通过一个未授权的 API 端点分析 Controlium 的用户登录记录后(见第 3 节),我们发现有两名用户曾从以色列的一个 IP 地址登录 Controlium,我们认为该 IP 属于 Candiru/Integrity Labs。其中一位用户(我们称之为 INTEGRITYPRESALE1),与 LinkedIn 上一名任职于“Cyber Security Company”、职位为“Head of Presale”的以色列人士姓名吻合。“Cyber Security Company”这个页面名义上属于一家雅加达的公司,但我们认为该用户选择它是因为其名称足够通用,只点明了所在的行业,而不暴露具体的公司名称。在 LinkedIn 上查看“Cyber Security Company”页面时,“大家还看了”面板的前三位分别是“Integrity Labs”、“NSO Group”和“Integrity Lab”(显然是“Integrity Labs”的拼写错误)。

    Figure 20
    Integrity Labs 页面及其拼写错误版本,同时出现在 LinkedIn 上“Cyber Security Company”的“大家还看了”面板中。

    第二位从 Integrity Labs IP 地址登录的用户(我们称之为 INTEGRITYPRESALE2),其用户名似乎包含一个名字,并以“_pap_pres”结尾。我们猜测“_pres”代表“presale”(售前)。LinkedIn 上确有一位用户名与该名字相符的人,职位是“Cyber Security Company”的“Presales Engineer”,但无法确定是同一个人。

    我们发现 INTEGRITYPRESALE1 和 2 曾从以下国家登录 Controlium:阿塞拜疆、捷克、以色列、意大利、墨西哥、黑山、阿联酋和美国。

    我们不确定“pap”指的是什么,但注意到只有另外两个用户名包含“pap”字符串。它们属于一组仅从内网 IP 10.0.0.52 登录的用户,我们推测这些可能是更多与 Candiru 相关的用户:

    Aurora_api, Barbara, Chameleon, CS, Fox, Heron, Journey, MobyDick, Oris, papdev2, papplayg, Presale, Scorpion, spare2
    Aurora_api, Barbara, Chameleon, CS, Fox, Heron, Journey, MobyDick, Oris, papdev2, papplayg, Presale, Scorpion, spare2

    Candiru 的用户画像服务器

    在 2025 年追踪 Candiru 基础设施期间,我们发现两个符合 指纹 C1 的域名在 2025 年 3 月 18 日相隔两小时内相继注册,且其 SOA 记录中均包含 info@rockhoster[.]com:

    outdooutcome[.]com
    suggestutterly[.]com
    outdooutcome[.]com
    suggestutterly[.]com

    第三个外观相似的域名也在 2025 年 3 月 18 日同一时间窗口内注册,SOA 记录同样带有 info@rockhoster[.]com,但它从未匹配上我们的 Candiru 指纹:

    sincereaccertain[.]com
    sincereaccertain[.]com

    不过,我们注意到从 2025 年 4 月起,指向 sincereaccertain[.]com 的 URL 开始通过 Discover-Tech 的广告进行分发。URL 形式如下:

    https://sincereaccertain[.]com/?qq=[...]
    https://sincereaccertain[.]com/?qq=[...]

    qq 参数中包含 Base64 数据。将这些 Base64 数据粘贴到 Discover-Tech 的“广告 URL OpSec 解码器”(见上文)后,成功使用其“V2”AES 解密方案完成了解密。解密后的数据格式如下:

    <IP>|<Timestamp>|<User-Agent>|<Ad-ID>
    <IP>|<Timestamp>|<User-Agent>|<Ad-ID>

    2025 年 5 月,我们观察到 d1fcoizt7mje85.cloudfront[.]net 的 URL 和数据也解密为相同的格式。我们推断 sincereaccertain[.]com 与 d1fcoizt7mje85.cloudfront[.]net 存在关联,因为这两个域名的 URL 似乎都通过同一个 Infinite FIFO ID(编号 778)进行分发。d1fcoizt7mje85.cloudfront[.]net URL 的分发活动似乎在 2025 年 12 月停止。我们估计,通过 Discover-Tech 广告被引导至这些域名的用户数量在数十万到数百万之间。

    在 2026 年 1 月之前,我们未检测到类似活动。2026 年 1 月,Discover-Tech 似乎对其 Infinite FIFO 功能进行了迭代升级。与这些新 Infinite FIFO 相关的 NOAS URL 为 ppv2[.]mtrtb[.]com。在 2026 年 1 月至 6 月期间,我们利用该服务器上的未认证端点获取了统计数据,直至 Discover-Tech 移除此端点为止。这些统计数据(除其他信息外)记录了“合格用户”的数量,即被导向 ppv2[.]mtrtb[.]com 且预期接收 infinite FIFO 代码的用户数。在此期间,我们统计到合格用户总数为 3,637,213。不过需注意,除 Candiru 外,Discover-Tech 的其他客户也可能在使用 Infinite FIFO 功能。

    2026 年晚些时候,我们注意到迁移至我们评估的“V3 OpSec”方案。该方案允许为参数指定自定义名称(而非固定的“qq”),例如我们观察到的“impid”,并支持按用户设置密钥。由于 Discover-Tech 未及时更新其“Ad URL OpSec Decoder”,导致我们无法解密相关数据。

    我们无法从 sincereaccertain[.]com 或这些 CloudFront 分发节点获取任何 JavaScript 代码,这很可能归因于 Discover-Tech 的 Ad URL OpSec 功能。但我们注意到,Confiant 已成功获取相关代码。

    Bindecy

    基于对未认证 API 端点用户登录记录的分析(详见第 3 节),我们发现 maya 和 mayaqa 这两个用户从包括以色列 IP 地址 62.90.129.xxx 在内的多个 IP 地址登录了 Controlium。我们注意到,该 IP 地址正在管理多个使用由“cupid-ca”签发的自签名证书的网站:

    beachvibesnow[.]com
    enjoymultiplecats[.]com
    icecreamtester[.]com
    beachvibesnow[.]com
    enjoymultiplecats[.]com
    icecreamtester[.]com

    我们在 Censys 上共发现七个由“cupid-ca”签发的证书。相关域名还包括 pickarest[.]com 和 infoanalytics[.]live,两者解析到的 IP 均在 8443 端口(未启用 TLS)返回一个独特的测速页面:

    services.http.response.body_hashes="sha256:63c2963a7abc1e4ee083275e5582a52f1101dba9905fd35498726359abf95a71"
    services.http.response.body_hashes="sha256:63c2963a7abc1e4ee083275e5582a52f1101dba9905fd35498726359abf95a71"

    符合该指纹的 IP 之一是 52.174.65.77,其对应的域名为:

    archer.westeurope.cloudapp.azure[.]com
    archer.westeurope.cloudapp.azure[.]com

    指向同一 IP 的其他域名则关联到一个 Heroku 应用:

    bd-mainserver.herokuapp[.]com
    bd-mainserver.herokuapp[.]com

    据我们与合作伙伴的了解,Bindecy 旗下有名为“Archer”和“Cupid”的产品。我们推测“bd-mainserver”中的“bd”也是指 Bindecy。

    我们追溯到 Bindecy 的部分域名,注册方是一家以色列软件公司 Moveo Group。此外,还有一个域名以一位以色列 Web 开发者兼企业家的名字注册,与 Bindecy 之间没有明显关联。

    我们对 Bindecy 的服务器进行了指纹识别,确定了部分 Bindecy 操作人员所在的位置:比利时、德国、挪威、葡萄牙、瑞典、新加坡和西班牙。我们还发现一个疑似在墨西哥和哥伦比亚使用 Bindecy 间谍软件的客户,但未能确定其操作人员的位置。

    关于以色列间谍软件厂商 Bindecy 及其企业网络的更多讨论,见第 8 节。

    在规定期限内,Bindecy 未对我们寻求置评的请求作出回应。

    与 Intelos、DARK CARTOGRAPHER 及其他厂商的关联

    Intelos

    基于对未认证 API 端点(第 3 节)用户登录记录的分析,我们发现多个用户从 IP 地址登录 Controlium,而这些 IP 地址返回的证书均指向 globaldatapoints[.]com。我们还查到被动 DNS 数据,显示 globaldatapoints[.]com 的某个子域名包含一条 CNAME 记录,其目标中包含“Intelos”字样。

    图 21
    globaldatapoints[.]com 的一个子域名指向一个 AWS 弹性负载均衡器,该负载均衡器的名称包含字符串“intelos”。

    此外,globaldatapoints[.]com 的某个子域名曾短暂返回一个名为“AD/HOC”的应用程序登录页面。据报道,AD/HOC 是 Intelos 的一款产品名称。

    图 22
    globaldatapoints[.]com 某子域名所指向的 IP 地址返回了名为“AD/HOC”的应用程序。

    我们识别出至少 15 名我们推测与 Intelos 相关的 Controlium 用户。表 1 列出了那些从非 VPN 或代理位置登录的用户:

    用户名登录来源
    bear比利时、以色列、新加坡、波兰
    timtamteam64以色列、西班牙
    liinine77263, johny7716243马其顿
    Landrover西班牙
    bear_solo匈牙利
    carpe_eb以色列、葡萄牙、阿联酋
    rollsgreen1西班牙
    JonG比利时、捷克、希腊、法国、以色列、意大利、塞尔维亚
    mishreg以色列、拉脱维亚
    Barhi以色列、泰国
    metalica1比利时
    表 1
    Controlium sign-ins from Intelos-linked users.
    雇佣兵公司 Intelos 据报道既提供基于广告的地理定位监控服务,也通过广告投放间谍软件。该公司与 Discover-Tech 之间存在进一步关联:Intelos 股东 Eric Banoun(2018 年至今)曾同时担任 Discover-Tech 董事(2020 至 2025 年),具体细节见第 8 节。 Intelos 未在我们规定的时间范围内回应置评请求。

    黑暗制图师:利用广告进行大规模身份去匿名化

    我们识别出 Discover-Tech 的广告在利用广为人知的“WebRTC IP 泄露”漏洞,该漏洞可能导致使用 VPN 或代理服务的用户 IP 地址暴露。这些广告还试图识别看到广告的移动用户电话号码(MSISDN)。MSISDN 泄露利用了多种问题,包括所谓“零点击登录”技术中普遍存在的缺陷。该技术在移动设备上旨在简化身份验证和购买流程。
原始来源: Hacker News

评论 (0)