4 điểm bởi GN⁺ 2026-02-12 | 1 bình luận | Chia sẻ qua WhatsApp
  • Thông qua pipeline quét tự động dựa trên MITM (tấn công trung gian), đã phát hiện 287 tiện ích mở rộng Chrome có hành vi gửi lịch sử duyệt web của người dùng ra bên ngoài
  • Các tiện ích này có tổng cộng khoảng 37,4 triệu lượt cài đặt, tương đương khoảng 1% người dùng Chrome trên toàn cầu
  • Hành vi rò rỉ dữ liệu có liên quan đến các nhà môi giới dữ liệu lớn như Similarweb, Curly Doggo, Offidocs, Big Star Labs cùng nhiều công ty quy mô nhỏ khác
  • Kết quả phân tích cho thấy một số tiện ích dùng các kỹ thuật mã hóa như ROT47, AES‑256, LZ‑string để che giấu dữ liệu URL khi truyền đi
  • Đây là mối đe dọa nghiêm trọng, không chỉ xâm phạm quyền riêng tư mà còn có thể dẫn đến rủi ro an ninh như lộ URL mạng nội bộ doanh nghiệp và bảng điều khiển quản trị

Xây dựng pipeline quét tự động

  • Nhóm nghiên cứu đã xây dựng một hệ thống tự động bọc trình duyệt Chrome trong môi trường Docker bằng proxy MITM và đo mối tương quan của lưu lượng đầu ra theo độ dài URL
    • Nếu lưu lượng truyền tăng tỷ lệ thuận với độ dài URL thì tiện ích đó được xem là đang gửi URL ra bên ngoài
  • Quá trình quét được tiến hành theo hai giai đoạn, tiêu tốn tổng cộng 930 CPU-ngày
    • Ở vòng đầu, họ kiểm tra 4 độ dài URL; nếu phát hiện tỷ lệ nghi vấn (0.1 ≤ R < 1.0) thì xác minh lại với 6 độ dài bổ sung

Phát hiện và phân tích rò rỉ dữ liệu

  • Xác nhận có 287 tiện ích mở rộng gửi lịch sử duyệt web đến máy chủ bên ngoài
  • Tổng số lượt cài đặt của các tiện ích này là khoảng 37,4 triệu, tương đương khoảng 1% người dùng Chrome toàn cầu
  • Dữ liệu bị rò rỉ được chuyển đến Similarweb, Curly Doggo, Offidocs, Big Star Labs; một phần còn bị thu thập lại qua scraper Kontera
  • Kết quả theo dõi IP thu thập dữ liệu thực tế bằng cách vận hành máy chủ honeypot cho thấy 5 dải IP chính như HashDit, Blocksi AI Web Filter, Kontera liên tục truy cập

Các tác nhân chính và mối liên hệ

  • Phân tích OSINT được dùng để điều tra email nhà phát triển, chính sách quyền riêng tư, thông tin chứng chỉ của từng tiện ích
  • Xác nhận tiện ích “Similar Sites” của Similarweb có liên kết với scraper Kontera cũng như Curly Doggo và Offidocs
  • Big Star Labs chia sẻ cùng mẫu mã nguồn với Similarweb, nhiều khả năng thuộc cùng một tổ chức

Các trường hợp rò rỉ tiêu biểu

  • Poper Blocker: làm rối URL bằng ROT47 rồi gửi đến api2.poperblocker.com
  • Stylish: mã hóa URL bằng AES‑256 và mã hóa khóa công khai RSA rồi gửi đến userstylesapi.com
  • BlockSiteVideo Ad Blocker Plus: dùng nén LZ‑string UTF16 để gửi URL và sử dụng cùng một schema dữ liệu
  • Similarweb: gửi dữ liệu duyệt web được mã hóa URL nhiều lớp đến rank.similarweb.com
  • WOT (Web of Trust): mã hóa URL bằng cơ chế mã hóa tùy biến dựa trên XOR, có cấu trúc giống Similarweb
  • Smarty, CrxMouse, ApkOnline, Knowee AI, Super PiP cũng lần lượt truyền dữ liệu thông qua tham số URL, header, Google Analytics API, v.v.

Quy mô và tác động của mối đe dọa

  • Khoảng 37,4 triệu người dùng, tức quy mô tương đương dân số Ba Lan, đã bị ảnh hưởng
  • Một số tiện ích có thể cần quyền truy cập lịch sử duyệt web để hoạt động, nhưng nhiều tiện ích thu thập dữ liệu mà không có sự đồng ý rõ ràng
  • Dữ liệu bị rò rỉ có thể bị lạm dụng cho nhắm mục tiêu quảng cáo, hoạt động gián điệp doanh nghiệp, chiếm đoạt phiên
    • Đặc biệt trong môi trường doanh nghiệp, có rủi ro lộ URL nội bộ từ nhân viên sử dụng tiện ích “tăng năng suất”

Kết luận và cảnh báo

  • Nhiều tiện ích trong số được phân tích đã dùng kỹ thuật mã hóa và che giấu có chủ đích để tránh bị phát hiện
  • Điều này được xem không phải lỗi đơn thuần mà là mô hình kinh doanh dựa trên việc thu thập dữ liệu
  • Cần nhớ rằng với phần mềm miễn phí nhưng không phải mã nguồn mở, người dùng có thể chính là “sản phẩm”
  • Khi cài đặt tiện ích Chrome, việc xem xét quyền hạn và kiểm tra nguồn gốc là điều bắt buộc

1 bình luận

 
GN⁺ 2026-02-12
Ý kiến Hacker News
  • Khoảng 15 năm trước tôi từng làm một tiện ích mở rộng Chrome chỉ có một chức năng cụ thể và nó khá được ưa chuộng
    Tôi bán nó với giá vài nghìn USD rồi quên luôn, nhưng giờ nhìn lại thì thấy rất rõ một mô hình là những kẻ xấu mua lại các tiện ích hợp pháp này rồi kiếm tiền từ dữ liệu người dùng
    Tôi đã tận mắt chứng kiến nhiều trường hợp như vậy

    • Tôi đã duy trì một tiện ích đa trình duyệt được ưa chuộng hơn 10 năm, và các đề nghị kiếm tiền hóa chưa bao giờ ngừng lại
      Thảo luận liên quan được tổng hợp trong thảo luận GitHub
    • Đây là một dạng tấn công chuỗi cung ứng (supply-chain attack) điển hình
      Nó giống như game thủ bán nhân vật cấp cao, hay tài khoản mạng xã hội đổi chủ
      Giờ mặt trận mới của bảo mật là các khu vực như tiện ích trình duyệt, tích hợp đám mây, và quyền truy cập ứng dụng
      Nếu cấp cho bất kỳ ứng dụng nào quyền truy cập toàn bộ Gmail hay Google Drive, bạn có thể bị phơi nhiễm ransomware
      Sẽ không để lại dấu vết gì trên hệ điều hành cục bộ, và trình quét virus cũng không phát hiện được
      Quy trình kiểm tra bảo mật quá phiền phức nên việc gỡ quyền truy cập từng cái một là cực hình
      Cần có cách tốt hơn
    • Nếu là 15 năm trước thì đó hẳn là thời điểm những giao dịch như vậy mới bắt đầu xuất hiện
      Không thể cấm hoàn toàn việc mua bán tiện ích, nhưng cần siết chặt quy trình kiểm duyệt của Chrome Web Store
    • Ngay cả khi người bán không có ý xấu, tôi nghĩ vẫn nên có một phần trách nhiệm pháp lý đối với các vấn đề phát sinh sau khi bán
      Tuy nhiên, trách nhiệm này nên do đơn vị vận hành cửa hàng quản lý chứ không phải cá nhân
  • Tôi đã tổng hợp cách tự bảo vệ khi một tiện ích từng đáng tin bỗng trở nên độc hại

    • Dùng Extensions Update Notifier để theo dõi cập nhật và kiểm tra xem quyền sở hữu có thay đổi hay không
    • Trên trình duyệt Brave, có thể tự đặt quy tắc lọc lưu lượng bằng tính năng brave://flags/#brave-extension-network-blocking
    • Cũng có thể clone kho GitHub rồi dùng Claude Code để kiểm tra bảo mật, tự build và cập nhật thủ công
      • Tôi thấy cách này thực sự rất hay
        Không biết có công cụ nào có thể kiểm toán codebase của tiện ích một cách xác định hay không
  • Tôi chỉ dùng tiện ích mã nguồn mở
    Tôi chỉ tin những thứ như uBlock Origin, SponsorBlock, tức là mã nguồn được công khai và nhà phát triển không ẩn danh
    Chrome Web Store thực chất là một thị trường gần như không bị quản lý, còn Google thì chỉ lo kiếm tiền
    Mã nguồn mở là lớp an toàn tối thiểu duy nhất cho phép tự kiểm tra mã trước khi cài đặt

    • Tiện ích mã nguồn mở do nhà phát triển không ẩn danh làm ra là một tín hiệu tốt, nhưng không có bảo đảm rằng gói được phát hành thực sự giống hệt mã nguồn công khai
      Các kênh phân phối mã nguồn mở khác như pip, npm, rpm cũng vậy
    • Vậy thì làm sao có thể xác minh rằng mã tiện ích đã cài khớp chính xác với mã được công khai?
    • Vì thế có ý kiến cho rằng thật đáng tiếc khi Tampermonkey không phải mã nguồn mở
      Thảo luận liên quan có tại thảo luận GitHub
    • Không thể tự kiểm toán mọi thứ, nên tôi nghĩ cần có một hệ thống xác minh từ các tổ chức đáng tin cậy
      “Đừng tin Google” là chưa đủ; “hãy cải thiện thể chế” là cách tiếp cận thực tế hơn
    • Tắt cập nhật tự động và khóa phiên bản (version lock) cũng an toàn hơn
      Firefox hay Safari phù hợp cho thiết lập này hơn Chrome
  • Phần lớn mã của các tiện ích đều bị làm rối (obfuscated), nhưng ai cũng có thể xem mã nguồn
    Cách làm được tổng hợp ở liên kết này
    Tôi cũng đang vận hành một tiện ích nhỏ có khoảng 2.000 người dùng, và thường xuyên nhận được đề nghị mua lại để biến nó thành mã độc
    Ví dụ là One Click Image Saver

  • Con gái tôi đang học tiểu học và dùng Google Classroom trên Chromebook ở trường, nhưng gần như không có giới hạn nào với tiện ích mở rộng
    Mỗi lần đăng nhập, Chrome lại hiện thông báo kiểu “tiện ích đã bị gỡ do hoạt động độc hại”

    • Có thể con bé không biết rằng tiện ích đang đánh cắp camera hoặc lịch sử tìm kiếm của mình
      Vì vậy tôi nghĩ tốt hơn là chỉ dùng tiện ích mã nguồn mở hoặc tự làm lấy
      Nếu chỉ là tính năng đơn giản thì có thể tự viết bằng Tampermonkey và tự xem lại mã
      Dạo này tôi cũng tự làm hầu hết tiện ích mình dùng
      Tampermonkey giúp chỉnh sửa và rà soát mã đơn giản, lại còn dễ kiểm tra bảo mật bằng công cụ AI
  • Tôi tắt cập nhật tự động cho mọi phần mềm
    Câu “không cập nhật ngay thì sẽ bị hack” chỉ là ảo tưởng
    Tôi còn cảm thấy khả năng bị hack sau khi cập nhật cao hơn

    • Rốt cuộc thì cập nhật hay không cập nhật đều là tình huống rủi ro
  • Những tiện ích không đáng tin rồi sớm muộn cũng có khả năng bị bán lại và biến thành mã độc
    Vì vậy tôi chỉ cài uBlock Origin

    • Tôi cũng đang vận hành một tiện ích có hơn 100.000 người dùng, và đã nhận hàng trăm email đề nghị mua lại
      Tất cả đều gửi đến địa chỉ email công khai mà Google ép phải hiển thị
      Còn email thực sự hữu ích thì chẳng có lấy một cái
      Vì thế tôi cũng chỉ tin uBlock Origin, Bitwarden và các tiện ích do chính tôi tạo ra
      Ví dụ là Old Reddit Redirect
    • Tôi cũng chỉ dùng uBlock Origin
      Trước đây tôi từng dùng Tree Style Tab, nhưng giờ Firefox đã hỗ trợ tab dọc mặc định nên không còn cần nữa
      Cài thêm tiện ích mới là quá rủi ro
    • Nhân tiện, dự án gốc của uBlock Origin là uBlock từng có lúc rơi vào tay một người không đáng tin,
      rồi sau đó nhà phát triển Raymond Hill fork lại để tạo ra phiên bản hiện tại
  • Nhiều tiện ích thu thập tham số URL trong truy vấn tìm kiếm như "u": "https://www.google.com/search?q=target";
    Điều này có nghĩa là không chỉ lịch sử duyệt web, mà cả token xác thực cũng có thể bị đánh cắp

    • Nếu có dịch vụ nào truyền token xác thực qua tham số URL, thì tốt nhất đừng dùng chính dịch vụ đó
      Những token như vậy luôn ở trạng thái bị lộ công khai
  • Thật khó hiểu vì sao Google, một trong những công ty giàu nhất thế giới, lại không tự giải quyết vấn đề này
    Họ rất tích cực trong việc chặn trình chặn quảng cáo, nhưng lại bỏ mặc chuyện này

    • Có thể Google đã biết về vấn đề này từ trước
      Nếu vậy thì câu hỏi quan trọng hơn là “tại sao họ không công khai nó?”
  • Có người chia sẻ lệnh để liệt kê toàn bộ ID tiện ích Chrome đã cài trên macOS

    find "$HOME/Library/Application Support/Google/Chrome" \
      -type d -path "*/Extensions/*" -not -path "*/Extensions/*/*" \
      -print 2>/dev/null | sed 's#.*/Extensions/##' | sort -u
    

    Có thể so kết quả với danh sách tiện ích độc hại