從 Linux 端重建 Apple Find My People 協定,一路追到朋友的即時定位
zerotistic.blog · 2026-08-20
原本的問題
研究者 Zerotistic 想知道,若朋友已經透過 iPhone 的 Find My 把位置分享給自己,能否不靠 Mac 或 iOS,直接在 Linux 上把對方目前座標解出來。Apple 從未公開這條 pipeline 的規格,帳號認證、金鑰交換、位置回報全部包在私有協定裡。
採用的方法
作者先用 GrandSlam(Apple 的 SRP 帳號認證協定)取得 ADSID,再向 IDS(Identity Delivery Service)送出 PKCS#10 CSR 換取裝置憑證,把 Linux 機器註冊成 alloy multiplex1 service。接著接上私有 APNs,用 SubscribeAndFetch 搭配 distributeKeys intent,誘使對方裝置把 P-224 私鑰透過 NGM(P-256 ECDH + HKDF-SHA256 + AES-CTR)送出來。
FindMy.py:處理 MobileMe delegate 交換與 anisette 產生pypush(rewrite 前版本):IDS/APNs 實作與 NAC 生成rustpush:service 定義與 NGM 解密邏輯參考
實際效果
拿到 P-224 私鑰後,呼叫 SearchParty 的 gateway.icloud.com/findmyservice/fetch,以 X9.63-SHA256 衍生金鑰解開 AES-GCM 回報,成功印出朋友的即時座標、精度與時間戳。這個 client 目前只能讀已同意分享的關係,無法發邀請或竄改分享設定。
原始來源:zerotistic.blog
一份「面試作業」如何在候選人電腦裝上完整後門
codedge.de · 2026-08-20
原本的問題
作者在 LinkedIn 被自稱 Bitway 的獵頭聯繫,開出待遇不錯的遠端兼職,卻跳過正常面試該有的「認識一下」通話,直接丟出一份 coding challenge。這個節奏本身就是社交工程的警訊,作業卻以合法 Bitbucket repo 形式出現,降低了戒心。
採用的方法
該 repo(bitbucket.org/bitway_network/coinvault)內含約 180 個 TypeScript 檔案,其中一支函式連到 api.jsonbin.io 抓遠端 payload,用 Function.constructor 動態執行,並把 Node 的 require 傳進去換取系統權限。作者解開這段被 obfuscator.io 混淆、長達 24,686 字元的 loader,回溯出 C2 位址與四個惡意模組。
- scdata:具互動 shell、螢幕擷取、鍵鼠控制、VM 偵測的 RAT
- ldata:竊取 Chrome/Edge/Brave 憑證與 28 種以上加密貨幣錢包
- File grabber:掃描家目錄找 SSH key、AWS 憑證、
.env - 剪貼簿監控:持續側錄並記錄成
npm-compiler.log
實際效果
作業一旦執行,等於在自己機器裝了全功能後門,SSH key、瀏覽器憑證與錢包資訊全數暴露,作者事後只能重灌系統、輪替所有金鑰與密碼。值得一提,作者曾用 Claude Code 做 AI 掃描,但當下沒能揪出藏在 180 個檔案裡的惡意邏輯。
原始來源:codedge.de
AliExpress 用 WebAudio 悄悄做指紋辨識,還會讓藍牙多點耳機斷音
blog.laserphile.com · 2026-08-20
原本的問題
作者用支援多點連線(multipoint)的藍牙耳機同時接手機與電腦,一開啟 AliExpress 分頁,手機端播放中的音樂就會中斷,關掉分頁又立刻恢復,頁面上卻看不到任何影音元素在播放。
採用的方法
作者先排除 <audio>/<video> 與 Media Session API,都找不到播放來源,於是包一層 AudioContext 建構子攔截呼叫,抓到頁面偷偷建立了兩個未被察覺的 AudioContext。堆疊回溯指向阿里的風控腳本 collina.js 與 fireyejs.js(屬於 AWSC,Alibaba Web Security Center),兩者都建了同一種訊號鏈:
Sawtooth Oscillator -> AnalyserNode -> ScriptProcessorNode -> GainNode(0) -> AudioContext.destination用鋸齒波經過瀏覽器音訊處理鏈後量測特徵差異,藉此做裝置指紋;接到 destination 且 gain 設為零,使用者聽不到,卻仍讓系統判定該 AudioContext 為「使用中」。
實際效果
正是這個「靜音但仍在跑」的 AudioContext,讓作業系統藍牙堆疊誤判電腦端在播音,才把多點音訊路由從手機搶走。指紋蒐集範圍不只音訊,還涵蓋 canvas、WebGL、螢幕與硬體資訊,一併加密回傳。作者提供 uBlock Origin 規則封鎖兩支腳本:
||assets.aliexpress-media.com/g/AWSC/uab/*/collina.js$script,domain=aliexpress.com
||assets.aliexpress-media.com/g/AWSC/fireyejs/*/fireyejs.js$script,domain=aliexpress.com原始來源:blog.laserphile.com