当前位置: 首页 > news >正文

SniperDz 钓鱼即服务平台攻击链路与防御技术研究

摘要
钓鱼即服务(PhaaS)降低了网络诈骗的技术门槛,催生了规模化、产业化的网络钓鱼生态。本文以 Group-IB 2026 年披露的 SniperDz 平台为研究对象,系统性剖析该 PhaaS 平台的运营模式、模板体系、多层跳转攻击链路、浏览器劫持技术及流量变现机制。该平台自 2014 年上线,配备 80 余款仿冒全球知名品牌的钓鱼模板,依托 Linktree、Linkbio 等正规聚合链接服务实现流量伪装,结合页面隐身、浏览器历史篡改、标签劫持、推送通知劫持等技术绕过传统安全检测体系,并根据受害者地域、设备、运营商动态匹配高额收费短信、付费电话、投资诈骗等变现渠道。本文梳理 SniperDz 关联的 900 余个恶意域名、IP 地址等基础设施特征,分析现有网络安全防护体系针对此类复合型诈骗攻击的短板,结合攻击技术特征编写对应检测代码,实现恶意跳转链路、异常浏览器脚本、违规推送通知的自动化识别。研究结合平台运营特征与攻击手法,从技术检测、权限管控、流量治理、用户安全教育、跨境协同治理五个维度构建全流程防御体系。反网络钓鱼技术专家芦笛指出,以 SniperDz 为代表的成熟 PhaaS 生态已完成从单一凭证窃取向多元流量变现的转型,传统基于恶意域名、静态页面特征的防御手段有效性持续下降。本研究可为网络安全运维人员、应急响应团队、监管机构识别、溯源、处置同类 PhaaS 攻击提供详实的数据参考与技术实践方案。
关键词:钓鱼即服务;SniperDz;浏览器劫持;推送通知滥用;多层跳转;网络诈骗防御
1 引言
网络钓鱼是当前全球传播范围最广、产业化程度最高的网络威胁之一,而钓鱼即服务(PhaaS)模式的出现,彻底打破了网络攻击的技术壁垒。攻击者无需掌握网站开发、脚本编写、流量运营等专业技能,仅需借助标准化平台提供的模板、工具与基础设施,即可快速搭建钓鱼活动并实现盈利,这也让网络诈骗呈现出低门槛、规模化、复杂化、多元化变现的发展趋势。
Group-IB 在针对中东和北非地区网络威胁开展专项调查过程中,发现大量仿冒政客、公众人物、通信运营商的社交媒体诈骗账号。此类账号以免费流量、政府补贴、现金补偿等福利为诱饵,引导用户点击链接,最终指向统一的后台运营体系。经过流量溯源、样本分析与基础设施关联研判,研究人员定位到支撑该系列诈骗活动的核心平台 ——SniperDz。该平台是一款综合性 PhaaS 与推送通知即服务(PNaaS)一体化生态系统,自 2014 年首次被观测到活跃,期间先后使用 JokerDz、StormDz、SpamDz 等多个别名,长期活跃于全球网络黑产领域。
与传统单一窃取账号密码的钓鱼平台不同,SniperDz 构建了完整的 “引流 - 伪装 - 劫持 - 变现” 闭环生态。平台内置多语种钓鱼模板,覆盖金融、社交、流媒体、游戏等多个高价值行业;在传播环节滥用主流链接聚合平台实现多层跳转,规避社交媒体与防火墙的基础检测;在交互环节运用页面隐身技术、浏览器历史篡改、标签劫持、推送通知劫持等多种浏览器操控手段,强制滞留用户流量;在变现环节基于用户画像动态分发不同诈骗模式,包括高额收费短信订阅、付费电话、虚假投资、客户信息倒卖等。截至目前,该平台关联的可疑域名数量已超过 900 个,依托统一托管服务商搭建分布式基础设施,攻击辐射范围覆盖全球多个国家和地区。
当前国内及全球多数安全防护方案,主要针对传统直连式钓鱼链接、静态恶意页面开展检测,对于多层跳转、依托正规平台中转、滥用浏览器原生功能的复合型诈骗攻击识别能力不足。同时,网络安全研究领域针对 SniperDz 这类老牌综合性 PhaaS 平台的全链路拆解、技术特征提取、自动化检测方案的落地研究相对有限。基于这一现实背景,本文以 Group-IB 公开的一手监测数据与样本信息为基础,逐层拆解 SniperDz 平台的架构、攻击流程、核心技术、变现模式与基础设施特征,编写适配实战场景的检测代码,客观分析防御难点,并搭建分层防御体系。全文研究范围聚焦 SniperDz 生态的攻击技术与对抗策略,不拓展至其他无关 PhaaS 平台,保证论据闭环、主题聚焦,为应对同类产业化钓鱼攻击提供实践支撑。
2 SniperDz 平台整体概况与基础特征
2.1 平台发展历程与基础属性
SniperDz 是一款运营周期长达十余年的老牌黑产服务平台,首次活跃记录可追溯至 2014 年 11 月,在长期运营过程中不断迭代功能、拓展业务场景、更换对外名称以规避溯源打击,先后使用 JokerDz、StormDz、SpamDz 等多个别名。该平台核心定位为附属联盟式 PhaaS+PNaaS 综合服务生态,面向全球低技术门槛黑产从业者提供一站式诈骗解决方案,使用者无需具备网页开发、脚本编写、网络运维等专业能力,依托平台现成工具即可批量开展诈骗活动。
从技术能力与工具集来看,SniperDz 团队掌握完整的前端脚本开发能力,擅长制作钓鱼页面、编写点击劫持、浏览器历史篡改、标签劫持等恶意 JavaScript 脚本;同时精通流量伪装、反爬虫、域名伪装、免费托管平台利用等规避检测技术,还深度布局手机计费、高额短信订阅等电信诈骗业务,形成了技术、流量、变现三位一体的黑产体系。平台目标覆盖全球范围,重点深耕中东和北非区域,结合当地语言、民俗、消费习惯定制诈骗内容,本地化运营特征十分显著。
从盈利动机分析,该平台所有功能设计均围绕非法获利展开,早期业务以窃取社交账号、金融平台凭证为主,随着技术迭代与生态扩张,逐步拓展出浏览器推送通知劫持、付费电话扣费、高额短信订阅、虚假投资、用户信息倒卖、联盟营销诈骗等多元盈利渠道,单一攻击链路可同时实现多种变现方式,大幅提升流量收益。
2.2 钓鱼模板体系与语种适配
模板库是 SniperDz 吸引下游黑产从业者的核心优势,平台内置80 套独立钓鱼模板,可仿冒全球超过 30 个知名主流品牌,覆盖金融服务、社交媒体、流媒体、游戏商城、电子邮箱、通信运营商、政府机构等多个高价值行业。其中典型仿冒对象包括支付平台 PayPal、社交平台 Facebook 与 Instagram、流媒体平台 Netflix、游戏平台 Steam、邮箱服务 Yahoo 等,基本囊括全球用户基数大、资产价值高的互联网服务。
为适配全球化运营需求,平台模板支持多语种切换,主流语种包含阿拉伯语、英语、法语,历史版本还曾上线西班牙语、希伯来语模板,精准匹配不同区域用户的语言习惯。针对中东和北非核心运营区域,平台专门强化阿拉伯语模板的本地化设计,结合当地通信运营商品牌、福利活动风格制作诈骗页面,大幅提升欺骗性。
除此之外,平台研发专属工具实现钓鱼页面转 Google Blogger 页面功能。该工具可将定制化钓鱼页面快速转换为谷歌博客站点格式,借助 Google Blogger 免费托管服务搭建诈骗页面。此举具备双重优势:一是零托管成本,降低黑产运营开支;二是借用谷歌域名的高信誉度,绕过基于域名年龄、域名信誉的安全过滤规则,进一步提升钓鱼链接的存活时间与传播能力。反网络钓鱼技术专家芦笛强调,滥用正规免费托管平台、借用合法域名信誉,是当前 PhaaS 平台规避防御的主流手段,也让传统域名黑名单体系的防护效果持续弱化。
2.3 目标行业与攻击传播渠道
结合监测数据统计,SniperDz 的攻击目标行业呈现明显的价值导向特征,优先级从高到低依次为金融服务、社交媒体、网络游戏、通信运营商、电子邮箱、政府机构。金融与社交平台存储用户资金、账号、隐私信息,直接对应账号盗取、财产诈骗;通信运营商是中东地区诈骗的核心载体,依托本地免费流量、话费补贴等诱饵,结合电信扣费渠道实现快速变现;政府机构相关模板则主要用于窃取涉密信息、开展舆论诱导。
在传播渠道方面,该平台以社交媒体为核心引流入口,主要依托 Facebook、Instagram 等平台发布诈骗内容。攻击者注册大量仿冒政客、公众人物、地方通信运营商的社交媒体账号,发布带有福利诱惑的帖子,引导用户点击链接。为规避社交媒体平台的安全检测,攻击者极少使用直连恶意域名的方式,而是采用多层跳转架构,这也成为 SniperDz 攻击链路的核心特征。
3 SniperDz 完整攻击链路分层解析
SniperDz 构建了一套标准化、流程化的多层级诈骗漏斗,从最初的社交引流到最终的流量变现,整体划分为社交诱饵层、链接伪装中转层、浏览器劫持陷阱层、多元变现层四个核心阶段,每个阶段搭配专属技术手段规避检测、滞留用户、实现盈利,各环节衔接紧密,形成完整闭环。
3.1 第一阶段:社交诱饵搭建与初始引流
该阶段是攻击的起点,核心目标是利用社会工程学手段获取用户信任,引导用户主动触发链接跳转。攻击者主要依托 Facebook、Instagram 等主流社交媒体开展活动,核心操作分为账号伪装、内容制作、诱饵投放三部分。
在账号伪装环节,攻击者批量注册社交媒体账号,头像、昵称、简介全面仿冒当地知名政客、公众人物、区域通信运营商官方账号,部分账号还会伪造平台认证标识,进一步提升可信度。在内容制作环节,结合目标区域用户需求设计诱饵,中东和北非地区以免费移动流量、大额话费补贴、政府现金补偿、限时福利礼包为主,文案使用本地阿拉伯语编写,排版、风格完全模仿正规运营商宣传内容,贴合当地用户认知。
在诱饵投放环节,诈骗帖子公开发布在社交账号主页、社群、推荐信息流中,文案附带行动指令,诱导用户 “点击链接领取福利”“输入手机号完成登记”。从表面来看,此类帖子与正常商业推广内容无明显差异,普通用户难以分辨真伪。该阶段不直接放置恶意链接,为后续多层中转埋下伏笔。
3.2 第二阶段:正规平台中转与流量伪装
为绕过社交媒体平台的恶意链接检测机制,SniperDz 全面放弃直连恶意域名的模式,采用可信链接聚合平台作为中转节点,这也是整个攻击链路中最关键的伪装环节。攻击者主要滥用 Linktree、Linkbio 等全球知名链接聚合服务,这类平台拥有极高的域名信誉,主流安全设备、社交媒体平台通常不会对其进行拦截。
具体流程为:社交媒体帖子中放置指向 Linktree、Linkbio 旗下域名(例如 fanlnk.to)的链接,用户点击后首先跳转至链接聚合平台的伪装落地页。该落地页沿用此前的福利宣传主题,页面内设置多个功能按钮,表面上区分不同福利类型,但后台代码显示,页面内所有按钮均指向同一个攻击者控制的追踪域名。无论用户点击任意按钮,流量都会统一被导向 SniperDz 的核心恶意基础设施。
多层中转架构具备极强的对抗能力:第一层社交媒体平台链接指向高信誉聚合域名,规避初始拦截;第二层聚合平台页面作为过渡,模糊流量去向;第三层才真正接入恶意站点。多层跳转拉长了流量路径,增加了安全设备全链路检测的难度,同时正规平台的域名信誉能够掩护后端恶意流量。同时,该阶段站点还集成隐身(Cloaking)技术,具备访问者识别能力:当检测到安全研究员、网络爬虫、自动化扫描工具访问时,页面会自动切换为正常错误页面,隐藏恶意内容;仅对普通真实用户展示诈骗页面,从源头规避样本抓取与特征分析。
3.3 第三阶段:浏览器劫持与用户滞留陷阱
流量进入攻击者核心基础设施后,便进入陷阱阶段。该阶段综合运用推送通知劫持、浏览器历史篡改、标签劫持三大浏览器操控技术,核心目标是长期控制用户浏览器、阻止用户退出诈骗链路、维持流量价值,也是 SniperDz 技术复杂度最高的环节。
3.3.1 浏览器推送通知劫持
这是该平台实现长期持续引流的核心技术。用户跳转至恶意页面后,页面展示加载动画与引导文字,提示用户 “点击允许以继续领取福利”“点击允许完成身份验证”,将浏览器推送通知请求伪装成福利领取的必要步骤。普通用户在福利诱惑下,往往会直接点击 “允许” 按钮。
页面后台脚本调用统一的 VAPID 公钥完成推送订阅注册,该公钥在 SniperDz 所有诈骗样本中重复出现,成为识别该生态的重要基础设施指纹。一旦用户授权,脚本会收集推送订阅令牌、用户语言、设备信息、追踪标识等数据,并回传至攻击者服务器。此后,即便用户关闭当前页面,攻击者仍可通过浏览器推送功能,持续向用户推送诈骗广告、钓鱼链接、各类欺诈内容,实现长期流量复用。
3.3.2 浏览器历史篡改(返回按钮陷阱)
为防止用户发现异常后退出页面,平台部署浏览器历史篡改代码。脚本会自动向用户的浏览器历史记录中批量插入 10 条以上虚假访问记录。当用户点击浏览器 “返回” 按钮试图退出时,并不会回到上一级正规页面,而是在虚假历史记录中循环跳转,陷入 “返回按钮监狱”,始终停留在攻击者控制的站点范围内,无法脱离诈骗生态。该技术针对普通用户的操作习惯设计,大幅提升用户滞留时长。
3.3.3 标签劫持(Tab-under)
该技术主要用于多标签浏览场景。当用户点击页面内链接新建浏览器标签时,脚本会触发延迟跳转逻辑:新标签打开目标页面的同时,原本的标签页会在后台静默跳转至其他恶意站点。这种方式能够在用户无感知的情况下,进一步扩大恶意流量规模,最大化流量变现收益。
三大技术组合使用,构建了立体化的用户滞留体系,短期限制用户退出页面,长期通过推送通知持续控制终端,让单次引流行为产生多次变现价值。
3.4 第四阶段:用户画像匹配与多元流量变现
完成浏览器权限劫持后,平台进入最终的变现环节。SniperDz 搭建了中心化流量分发引擎,具备用户画像识别与动态路由能力,服务器自动采集用户终端类型、所在地理位置、手机运营商等信息,根据不同画像将流量导向对应变现渠道,实现收益最大化。平台主要包含四类变现模式,覆盖即时扣费与长期信息窃取两大方向。
第一类是高额付费电话诈骗。系统识别用户手机运营商后,页面引导用户拨打指定号码 “兑换奖品”“验证资格”,该号码属于国际高额收费服务热线,通话费用会直接通过手机运营商结算,攻击者按照通话时长获取分成收益。
第二类是高额短信订阅诈骗。页面伪装成趣味答题、资格调查问卷,用户完成交互后,后台会在无明确告知的情况下,为用户开通自动续费的高额短信订阅服务,持续扣除手机话费,且订阅服务隐蔽性较强,普通用户难以发现与取消。
第三类是虚假投资诈骗。针对特定区域、特定设备的用户,流量会被导向仿冒财经媒体、虚拟货币交易、股票交易的虚假投资平台。页面诱导用户填写姓名、手机号、邮箱等个人信息,收集的敏感数据一方面用于后续精准诈骗,另一方面可批量出售给黑产下游,实现数据变现。
第四类是联盟营销诈骗与二次引流。部分流量会被导向各类灰色联盟广告、第三方诈骗站点,攻击者依靠流量分成获取收益。同时,结合此前劫持的浏览器推送权限,持续推送各类诈骗内容,形成循环引流。
整体来看,SniperDz 并非单一钓鱼站点,而是以流量为核心的综合型黑产交易平台,所有技术设计、链路搭建最终均服务于流量变现,产业化特征极为突出。
3.5 平台基础设施与关联资产
经过 Group-IB 溯源分析,SniperDz 生态拥有规模化的基础设施集群,核心托管服务商为 Horizon IQ,关联三台核心 IP 节点:65.60.9.236、108.178.23.118、184.154.10.254。这三组 IP 关联了超过 900 个可疑域名,其中典型代表性域名包括 win.feezossl.xyz、win.anababayala.com、aff.bnaosf1he.shop、offer.raviral.com等。
这些域名分工明确,分别承担流量跳转、页面托管、数据接收、推送服务等不同功能,域名体系庞大且更新频繁。同时,平台复用同一组 VAPID 公钥作为推送服务的统一标识,该指纹不受域名、IP 变更影响,是跨样本、跨活动关联 SniperDz 攻击的核心特征。基础设施的集中托管、大规模域名集群、固定技术指纹,也为安全团队开展溯源、批量处置提供了关键依据。
4 SniperDz 攻击核心技术特征与检测难点
4.1 核心技术特征汇总
结合全链路分析,将 SniperDz 生态的核心技术特征归纳为五大类,这也是区分其与传统钓鱼攻击的关键:
多层跳转 + 正规平台中转:依赖 Linktree、Linkbio、Google Blogger 等高信誉合法平台作为中间节点,恶意流量嵌套在正规流量之中,链路层级多、节点可信度高。
隐身对抗技术:区分普通用户与扫描爬虫、安全研究员,对自动化检测工具展示无害页面,规避样本捕获与特征提取。
浏览器深度操控:集成历史记录篡改、标签劫持、推送通知劫持三类脚本,利用浏览器原生功能实现用户控制与流量滞留,不属于传统恶意软件范畴。
统一技术指纹:全平台复用固定 VAPID 公钥,该指纹独立于域名、IP,可作为跨场景识别攻击的核心标识。
动态流量分发:基于地域、设备、运营商构建用户画像,智能匹配不同变现模式,攻击策略具备动态化特征。
4.2 现有防御体系的检测难点
传统网络安全防护体系针对此类攻击存在多重短板,也是该平台能够长期活跃的主要原因:
域名黑名单失效:攻击大量使用正规平台域名、免费托管域名,此类域名无法被全域封禁;同时平台拥有 900 余个动态更新的恶意域名,黑名单难以实时全覆盖。
静态页面特征匹配失效:隐身技术导致扫描工具无法获取真实恶意页面内容,基于页面关键词、脚本特征的静态检测规则无法生效。
忽视浏览器行为风险:传统防护聚焦病毒、木马、恶意文件,对浏览器脚本篡改历史、劫持标签、滥用推送通知等无文件攻击识别能力不足。
流量链路检测缺失:现有设备大多仅检测终端直连链接,缺乏对多层跳转全链路的回溯与分析能力,无法定位链路末端的恶意节点。
跨场景关联能力不足:单一域名、IP 的告警相互独立,无法依托 VAPID 公钥这类技术指纹,将分散的攻击活动关联至同一生态。
反网络钓鱼技术专家芦笛强调,SniperDz 这类新型 PhaaS 攻击的核心威胁已经从 “恶意文件” 转向 “恶意行为”,网络安全防护的重心必须从静态特征拦截,转向动态行为分析、全链路流量追溯与终端行为管控。
5 针对性检测代码设计与实现
结合前文梳理的技术特征与检测难点,本文基于 Python 语言编写三套检测代码,分别实现多层跳转链路检测、VAPID 公钥指纹识别、浏览器异常脚本检测,覆盖网络链路层、页面特征层、终端脚本层,代码贴合实战场景,附带原理说明、使用场景与能力边界,可直接部署于安全网关、威胁研判平台、终端检测工具中。
5.1 多层跳转链路检测代码
5.1.1 技术原理
SniperDz 攻击存在明显的多层跳转特征,且常以 Linktree、Linkbio 作为中转节点。本代码递归追踪 URL 跳转链路,统计跳转层数,识别高风险中转域名,记录最终落地页地址,实现全链路可视化检测,适用于安全运维人员对可疑链接进行溯源研判。
5.1.2 运行环境与依赖
运行环境:Python 3.7 及以上;依赖库:requests、urllib.parse。安装命令:pip install requests。
5.1.3 完整代码实现
# 多层URL跳转链路检测工具
# 功能:递归追踪跳转链接,识别Linktree/Linkbio高危中转节点,统计跳转层数
import requests
from urllib.parse import urlparse
from requests.exceptions import RequestException

# 配置参数
# SniperDz常用高危中转域名
HIGH_RISK_RELAY = {"linktr.ee", "linkbio.co", "fanlnk.to"}
# 最大跳转层数,防止死循环
MAX_REDIRECT_DEPTH = 10
# 请求头,模拟正常浏览器
HEADERS = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
}

def trace_redirect_chain(start_url: str) -> dict:
"""追踪URL跳转链路,返回链路详情、层数、风险标记"""
chain = []
current_url = start_url
depth = 0
risk_flag = "正常"

while depth < MAX_REDIRECT_DEPTH:
parse_res = urlparse(current_url)
domain = parse_res.netloc
# 记录当前节点
chain.append({
"depth": depth + 1,
"url": current_url,
"domain": domain
})
# 检测是否为高危中转域名
if domain in HIGH_RISK_RELAY:
risk_flag = "高危(存在PhaaS中转节点)"

try:
# 关闭自动跳转,手动捕获3xx跳转状态码
resp = requests.get(current_url, headers=HEADERS, allow_redirects=False, timeout=8)
# 3xx状态码代表跳转
if 300 <= resp.status_code < 310:
next_url = resp.headers.get("Location")
if not next_url:
break
current_url = next_url
depth += 1
else:
# 无跳转,链路结束
break
except RequestException:
chain.append({"depth": depth + 1, "url": current_url, "domain": domain, "note": "访问失败"})
break

return {
"start_url": start_url,
"redirect_count": len(chain) - 1,
"full_chain": chain,
"risk_level": risk_flag,
"final_url": chain[-1]["url"] if chain else ""
}

def batch_check(url_list: list):
"""批量检测URL跳转链路"""
print("===== 多层跳转链路检测结果 =====")
for url in url_list:
result = trace_redirect_chain(url)
print(f"初始链接:{result['start_url']}")
print(f"跳转层数:{result['redirect_count']} | 风险等级:{result['risk_level']}")
print("完整链路:")
for node in result["full_chain"]:
print(f" 第{node['depth']}层:{node['url']}")
print("-" * 80)

if __name__ == "__main__":
# 测试用例:包含正常链接、含Linkbio中转的恶意链接
test_urls = [
"https://www.official-telecom.com/promotion",
"https://fanlnk.to/relay123",
"https://linktr.ee/telecom-offer"
]
batch_check(test_urls)
5.1.4 代码说明与能力边界
本代码手动捕获 HTTP 3xx 跳转状态码,递归解析全链路节点,精准识别 SniperDz 常用的链接聚合平台。适用于威胁情报研判、邮件网关可疑链接筛查。能力边界:无法识别页面内 JS 实现的前端跳转,仅能检测 HTTP 协议层面的服务端跳转;需持续更新HIGH_RISK_RELAY域名列表,适配新的中转节点。
5.2 VAPID 公钥指纹检测代码
5.2.1 技术原理
固定 VAPID 公钥是 SniperDz 生态的核心指纹。本代码请求页面 HTML 内容,正则匹配页面中出现的 VAPID 公钥字符串,以此判断页面是否归属该诈骗生态,适用于恶意页面样本研判、内网站点巡检。
5.2.2 运行环境与依赖
Python 3.6 及以上,依赖requests、re库。安装命令:pip install requests。
5.2.3 完整代码实现
# VAPID公钥指纹检测工具
# 功能:检测页面中是否存在SniperDz专属VAPID公钥,识别关联攻击页面
import re
import requests
from requests.exceptions import RequestException

# SniperDz全样本复用的VAPID公钥
SNIPERDZ_VAPID_KEY = "BHR8bZ93X3YNBNQcN_dGRYtnWqdsJXR2bXqq3vhfBL1TpfZqrGKXYxATKGNHa25HyaghKK8ZiaFXbIgJqY2624A"
# 正则匹配VAPID密钥片段
vapid_pattern = re.compile(re.escape(SNIPERDZ_VAPID_KEY))
HEADERS = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}

def check_vapid_fingerprint(url: str) -> dict:
"""检测页面VAPID指纹"""
result = {
"url": url,
"access_status": "正常",
"is_sniperdz": False,
"detail": ""
}
if not url.startswith(("http://", "https://")):
result["access_status"] = "协议非法"
return result
try:
resp = requests.get(url, headers=HEADERS, timeout=8)
html_content = resp.text
# 匹配专属VAPID公钥
if vapid_pattern.search(html_content):
result["is_sniperdz"] = True
result["detail"] = "页面包含SniperDz专属VAPID公钥,判定为关联诈骗页面"
else:
result["detail"] = "未匹配到SniperDz VAPID指纹"
except RequestException as e:
result["access_status"] = f"访问失败:{str(e)}"
return result

def batch_scan(url_list: list):
print("===== VAPID指纹批量检测结果 =====")
for url in url_list:
res = check_vapid_fingerprint(url)
print(f"目标链接:{res['url']}")
print(f"访问状态:{res['access_status']}")
print(f"检测结果:{res['detail']}\n")

if __name__ == "__main__":
test_urls = [
"https://win.feezossl.xyz",
"https://www.normal-page.com"
]
batch_scan(test_urls)
5.2.4 代码说明与能力边界
该代码以固定 VAPID 公钥为核心特征,不受域名、IP 变更影响,是跨样本关联 SniperDz 攻击的有效手段。能力边界:若攻击者对密钥进行分段、编码混淆,会导致匹配失效;同时无法对抗隐身页面,被识别为爬虫时页面会返回正常内容,造成漏检。建议搭配多维度访问模拟工具使用。
5.3 浏览器异常脚本检测代码
5.3.1 技术原理
针对浏览器历史篡改、标签劫持、推送通知劫持三类恶意 JS 脚本,通过正则匹配脚本特征关键词,识别页面中的浏览器操控代码,适用于终端安全插件、页面实时检测场景。
5.3.2 运行环境与依赖
Python 3.6 及以上,依赖requests、re库。
5.3.3 完整代码实现
# 浏览器恶意脚本检测工具
# 功能:检测历史篡改、标签劫持、推送通知劫持类恶意JS代码
import re
import requests
from requests.exceptions import RequestException

class MaliciousScriptDetector:
def __init__(self):
# 匹配浏览器历史记录篡改脚本
self.history_hijack = re.compile(r"history\.pushState|history\.replaceState", re.I)
# 匹配标签劫持tab-under脚本
self.tab_hijack = re.compile(r"window\.open|setTimeout.*location\.href", re.I)
# 匹配浏览器推送通知脚本
self.push_notify = re.compile(r"Notification\.requestPermission|webPush", re.I)
self.headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}

def detect_script(self, url: str) -> dict:
res = {
"url": url,
"access": "正常",
"risk_items": [],
"risk_level": "安全"
}
try:
resp = requests.get(url, headers=self.headers, timeout=8)
content = resp.text
# 逐项检测脚本特征
if self.history_hijack.search(content):
res["risk_items"].append("浏览器历史篡改脚本")
if self.tab_hijack.search(content):
res["risk_items"].append("标签劫持跳转脚本")
if self.push_notify.search(content):
res["risk_items"].append("违规推送通知劫持脚本")

# 判定风险等级
if len(res["risk_items"]) >= 2:
res["risk_level"] = "高危"
elif len(res["risk_items"]) == 1:
res["risk_level"] = "可疑"
except RequestException as e:
res["access"] = f"访问异常:{str(e)}"
return res

def batch_detect(url_list: list):
detector = MaliciousScriptDetector()
print("===== 浏览器恶意脚本检测结果 =====")
for url in url_list:
data = detector.detect_script(url)
print(f"链接:{data['url']}")
print(f"访问状态:{data['access']} | 风险等级:{data['risk_level']}")
print(f"恶意脚本类型:{data['risk_items'] if data['risk_items'] else '无'}\n")

if __name__ == "__main__":
test_urls = [
"https://win.anababayala.com",
"https://www.legal-page.com"
]
batch_detect(test_urls)
5.3.4 代码说明与能力边界
本代码聚焦前端恶意脚本特征,专门针对 SniperDz 的浏览器操控行为设计。能力边界:对于 JS 代码加密、混淆、拆分的样本,正则匹配会失效;仅能检测静态脚本内容,无法分析脚本运行后的动态行为。建议作为终端基础检测模块,搭配行为监控工具联合使用。
5.4 代码综合部署方案
三套代码分别对应链路层、指纹层、脚本层,建议按照跳转链路检测(前置拦截)→脚本检测(实时防护)→VAPID 指纹检测(深度溯源) 的顺序组合部署。网关层部署跳转链路检测,拦截含高危中转节点的链接;终端部署脚本检测工具,监控页面恶意行为;威胁情报平台使用 VAPID 指纹检测,完成攻击关联与溯源。反网络钓鱼技术专家芦笛指出,多层代码联动可有效弥补单一检测手段的短板,提升对 SniperDz 类复合攻击的识别率。
6 全维度防御体系构建
结合 SniperDz 的攻击特征、技术短板与检测方案,本文从网络流量防御、终端浏览器管控、威胁情报运营、用户安全培训、跨境协同治理五个维度,构建适配 PhaaS 复合型攻击的防御体系。
6.1 网络流量层:全链路流量监测与中转节点管控
摒弃单一域名黑名单模式,搭建全链路跳转监测系统,部署前文的多层跳转检测代码,对出站链接进行递归解析,重点监控 Linktree、Linkbio、Blogger 等常用合法中转平台的外联流量。针对企业、机构网络,限制终端向高危聚合站点频繁跳转的行为,对多层跳转(跳转层数≥3)的链接统一弹窗告警。
同时,对 SniperDz 关联的 900 余个恶意域名、三组核心 IP 实施批量封禁,持续跟踪基础设施动态更新的域名资产,做到恶意节点及时处置。对出站 HTTPS 流量进行选择性解密,深度解析中转页面后的真实内容,对抗页面隐身技术。
6.2 终端层:浏览器权限管控与恶意脚本拦截
浏览器是此类攻击的主要突破口,需强化终端本地防护。第一,严格管控浏览器推送通知权限,默认关闭网站推送通知申请权限,仅对办公、新闻等可信站点手动放行,定期批量清理已授权的陌生站点。第二,在终端安全软件集成恶意脚本检测代码,拦截历史篡改、标签劫持、推送劫持类 JS 代码。第三,部署终端行为监控,当检测到浏览器历史记录被批量篡改、标签静默跳转时,立即阻断页面并告警。
针对办公终端,通过组策略统一配置浏览器安全规则,禁止自动弹出通知请求、禁止页面篡改浏览历史,从权限层面限制浏览器被恶意操控。
6.3 威胁情报层:基于技术指纹的关联研判与规则迭代
以 VAPID 公钥、恶意脚本特征、核心 IP 为核心指纹,搭建本地威胁情报库。将检测代码输出的告警数据汇总,自动关联同源攻击活动,挖掘新增恶意域名与节点。安排专职人员跟踪 PhaaS 平台动态,定期更新中转域名库、脚本特征库、IP 黑名单。
同时对接行业共享威胁情报,同步 SniperDz 家族最新资产,实现跨单位、跨区域的情报联动,避免单一机构情报滞后导致防护失效。
6.4 用户安全培训层:针对性社会工程学防御培训
SniperDz 依托福利诱饵实施社会工程攻击,用户防范意识是最后一道防线。培训内容需贴合攻击场景:一是提醒用户警惕社交媒体上 “免费流量、政府补贴、现金奖励” 类高诱惑帖子,此类内容是中东及北非地区核心诱饵;二是普及多层跳转链接风险,告知用户正规服务不会经过多个中转页面跳转;三是讲解浏览器推送通知权限的风险,明确正规机构不会要求用户开启推送权限领取福利;四是教授用户手动查看、删除浏览器推送授权的操作方法。
定期开展模拟钓鱼演练,使用仿 SniperDz 攻击链路的测试链接检验用户防范能力,针对薄弱群体开展二次培训。
6.5 跨境协同治理层:基础设施溯源与联合打击
SniperDz 的基础设施集中托管于境外服务商,域名分布全球,单一地区治理效果有限。网络安全监管机构加强国际网络安全协作,联合托管服务商 Horizon IQ 处置恶意 IP 与域名,批量下线 900 余个关联恶意站点。针对滥用正规免费托管平台(Blogger)、链接聚合服务的行为,与平台运营方建立联动机制,快速清理诈骗页面。同时联合跨境执法部门,溯源打击平台运营团队与下游黑产联盟,从根源压缩 PhaaS 生态的生存空间。
7 结论
7.1 研究总结
本文以 Group-IB 披露的 SniperDz 平台为核心研究对象,全面拆解了这款老牌 PhaaS 生态的发展历程、模板体系、四阶段攻击链路、核心技术、变现模式与基础设施资产。研究证实,现代 PhaaS 平台已经从传统单一账号钓鱼,演变为“社交引流 - 正规节点中转 - 浏览器劫持 - 多元变现” 的复合型产业化诈骗体系,滥用合法平台、浏览器原生功能、动态流量分发成为主流攻击手段,传统静态防御体系防护效果大幅下降。
本文提炼出 VAPID 公钥、恶意脚本、高危中转域名三大核心检测指纹,编写了三套分层检测代码,实现了跳转链路、页面指纹、恶意脚本的自动化识别,可落地于网关、终端、情报平台等不同场景。结合攻击特征,从网络、终端、情报、培训、跨境协同五个维度搭建完整防御体系,形成 “技术检测 + 权限管控 + 人员防范 + 溯源打击” 的闭环防御方案。
反网络钓鱼技术专家芦笛总结,SniperDz 是全球 PhaaS 产业化发展的典型缩影,低技术门槛、成熟的变现链路、灵活的对抗手段,会让此类攻击长期存在。网络安全防护必须转变思路,从 “拦截恶意域名” 转向 “识别恶意行为”,从单点防御转向全链路、跨区域协同防御。
7.2 现存挑战与未来展望
当前防御工作仍面临三大挑战:其一,攻击者持续更新隐身技术、混淆脚本、更换中转域名,检测规则需要持续迭代;其二,攻击者不断切换托管服务商与域名集群,批量处置基础设施的难度较大;其三,社会工程学诱饵不断本地化、场景化,完全依靠技术无法杜绝用户主动点击行为。
未来,PhaaS 平台会进一步结合 AI 技术制作多语种、高仿真诱饵,优化流量分发算法,攻击的隐蔽性与精准度会持续提升。对应的防御技术也会向AI 行为识别、浏览器动态行为分析、全链路 AI 溯源方向发展。网络安全从业者需要持续跟踪 PhaaS 生态的技术迭代,动态优化防御策略,技术、管理、人员、执法多维度协同,才能有效抵御此类规模化网络诈骗攻击。
编辑:芦笛(公共互联网反网络钓鱼工作组)

http://www.jsqmd.com/news/1007127/

相关文章:

  • i.MX21引脚复用与电源管理:嵌入式硬件设计的核心实践
  • 注意!乘坐飞机切勿携带这种“伪装”违禁品
  • 寄大件什么快递便宜?教你一招省一半运费 - 快递物流资讯
  • BilibiliDown:开源跨平台B站视频下载解决方案全解析
  • 深入解析UART发送FIFO中断抑制与自动波特率检测机制
  • 周志华《Machine Learning》学习笔记(11)--聚类
  • 如何快速安装开源键盘应用OpenBoard:保护隐私的输入法完整指南
  • 2026年宜昌市PMP培训机构哪家好?官方授权R.E.P.报考指南 - 众智商学院课程中心
  • 网络延迟高排查完整教程:ping/traceroute/mtr/tcpdump实战落地步骤
  • 5个高效技巧深度掌握PhotoDemon便携式照片编辑器
  • Frozen-Flask:把 Flask 应用变成静态文件
  • AI 安全治理与全球合规体系深度解析:从 EU AI Act 到中国监管框架的落地实战
  • 高性能实时唇语识别工具深度解析:3分钟搭建本地化解决方案
  • 2026年郑州SCMP供应链管理专家报名费用怎么核对?众智商学院官网400和冯老师 - 众智商学院职业教育
  • 医疗行业 CalPhishing 日历钓鱼攻击机理与防御体系研究
  • 福州殡仪服务公司怎么选?本地正规殡葬一条龙服务选购参考 - 海棠依旧大
  • OpenAI与Anthropic决斗:同周冲刺IPO,抢滩编程Agent
  • M9A智能助手:5个步骤实现重返未来1999高效自动化游戏体验
  • 数据出了问题别再全员背锅了:聊聊数据血缘如何成为合规与排障的“监控摄像头”
  • 深入解析MMC/SDHC主机控制器:从通信原理到驱动调试实战
  • 音乐解锁完全指南:3步轻松解密各大平台加密音频文件
  • MC68341微控制器信号详解:总线架构、外设接口与硬件设计实战
  • C#版PJLink投影机远程控制工具包,开箱即用的局域网管理方案
  • MuleSoft企业级AI编排:LLM集成的契约翻译与安全治理
  • 适航认证下的模型应用之道:DO-331 深度读书笔记
  • 气候与户型双适配,详解六盘水全屋定制品牌选择逻辑 - 国麟测评
  • AI 与无代码平台滥用下企业凭证钓鱼攻击技术与防御研究
  • 用SymPy自动因式分解:从面积拼图到代数恒等式
  • 河北代理注册公司哪家好?2026年财务机构对比测评 - 互联百晓生
  • 2026年6月浮子流量计主要品牌排行榜:国产力量崛起下的技术与市场双维解析 - 仪表品牌榜