Jump to...
redirecting...

Log for Ubuntu 台灣社群

It's time to leave PC/Mac
檢查了回家完成的面試作業,結果竟是一場完整的攻擊行動 (★ 236 分)

一名軟體工程師在 LinkedIn 收到 Python 開發職缺邀請,月薪 1 萬至 1.5 萬美元,職務為可轉正的遠端合約職位。對方很快核准履歷,並提供 Google Drive 上的壓縮檔與測驗說明 PDF。壓縮檔表面上是使用 FastAPI 與 SQLAlchemy 的一般 Python 後端專案,套件清單也沒有明顯的偽裝套件名稱(typosquatting);但檢查隱藏資料夾後,作者發現專案內含大量預先設定的 Git hooks(Git 勾點)。

其中的 `pre-commit` 腳本會辨識 macOS、Linux 或 Windows,再經由 `curl` 或 `wget` 從裸露的 IP 位址下載指令,直接交給 Shell 或 Windows 命令列背景執行。Linux 階段會下載第二個負載,改名為 `tokenlinux.sh`,放入使用者的 `Documents` 資料夾,並用 `nohup`(讓程式在登出或關閉終端機後仍持續執行)啟動。後續腳本會下載混淆嚴重的 `parser.js` 與 `package.json`,安裝 Node.js 套件並悄悄執行。套件包含剪貼簿、檔案系統、程序控制與網路請求功能,還有 Hardhat(以太坊開發工具);作者因此推測攻擊者可能企圖搜尋或竊取加密貨幣錢包,但文章並未證實最終用途。網址中的 `id` 參數會改變回傳腳本,顯示攻擊者可能為不同求職者分配識別碼並提供客製化負載。

進一步調查顯示,這不是單一事件:其他受害者收到的專案可能在 `.vscode` 資料夾內藏有開啟目錄時執行的指令,不必先執行 Git 指令也可能遭到感染。Git 紀錄則顯示,攻擊者只是複製公開的個人理財 FastAPI 專案,再加上一個惡意隱藏資料夾,並冒用一家新創公司的名稱。作者對攻擊者 IP 位址進行 Nmap 掃描,發現三個開放連接埠,其中 SSH 使用 Ubuntu 上的 OpenSSH 9.6p1,未找到可利用的已知 CVE(常見漏洞與暴露項目)。文章最後提醒,執行陌生專案前應檢查 `.git`、`.vscode` 等隱藏內容,並避免直接在日常電腦上執行求職測驗。

Hacker News 討論者認為,這類以求職為掩護的攻擊很可能會更加普遍,背後或許結合自動化工具、大型語言模型,甚至可能與北韓 APT(進階持續性威脅)活動有關,但後者在討論中沒有充分證據。有人建議先經由公司官方網站或正式公司電子郵件確認招募者身分;也有人提醒,正式管道未必容易辨認,LinkedIn 雖已提供公司電子郵件驗證功能,實際使用率仍不高,因此即使招募看似可信,也不應直接執行不受信任的程式碼。

討論中最一致的實務建議,是使用自己建立的一次性虛擬機器或容器,並確保沒有憑證、主機資料夾掛載或其他重要資料;不要依賴招募方提供的環境,因為那個環境本身也可能不可信。有人指出,VS Code 的 Workspace Trust(工作區信任)可阻擋部分自動執行,但許多使用者不會仔細閱讀提示。另有一名參與者分享自己遇到相似事件:面試過程要求執行合法公司的開放原始碼專案,事後才發現其中藏有惡意負載;他已啟用雙因素驗證、避免使用套件發佈權杖,並計畫清除電腦後重新安裝。討論者也警告,這類「回家完成的面試作業」除了可能散播惡意程式,也可能被拿來免費竊取求職者的工程解答。

👥 54 則討論、評論 💬
https://news.ycombinator.com/item?id=49013036
這個攻擊方式有一段時間了
Fairphone 6 超廣角相機的 Linux 實驗性支援 (★ 101 分)

Fairphone 6 被視為 Linux 主線核心與 postmarketOS(以 Linux 為基礎的手機作業系統)的良好實驗平台,原因包括硬體相對新、Fairphone 願意投入主線支援、允許安裝替代作業系統,以及承諾長期維護。目前讓手機難以日常使用的主要障礙是音訊與相機。作者為了 QR code(Quick Response code,快速回應碼)掃描,選定具備 13 百萬畫素、且已有部分主線驅動程式的 OmniVision OV13B10 超廣角相機;主相機 Sony IMX896 與前鏡頭 Samsung S5KKD1 則尚無主線驅動程式。

在 Qualcomm SoC(系統單晶片)上,相機不是單一裝置,而是由感測器、CSI-2 高速介面、CSIPHY、CSID、ISP(影像訊號處理器)到記憶體組成的完整資料路徑。作者將現有的 qcom-camss(Qualcomm 相機子系統驅動程式)移植到 Fairphone 6 使用的 milos/SM7635 平台,並補上 TFE665、CSID665 與 CSIPHY v2.2.1 的硬體描述、裝置樹設定與時脈控制。關鍵問題包括遺漏相機複合體的 AHB 暫存器匯流排時脈、裝置樹採用錯誤的資料線編號,以及 TFE665 的 128 位元匯流排誤用了適用於 64 位元硬體的封裝格式。修正後,原本只有正確時序卻全黑的畫面,終於能輸出真實的拜耳原始影像。

接著,libcamera(Linux 相機的使用者空間框架)透過軟體 ISP 將原始影像轉成 RGB,並由 GPU(圖形處理器)協助處理,每秒約可輸出 30 格畫面。作者新增 OV13B10 的類比增益輔助程式後,自動曝光開始正常運作,影像也能經由 GStreamer 與 PipeWire 提供給桌面相機應用程式。由於軟體 ISP 沒有自動對焦演算法,音圈馬達目前只能固定在適合手持 QR code 與文件的焦距;此外,像素合併模式會產生扭曲畫面,因此被停用,導致常見解析度的預覽只能裁切中央區域,無法完整呈現超廣角視野。現階段成果是可在 GNOME Snapshot 顯示直立、曝光正常且固定對焦的即時影像,但仍屬實驗性支援,還需要完善電源時序、畫質調整、模式修正與正式上游整合。

Hacker News 留言大多肯定這項成果,但有人從文章大量使用粗體、逐一列出檔名與硬體細節等文風,推測作者大量使用 LLM(大型語言模型)協助;這項觀察並未否定技術內容,作者本身也明確承認曾高度仰賴 LLM。另一組討論則轉向 Fairphone 的 Android 安全性與 GrapheneOS(著重安全性的 Android 替代作業系統):留言指出 Fairphone 可能缺少 GrapheneOS 要求的硬體安全功能,例如獨立安全隔離區、較完善的韌體更新承諾,以及 MTE(Memory Tagging Extension,記憶體標記延伸),並批評其安全更新與 Linux 核心更新不夠規律。反方認為這些要求其實相當具體,只要採用具備相關功能的新款 Qualcomm 平台、提供長期驅動程式與安全更新,並允許重新鎖定 bootloader(開機載入程式),理論上就能改善相容性;留言同時肯定 Fairphone 的可維修性,但也提到音量按鍵與主機板等疑似故障案例。

👥 16 則討論、評論 💬
https://news.ycombinator.com/item?id=49012777
北韓慣用伎倆,做作業前,先讓 ai 看完全部文件
[photo](media:AgACAgUAAx0CPRn5XQABAlawamIU9xrC39Bebi9pTQyQbZa5RsoAAikYaxsqxhBXuKtqZZQAAVylAQADAgADcwADPQQ@telegram)