從 RAV4 拆除車載數據機:每輛現代汽車都是一個訂閱制監控節點
arkadiyt.com · 2026-05-13
安全工程師 Arkadiy Tetelman 在 HN 以 489 點登上前段,記錄了他花費大量時間拆解 2024 款豐田 RAV4 Hybrid 內裝,移除資料通訊模組(DCM)與 GPS 天線的經歷。文章的技術細節之外,引發社群廣泛討論的是一個更根本的問題:你「擁有」的車,有多少部分是在替廠商工作的?
現代汽車的資料收集範圍
Tetelman 調查後發現,2024 RAV4 透過 DCM 持續上傳的資料包含位置、速度、油耗、急加速/急煞事件,以及在具備眼球追蹤功能的車款中連駕駛注意力模式都被記錄。這些資料的下游去向包括 LexisNexis 等資料仲介,後者向汽車保險公司銷售「駕駛行為評分」,用於動態調整保費——即使車主從未同意其駕駛資料被用於保費計算。
拆除工程的技術細節
DCM 藏在中央扶手下方,需拆除排檔桿、音響主機、座椅加熱控制面板等多層內裝才能觸及。GPS 天線在資訊娛樂主機後方,以試誤法確認接頭後拔除。拆除後損失的功能:OTA 軟體更新、豐田 Connected Services(遠端啟動、車況監控)、SOS 緊急通報。
有趣的是:車輛仍可透過藍牙配對手機上網,所以「移除 DCM」只能阻止廠商主動取資料,不能阻止 CarPlay/Android Auto 場景下應用程式仍可存取位置。作者最終選用有線 USB 連接 CarPlay 以降低暴露面。
法律框架
根據美國 Magnuson-Moss Warranty Act,移除 DCM 不能作廢整車保固——廠商只能就拆除動作本身直接相關的部件主張保固失效,無關系統(如引擎)的保固仍成立。HN 討論中有人指出,歐盟 GDPR 下汽車資料收集需要明確同意,但執法力度因國而異。
原始來源:arkadiyt.com
arXiv 新政策:偽造參考文獻一年禁止投稿,AI 幻覺引發學術誠信危機
arXiv · 2026-05-15
arXiv 宣布實施新規定:論文中若被發現含有幻覺生成(hallucinated)的虛假參考文獻,作者將面臨一年禁止在 arXiv 投稿的處分。消息在 HN 獲得 146 點,引發關於 AI 工具在學術寫作中使用邊界的廣泛討論。
問題背景
隨著 LLM 在學術寫作輔助的普及,虛假引用的問題日趨嚴重。典型模式是研究者讓 LLM 協助撰寫文獻回顧段落,LLM 捏造看似真實的引用(包含作者、期刊名稱、卷號、頁碼,但對應的論文根本不存在)。由於引用格式看起來完全正常,在沒有逐筆核實的情況下難以發現。部分案例中,假引用甚至通過了同行評審,直到後續讀者試圖找到原始論文時才被發現。
arXiv 的執法挑戰
arXiv 是預印本平台而非正式期刊,過去的稽核主要依賴人工舉報而非系統性偵測。新政策的挑戰在於:如何在投稿量不斷增加的情況下系統性地驗證引用真實性。學術界對此有兩種對立意見——一方認為處分力度應更重(永久禁止)以形成有效嚇阻;另一方則認為一年禁止對於首次非故意錯誤過於嚴苛,應區分「粗心」與「蓄意造假」。
HN 討論中,多位研究者分享了他們在審稿時發現虛假引用的親身案例,以及在使用 LLM 寫作輔助時自行核實每條引用的流程。共識是 LLM 輔助寫作本身不是問題,未核實的 LLM 輸出才是。
原始來源:arXiv 政策公告
int a = 5; a = a++ + ++a; a = ?:C++ 未定義行為的幽靈
gynvael.coldwind.pl · 2026-05-15
資深安全研究員 Gynvael Coldwind 的一篇深入分析 int a = 5; a = a++ + ++a; 的文章在 HN 獲得 79 點,吸引大量工程師分享自己當初在面試或競賽中遇到類似題目的趣事,以及各編譯器的實際輸出差異。
為何這是未定義行為
在 C++17 之前,這個表達式違反了「在同一表達式中對同一變數進行多次修改而修改之間沒有序列點(sequence point)」的規則,導致未定義行為(Undefined Behavior, UB)。C++17 引入了更嚴格的序列化規則(右運算元的副作用在賦值之前確定)但爭議仍在,因為 a++ 的副作用(遞增)與 ++a 的副作用(遞增)在表達式求值中的相對順序仍具實作定義性。
Gynvael 的分析展示了 GCC、Clang、MSVC 在相同程式碼上的不同輸出:
GCC 14 (-O0): a = 12
GCC 14 (-O2): a = 12
Clang 18 (-O0): a = 13
Clang 18 (-O2): a = 12 // 最佳化後與 GCC 一致相同編譯器在不同最佳化等級下可能給出不同答案,這是 UB 最危險的特性——程式碼在開發時「看起來有效」,在生產環境的高最佳化建置中行為改變。
實際工程意義
現代靜態分析工具(Clang-Tidy 的 bugprone-unsequenced-modifications、UBSan)能在編譯期或執行期偵測此類問題。Rust 透過所有權系統完全排除了這類問題——同一個可變變數在同一個表達式中不能有多個可變借用,編譯器在語言層面強制保證序列化。對 C++ 開發者而言,最佳實踐是把副作用操作(++、--)限制在獨立語句中,避免與其他表達式混合。
原始來源:gynvael.coldwind.pl