1 điểm bởi GN⁺ 2026-02-06 | 1 bình luận | Chia sẻ qua WhatsApp
  • Mỗi khi trang web LinkedIn tải trang, nó sẽ phát hiện sự hiện diện của 2.953 tiện ích mở rộng Chrome
  • Kho lưu trữ này ghi lại toàn bộ ID tiện ích, tên và liên kết Chrome Web Store mà LinkedIn kiểm tra
  • Trong tổng số tiện ích, khoảng 78% được xác nhận qua Chrome Web Store, khoảng 22% qua Extpose
  • Script được cung cấp (fetch_extension_names.js) tự động thu thập tên tiện ích, và với các tiện ích đã bị xóa thì tra cứu thay thế qua Extpose
  • Dữ liệu này cho thấy quy mô của việc website nhận diện các tiện ích mở rộng trên trình duyệt của người dùng

LinkedIn Chrome Extension Fingerprinting

  • LinkedIn bí mật kiểm tra 2.953 tiện ích mở rộng Chrome mỗi khi tải trang
    • Quá trình này được thực hiện dưới dạng fingerprinting nhằm nhận diện các tiện ích đã cài trên trình duyệt của người dùng
  • Kho lưu trữ bao gồm toàn bộ danh sách tiện ích mà LinkedIn kiểm tra cùng các công cụ liên quan
    • Trong tệp chrome_extensions_with_names_all.csv có sắp xếp ID tiện ích, tên và liên kết đến Chrome Web Store hoặc Extpose

Cấu trúc dữ liệu

  • Tệp dữ liệu gồm ba cột: Extension ID, Name, URL
    • Extension ID là mã định danh 32 ký tự, còn URL dẫn đến Chrome Web Store hoặc Extpose
  • Có thể xem toàn bộ danh sách trong tệp chrome_extensions_with_names_all.csv

Script

  • fetch_extension_names.js lấy tên tiện ích từ Chrome Web Store, và nếu tiện ích đã bị xóa hoặc không thể truy cập thì sẽ tra cứu thay thế qua Extpose
    • Ví dụ lệnh: node fetch_extension_names.js, node fetch_extension_names.js --offset 0 --limit 500
  • test_fetch.js xử lý 3 tiện ích đầu tiên và có thể kiểm thử ở chế độ đầu ra chi tiết (verbose)

Thống kê

  • Danh sách fingerprint của LinkedIn bao gồm tổng cộng 2.953 tiện ích
  • Trong đó, khoảng 78% được xác nhận qua Chrome Web Store, khoảng 22% qua Extpose

Tệp nguồn

  • chrome_extension_ids.txt : danh sách ID tiện ích thô được trích xuất từ fingerprint.js của LinkedIn
  • fingerprint.js : script phát hiện tiện ích (bản rút gọn) được nhúng trong trang LinkedIn
  • fetch_extension_names.js : script phụ trợ để tự động thu thập tên tiện ích

Tóm tắt

  • LinkedIn đang kiểm tra thông tin tiện ích mở rộng trình duyệt ở quy mô lớn,
    và kho lưu trữ này công khai minh bạch toàn bộ danh sách cùng phương pháp thu thập

1 bình luận

 
GN⁺ 2026-02-06
Ý kiến trên Hacker News
  • Có vẻ Firefox miễn nhiễm với vấn đề lần này
    Chrome phơi bày tài nguyên truy cập web của extension dưới dạng chrome-extension://[PACKAGE ID]/[PATH],
    còn Firefox truy cập theo dạng moz-extension://<extension-UUID>/myfile.png.
    Trong đó <extension-UUID> được tạo ngẫu nhiên cho từng trình duyệt để ngăn website lấy dấu vân tay (fingerprinting) trình duyệt thông qua các extension đã cài
    Tài liệu liên quan: tài liệu Chrome, tài liệu Firefox

    • Người ta cứ bảo dùng trình duyệt dưới 5% thị phần thì sẽ bỏ lỡ công nghệ web mới nhất, vậy mà hóa ra lại có lợi thế bảo mật kiểu này, thật mỉa mai
    • Thỉnh thoảng quạt máy tính của tôi quay như phát điên, mà đa số là do tab LinkedIn mở trên Firefox. Không biết cái này có phải đang đào tiền mã hóa gì không, hay chỉ đơn giản là quá kém hiệu quả
    • Nếu đổi ID extension theo từng trình duyệt, chẳng phải thay vì nhận diện trình duyệt thì lại nhận diện chính người dùng sao?
      Chẳng phải từ “trình duyệt này có extension X, Y, Z” sẽ thành “đây là trình duyệt của Jim Bob” à?
  • Nhìn danh sách extension thì phần lớn là extension liên quan đến cào dữ liệu LinkedIn hoặc tự động hóa
    Hồi còn làm ở LinkedIn, kiểu lạm dụng này rất phổ biến, và dù nội bộ đã xây khá nhiều hệ thống phát hiện/phòng chống tinh vi, đó vẫn là một cuộc chiến không hồi kết

    • Nếu LinkedIn tạo nguồn dữ liệu để lấy dấu vân tay extension, rất có thể ai đó (có lẽ là LinkedIn?) đã cào Chrome Web Store.
      Việc này có thể là vi phạm TOS của Chrome Web Store
    • Nhìn danh sách thì có vẻ không tinh vi lắm. Chỉ như lọc các extension có chữ “email” trong tên, và phần lớn thậm chí còn không có quyền truy cập linkedin.com
    • Với LinkedIn thì đây có thể là vấn đề, nhưng vấn đề thật sự là các công ty như LinkedIn đang làm môi giới dữ liệu
    • Xét theo mã nguồn thì khi khớp cũng không làm gì ngay, có vẻ chỉ lưu kết quả thành CSV để dùng làm dữ liệu fingerprint
    • Trước đây tôi từng cào LinkedIn cho một khách hàng, và đó là một trải nghiệm khá thú vị
  • Giờ Chrome giống như IE6 mới
    Google đã tự biến mình thành Microsoft tiếp theo, và đang đi theo hướng thân thiện với quảng cáo.
    Cảm giác như họ đóng góp nhiều hơn cho việc vô hiệu hóa ad blockercho phép mã độc, thay vì cải thiện bảo mật

    • Tôi đồng ý Chrome là spyware, nhưng cũng phải nói rằng họ là bên đầu tiên đưa vào các tính năng bảo mật như Site Isolation hay sandboxing.
      Tốc độ vá lỗi và kiểm thử bảo mật của họ cũng không tệ
    • Chrome bây giờ còn tệ hơn nhiều so với IE6. Microsoft ít nhất cũng không theo dõi người dùng hay bán quảng cáo
    • Ai kiểm soát quảng cáo thì kiểm soát Internet
    • Google giờ đã là một công ty độc quyền, và mọi thế độc quyền cuối cùng đều thành ra như vậy
    • Nếu đến năm 2026 mà vẫn còn dùng Chrome thì chắc đúng là một lập trình viên gan dạ
  • Mở LinkedIn rồi nhấn F12 sẽ thấy số lượng lỗi cứ tăng liên tục
    Có thể xem ảnh chụp màn hình tại đây

    • Nếu bị chặn link X thì có thể xem qua link xcancel
  • Gần đây tôi có tổng hợp trên blog về kỹ thuật phát hiện extension của LinkedIn và các cách khác có ít tác dụng phụ hơn
    Bài blog của Castle

    • Nếu vá Firefox để navigator.webdriver luôn là false thì có thể điều khiển từ xa.
      Khó phát hiện, nhưng vẫn có thể nhận ra qua mẫu tốc độ nhập liệu
    • Nội dung bài viết trùng khớp đúng chủ đề này nên tôi đọc thấy khá thú vị
  • Vài tháng trước tôi đã viết một bài báo liên quan.
    Bài đó giải thích vì sao chuyện này có thể xảy ra, cũng như cách phòng tránh
    Link bài viết

    • Tôi tò mò không biết bài đó có nói luôn về lý do LinkedIn làm vậy không, hay chỉ giải thích khả năng kỹ thuật đơn thuần
  • Gần đây LinkedIn dùng khá nhiều dark pattern kỳ lạ

    • Trên Firefox, họ cưỡng ép thay đổi tốc độ cuộn
    • Trên web di động, xem hồ sơ xong bấm quay lại thì luôn bị chuyển hướng về trang chủ
    • URL phục vụ phân tích được tạo với đường dẫn ngẫu nhiên để né chặn
      Tôi tò mò không biết có ai hiểu lý do đằng sau các hành vi này không
    • Có vẻ LinkedIn đang tuyên chiến toàn diện với ngành cơ sở dữ liệu liên hệ, nên mới dùng các chiến thuật này.
      Từ web crawling cho tới thuê người làm thủ công, họ đang triển khai nhiều chiến lược phòng thủ khác nhau
  • Cách này thực ra đã được biết đến từ năm 2019
    Bài blog của Nymeria

  • Danh sách extension mà LinkedIn quét thì rõ ràng, nhưng thứ thú vị hơn lại là những extension không bị quét
    Ví dụ “Contact Out” có thể bị quét, nhưng dường như LinkedIn lại phớt lờ nó.
    Khiến người ta nghi có một thỏa thuận ngầm nào đó
    Link extension Contact Out

    • Extension đó không khai báo content-accessible resource trong manifest nên không thể fingerprint được
    • Điều thú vị là LinkedIn cũng không chặn extension Claude hay Dassi AI. Không rõ lý do vì sao
  • Có đoạn viết rằng “kho lưu trữ này ghi lại mọi extension mà LinkedIn kiểm tra và cung cấp công cụ để nhận diện chúng”,
    nhưng tôi muốn biết họ đã xác nhận bằng cách nào rằng LinkedIn thực sự kiểm tra các ID này.
    Và tôi cũng muốn biết việc này có liên quan với người dùng không dùng Chrome hay không

    • Vài tuần trước có một vendor đăng bài phân tích kỹ thuật cách LinkedIn làm,
      rồi khoe rằng cách tiếp cận của họ “im lặng hơn, ít bị chú ý hơn và dễ chạy ở quy mô lớn hơn”
      Bài blog của Castle