1 คะแนน โดย GN⁺ 2026-02-06 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เว็บไซต์ LinkedIn ตรวจจับการมีอยู่ของส่วนขยาย Chrome จำนวน 2,953 รายการ ทุกครั้งที่โหลดหน้าเว็บ
  • ที่เก็บนี้จัดทำเอกสาร ID และชื่อส่วนขยายทั้งหมด พร้อมลิงก์ Chrome Web Store ที่ LinkedIn ใช้ตรวจสอบ
  • จากส่วนขยายทั้งหมด ประมาณ 78% ตรวจสอบได้จาก Chrome Web Store และ ประมาณ 22% ตรวจสอบผ่าน Extpose
  • สคริปต์ที่ให้มา (fetch_extension_names.js) จะรวบรวมชื่อส่วนขยายโดยอัตโนมัติ และใช้ Extpose ค้นหาแทนสำหรับส่วนขยายที่ถูกลบแล้ว
  • ข้อมูลนี้แสดงให้เห็นถึง ขนาดของการที่เว็บไซต์ระบุส่วนขยายเบราว์เซอร์ของผู้ใช้

LinkedIn Chrome Extension Fingerprinting

  • LinkedIn ตรวจสอบส่วนขยาย Chrome จำนวน 2,953 รายการอย่างลับ ๆ ทุกครั้งที่โหลดหน้า
    • กระบวนการนี้เป็นรูปแบบหนึ่งของ fingerprinting เพื่อระบุว่าส่วนขยายใดติดตั้งอยู่ในเบราว์เซอร์ของผู้ใช้
  • ที่เก็บนี้มี รายการส่วนขยายทั้งหมดที่ LinkedIn ตรวจสอบและเครื่องมือที่เกี่ยวข้อง
    • ไฟล์ chrome_extensions_with_names_all.csv จัดเก็บ ID ส่วนขยาย ชื่อ และลิงก์ไปยัง Chrome Web Store หรือ Extpose

โครงสร้างข้อมูล

  • ไฟล์ข้อมูลมี 3 คอลัมน์ ได้แก่ Extension ID, Name, URL
    • Extension ID เป็นตัวระบุความยาว 32 อักขระ และ URL จะลิงก์ไปยัง Chrome Web Store หรือ Extpose
  • สามารถดูรายการทั้งหมดได้ในไฟล์ chrome_extensions_with_names_all.csv

สคริปต์

  • fetch_extension_names.js จะดึงชื่อส่วนขยายจาก Chrome Web Store และหากถูกลบหรือเข้าถึงไม่ได้ จะใช้ Extpose ค้นหาแทน
    • ตัวอย่างคำสั่ง: node fetch_extension_names.js, node fetch_extension_names.js --offset 0 --limit 500
  • test_fetch.js จะประมวลผลส่วนขยาย 3 รายการแรก และสามารถทดสอบด้วยโหมด verbose ได้

สถิติ

  • รายการ fingerprint ของ LinkedIn มี ส่วนขยายทั้งหมด 2,953 รายการ
  • ในจำนวนนี้ ประมาณ 78% ตรวจสอบได้จาก Chrome Web Store และ ประมาณ 22% ตรวจสอบผ่าน Extpose

ไฟล์ต้นฉบับ

  • chrome_extension_ids.txt : รายการ ID ส่วนขยายดิบ ที่ดึงมาจาก fingerprint.js ของ LinkedIn
  • fingerprint.js : สคริปต์ตรวจจับส่วนขยาย (เวอร์ชันย่อ) ที่รวมอยู่ในหน้า LinkedIn
  • fetch_extension_names.js : สคริปต์ช่วยเหลือ สำหรับรวบรวมชื่อส่วนขยายโดยอัตโนมัติ

สรุป

  • LinkedIn กำลังตรวจสอบข้อมูลส่วนขยายเบราว์เซอร์ในวงกว้าง และ
    ที่เก็บนี้เปิดเผย รายการทั้งหมดและวิธีการเก็บข้อมูล อย่างโปร่งใส

1 ความคิดเห็น

 
GN⁺ 2026-02-06
ความเห็นจาก Hacker News
  • ดูเหมือนว่า Firefox จะ ไม่โดนผลกระทบ จากประเด็นนี้
    Chrome เปิดเผย web accessible resources ของส่วนขยายในรูปแบบ chrome-extension://[PACKAGE ID]/[PATH] แต่
    Firefox เข้าถึงในรูปแบบ moz-extension://<extension-UUID>/myfile.png
    โดย <extension-UUID> นี้จะถูก สุ่มสร้าง แยกตามแต่ละเบราว์เซอร์ เพื่อป้องกันไม่ให้เว็บไซต์ใช้ส่วนขยายที่ติดตั้งอยู่มาทำ fingerprinting ของเบราว์เซอร์
    เอกสารที่เกี่ยวข้อง: เอกสาร Chrome, เอกสาร Firefox

    • ชอบบอกกันว่าถ้าใช้เบราว์เซอร์ที่มีส่วนแบ่งตลาดไม่ถึง 5% ก็จะพลาดเว็บเทคโนโลยีใหม่ ๆ แต่กลับมี ข้อดีด้านความปลอดภัย แบบนี้เสียอย่างนั้น ช่างน่าขันดี
    • บางครั้งพัดลมคอมของฉันจะหมุนเหมือนบ้าคลั่ง ซึ่งส่วนใหญ่เกิดจาก Firefox ที่เปิดแท็บ LinkedIn ทิ้งไว้ เลยสงสัยว่านี่มันแอบ ขุดคริปโต อยู่หรือแค่ไม่มีประสิทธิภาพกันแน่
    • ถ้าเปลี่ยน extension ID ตามแต่ละเบราว์เซอร์ แบบนี้แทนที่จะระบุตัวเบราว์เซอร์ ก็กลายเป็น ระบุตัวผู้ใช้เอง หรือเปล่า
      มันเหมือนเปลี่ยนจาก “เบราว์เซอร์นี้มีส่วนขยาย X, Y, Z” ไปเป็น “นี่คือเบราว์เซอร์ของ Jim Bob” ไม่ใช่หรือ?
  • ดูจากรายชื่อส่วนขยายแล้ว ส่วนใหญ่เป็นส่วนขยายเกี่ยวกับ การ scrape ข้อมูล LinkedIn หรือระบบอัตโนมัติ
    ตอนทำงานที่ LinkedIn เอง การใช้งานในทางที่ผิดแบบนี้ก็หนักมาก และแม้จะสร้าง ระบบตรวจจับและป้องกัน ภายในที่ค่อนข้างซับซ้อน ก็ยังเป็นการต่อสู้ที่ไม่มีวันจบ

    • ถ้า LinkedIn จะสร้างแหล่งข้อมูลสำหรับทำ extension fingerprinting ก็มีโอกาสสูงว่าต้องมีใครสักคน (น่าจะเป็น LinkedIn?) ไป scrape Chrome Web Store มา
      ซึ่งอาจจะเป็น การละเมิด TOS ของ Chrome Web Store ก็ได้
    • ดูจากรายชื่อแล้วก็ไม่ได้ซับซ้อนมาก แค่กรองส่วนขยายที่มีคำว่า “email” อยู่ในชื่อเท่านั้น และส่วนใหญ่ก็ไม่ได้มีสิทธิ์เข้าถึง linkedin.com ด้วยซ้ำ
    • สำหรับ LinkedIn มันอาจเป็นปัญหา แต่ปัญหาที่แท้จริงคือบริษัทอย่าง LinkedIn ที่ทำ data brokering มากกว่า
    • จากในโค้ด ดูเหมือนว่าถ้าตรวจพบแล้วก็ไม่ได้ทำอะไรต่อ แค่บันทึกผลเป็น CSV เอาไว้ใช้เป็นข้อมูล fingerprinting เท่านั้น
    • ฉันเคย scrape LinkedIn ให้ลูกค้าตามงานจ้างอยู่ช่วงหนึ่ง ถือเป็น ประสบการณ์ที่น่าสนใจ มาก
  • ตอนนี้ Chrome ดูเหมือนจะเป็น IE6 ตัวใหม่ แล้ว
    Google ทำให้ตัวเองกลายเป็น Microsoft รายถัดไป และกำลังเดินไปในทิศทางที่เป็นมิตรกับโฆษณา
    ให้ความรู้สึกว่าไม่ได้ช่วยยกระดับความปลอดภัยเท่าไรนัก แต่กลับไปทาง ทำให้ตัวบล็อกโฆษณาใช้การไม่ได้ และ ปล่อยให้มัลแวร์ผ่านได้ มากกว่า

    • แม้จะเห็นด้วยว่า Chrome เป็นสปายแวร์ แต่ก็จริงที่มันเป็นตัวแรก ๆ ที่นำฟีเจอร์ความปลอดภัยอย่าง Site Isolation และ sandboxing มาใช้
      ความเร็วในการออกแพตช์กับการทดสอบด้านความปลอดภัยก็ไม่ได้แย่
    • Chrome ทุกวันนี้ แย่กว่า IE6 มากเสียอีก อย่างน้อย Microsoft ก็ไม่ได้ไล่ตามผู้ใช้หรือขายโฆษณา
    • ใครควบคุมโฆษณาได้ คนนั้นก็ควบคุมอินเทอร์เน็ตได้
    • Google กลายเป็น ผู้ผูกขาด ไปแล้ว และผู้ผูกขาดทุกเจ้าก็มักลงเอยแบบนี้
    • ถ้าในปี 2026 ยังมีคนใช้ Chrome อยู่ ก็คงเป็น นักพัฒนาที่กล้าหาญจริง ๆ
  • ถ้าเปิด LinkedIn แล้วกด F12 จะเห็นว่า จำนวน error เพิ่มขึ้นเรื่อย ๆ
    ดูภาพหน้าจอได้ที่ นี่

    • ถ้าลิงก์ X ถูกบล็อก ก็ใช้ ลิงก์ xcancel ได้เหมือนกัน
  • เมื่อเร็ว ๆ นี้มีการสรุป เทคนิคตรวจจับส่วนขยาย ของ LinkedIn และวิธีอื่นที่มีผลข้างเคียงน้อยกว่าไว้ในบล็อก
    โพสต์บนบล็อก Castle

    • ถ้าแพตช์ Firefox ให้ navigator.webdriver เป็น false ตลอด ก็จะควบคุมจากระยะไกลได้
      ตรวจจับได้ยาก แต่ก็ยังจับได้จาก รูปแบบความเร็วในการป้อนข้อมูล
    • เนื้อหาในโพสต์ตรงกับหัวข้อนี้พอดี เลยอ่านได้อย่างน่าสนใจ
  • เมื่อไม่กี่เดือนก่อน ฉันเขียน บทความ เกี่ยวกับเรื่องนี้ไว้
    อธิบายว่าทำไมเรื่องแบบนี้ถึงเกิดขึ้นได้ และรวมถึง วิธีป้องกัน ด้วย
    ลิงก์บทความ

    • สงสัยว่าในบทความนั้นพูดถึงเหตุผลที่ LinkedIn ทำแบบนี้ด้วยหรือไม่ หรืออธิบายแค่ ความเป็นไปได้ทางเทคนิค เท่านั้น
  • ช่วงหลัง LinkedIn ใช้ dark pattern แปลก ๆ เยอะมาก

    • บังคับเปลี่ยนความเร็วการเลื่อนใน Firefox
    • บนเว็บมือถือ ถ้าดูโปรไฟล์แล้วกดย้อนกลับ จะถูก redirect ไปหน้าแรก ตลอด
    • URL สำหรับ analytics ถูกสร้างเป็นพาธแบบสุ่มเพื่อ หลบการบล็อก
      เลยสงสัยว่ามีใครรู้ไหมว่าทำไมถึงทำแบบนี้
    • ดูเหมือนว่า LinkedIn กำลังเปิดศึกเต็มรูปแบบกับ อุตสาหกรรมฐานข้อมูลรายชื่อติดต่อ เลยใช้ยุทธวิธีแบบนี้
      ตั้งแต่การป้องกัน web crawling ไปจนถึงงานที่ต้องจ้างคนมาทำด้วยมือ พวกเขากำลังใช้ กลยุทธ์ป้องกันหลายรูปแบบ
  • วิธีแบบนี้เป็นเรื่องที่ รู้กันมาตั้งแต่ปี 2019 แล้ว
    โพสต์บนบล็อก Nymeria

  • รายชื่อส่วนขยายที่ LinkedIn สแกนนั้นชัดเจนดี แต่สิ่งที่น่าสนใจกว่าคือส่วนขยายที่มัน ไม่สแกน
    ตัวอย่างเช่น “Contact Out” สามารถถูกสแกนได้ แต่ LinkedIn ดูเหมือนจะ ตั้งใจเมิน มัน
    เลยอดสงสัยไม่ได้ว่ามีดีลลับอะไรหรือเปล่า
    ลิงก์ส่วนขยาย Contact Out

    • ส่วนขยายนั้นไม่ได้ประกาศ content-accessible resources ใน manifest จึง fingerprinting ไม่ได้
    • ที่น่าสนใจคือ LinkedIn ก็ไม่ได้บล็อกอะไรอย่าง ส่วนขยาย Claude หรือ Dassi AI เช่นกัน เลยอยากรู้เหตุผล
  • มีข้อความบอกว่า “รีโพซิทอรีนี้จัดทำเอกสารส่วนขยายทั้งหมดที่ LinkedIn ตรวจสอบ และมีเครื่องมือสำหรับระบุตัวตนของมัน”
    เลยอยากรู้ว่าเขา ยืนยันได้อย่างไรว่า LinkedIn ตรวจสอบ ID เหล่านี้จริง
    และเรื่องนี้ เกี่ยวข้องกับผู้ใช้ที่ไม่ได้ใช้ Chrome ด้วยหรือไม่

    • เมื่อไม่กี่สัปดาห์ก่อน มีผู้ขายรายหนึ่งโพสต์บทวิเคราะห์เชิงเทคนิคเกี่ยวกับวิธีของ LinkedIn
      พร้อมอวดว่าแนวทางของตัวเอง “เงียบกว่า สังเกตเห็นได้ยากกว่า และรันในสเกลใหญ่ได้ง่ายกว่า”
      โพสต์บนบล็อก Castle