LinkedIn ब्राउज़र extension को स्कैन कर रहा है
(404privacy.com)- LinkedIn Chrome में
chrome-extension://URL requests भेजकर यह जांचता है कि कौन-कौन से specific extensions install हैं, और जो install नहीं हैं वे developer tools console में request failure errors के रूप में दर्ज हो जाते हैं - LinkedIn के पास पहले से ही उपयोगकर्ता का नाम·नियोक्ता·पद·करियर इतिहास·लोकेशन होता है, इसलिए extension scan कोई anonymous device fingerprint नहीं बल्कि verified professional identity पर software list जोड़ने जैसा बन जाता है
- browsergate.eu के रिकॉर्ड और GitHub tracking repository के अनुसार यह scan कम से कम 2017 से जारी है, और target list 38 से बढ़कर अप्रैल 2026 तक 6,278 हो गई
- यह scan LinkedIn की APFC device fingerprinting system का हिस्सा है, जो canvas fingerprint, WebGL, audio behavior, fonts, screen info, device memory, WebRTC local IP सहित 48 browser/device characteristics के साथ profile बनाती है
- detection results को
AedEventऔरSpectroscopyEventमें पैक करके RSA public key से encrypt किया जाता है, फिर LinkedIn केli/trackendpoint पर भेजा जाता है; browsergate.eu का कहना है कि यह तरीका EU Digital Markets Act का उल्लंघन हो सकता है और इस पर आपराधिक जांच शुरू हुई है
व्यक्तिगत पहचान वाले प्रोफ़ाइल से जुड़ी software list
- सामान्य fingerprinting को आमतौर पर anonymous visitors के browser को cookies के बिना दोबारा पहचानने के तरीके के रूप में देखा जाता है
- इस स्थिति में profile device level पर पहचानी जा सकती है, लेकिन जरूरी नहीं कि वह किसी व्यक्ति की पहचान से जुड़ी हो
- LinkedIn anonymous visitor का नहीं, बल्कि उपयोगकर्ता का नाम, नियोक्ता, पद, करियर इतिहास, salary range, professional network, location पहले से रखता है
- LinkedIn का extension scan किसी अज्ञात visitor की device profile बनाने के बजाय पहले से verified professional identity पर detailed software list जोड़ने का तरीका बन जाता है
- LinkedIn की scan list में सैकड़ों job-seeking related extensions शामिल हैं, जिससे यह पता लगाया जा सकता है कि कोई उपयोगकर्ता employer को बताए बिना चुपचाप नौकरी खोज रहा है या नहीं
- political content, religious practice, disability assistance, neurodiversity से जुड़े extensions भी list में हैं, इसलिए browser software किसी व्यक्ति के निजी जीवन के बारे में अनुमान लगाने का आधार बन सकता है
- LinkedIn उपयोगकर्ता की workplace जानता है, इसलिए एक कर्मचारी का scan result सिर्फ व्यक्ति के बारे में ही नहीं बल्कि उस organization के internal tools, security products, competitor subscriptions और workflows को समझने में भी मदद कर सकता है
- LinkedIn की privacy policy में extension scan का खुलासा नहीं है, और उपयोगकर्ताओं से न consent मांगी जाती है, न उन्हें इसकी सूचना दी जाती है
LinkedIn से आगे की समस्या
-
enforcement और precedent
- LinkedIn extension list का उपयोग specific extensions install करने वाले उपयोगकर्ताओं पर inference निकालने और enforcement actions लेने के लिए करता है
- browsergate के अनुसार Milinda Lakkam ने शपथपूर्वक पुष्टि की: “LinkedIn took action against users who had specific extensions installed.”
- उपयोगकर्ताओं के पास यह जानने का कोई तरीका नहीं है कि उनका software सूचीबद्ध किया जा रहा है, वह list उनके खिलाफ इस्तेमाल हो रही है, और यह LinkedIn privacy policy में भी नहीं दिखती
-
fingerprinting ecosystem
- browser fingerprinting को आमतौर पर इस समस्या के रूप में देखा जाता है कि एक site signals इकट्ठा करके profile बनाए और sessions के बीच उपयोगकर्ता को पहचाने
- LinkedIn का extension scan verified identity से जुड़ी detailed software list बनाता है, और यह profile जरूरी नहीं कि LinkedIn के अंदर ही सीमित रहे
- अगर LinkedIn किसी third-party behavioral dataset को खरीदता है और उसमें उपयोगकर्ता का fingerprint मौजूद है, तो LinkedIn उसे अपने पास पहले से मौजूद user information के साथ जोड़ सकता है
- LinkedIn के बाहर की browsing behavior, purchase history, location patterns और interests, LinkedIn account से जुड़े profile का हिस्सा बन सकते हैं
- उल्टा, LinkedIn हर page visit पर load होने वाले Google reCAPTCHA enterprise सहित third-party scripts को integrate करता है, जिससे platforms के बीच data flow होता है
- LinkedIn द्वारा verified identity से जोड़ा गया fingerprint, linkedin.com के बाहर के advertising और tracking systems पर भी असर डाल सकता है
- LinkedIn में एक बार login करने के बाद, उस visit के दौरान बना fingerprint पूरे web पर आपका पीछा कर सकता है
-
वे उपयोगकर्ता समूह जिनके लिए यह वास्तविक खतरा है
- पत्रकारों, वकीलों, शोधकर्ताओं और मानवाधिकार जांचकर्ताओं के लिए LinkedIn profile online सबसे विस्तृत verified identity documents में से एक हो सकती है
- LinkedIn profile real name के साथ professional purposes के लिए जानबूझकर बनाई गई जानकारी होती है
- extension scan इस profile से privacy tools, security extensions, investigation tools और productivity apps की install history को उपयोगकर्ता की जानकारी के बिना जोड़ देता है
- अगर आप LinkedIn और Chrome का उपयोग करते हैं, तो यह data collection अभी हो रही है
APFC और advanced JavaScript fingerprinting
- extension scan कोई standalone feature नहीं, बल्कि LinkedIn के आंतरिक APFC नामक बड़े device fingerprinting system का हिस्सा है
- APFC का मतलब Anti-fraud Platform Features Collection है, और आंतरिक रूप से इसे DNA, Device Network Analysis भी कहा जाता है
- LinkedIn इन tracking तरीकों के बारे में extension scan की तुलना में थोड़ा अधिक खुला है, लेकिन ऐसे तरीके commercial websites पर आम हैं
- यह system हर visit पर 48 browser/device characteristics इकट्ठा करता है
- collected items में canvas fingerprint, WebGL renderer और parameters, audio processing behavior, installed fonts, screen resolution, pixel ratio, hardware concurrency, device memory, battery level, WebRTC के जरिए local IP address, timezone और language शामिल हैं
- extension scan इस बड़े profile को बनाने वाले inputs में से एक है
तकनीकी रूप से क्या होता है
- LinkedIn का code Chrome में install specific files खोजने के लिए
chrome-extension://URLs परfetch()requests भेजता है - अगर extension install नहीं है, तो Chrome request को block कर देता है और failure log करता है
- अगर extension install है, तो request quietly successful हो जाती है और LinkedIn इसे record कर लेता है
- verified environment में scan लगभग 15 मिनट तक चला और 6,000 से अधिक extensions खोजे गए
- उपयोगकर्ता Chrome में LinkedIn खोलकर developer tools के console tab में इसे खुद देख सकते हैं
- console में दिखने वाली हर red error उपयोगकर्ता के fingerprint का एक हिस्सा है
code structure और detection method
- LinkedIn सभी Chrome visitors के browser में JavaScript code चलाता है, और extension scan system उसी के भीतर मौजूद है
- संबंधित file लगभग 1.6MB की minified और आंशिक रूप से obfuscated JavaScript file है
- सामान्य minification performance के लिए code को compress करती है, जबकि obfuscation code को पढ़ना और समझना कठिन बनाने का अलग चरण है
- LinkedIn extension scan system वाले exact module को obfuscate करता है और उसे हजारों lines वाली JavaScript file के भीतर छिपा देता है
- file के भीतर browser extension IDs का hardcoded array मौजूद है
- फरवरी 2026 तक इस array में 6,278 entries थीं
- हर entry में दो fields हैं: Chrome Web Store extension ID और उस extension package के भीतर specific file path
- file path कोई संयोगवश चुनी गई value नहीं है, क्योंकि Chrome extensions
web_accessible_resourcesfield के जरिए internal files को web pages के सामने expose कर सकती हैं - अगर extension install है और उसने specific file को accessible घोषित किया है, तो
chrome-extension://{id}/{file}पर भेजी गईfetch()request successful होती है - install न होने पर Chrome request को block कर देता है
- LinkedIn list में मौजूद 6,278 extensions में से हर एक के लिए accessible file पहचानकर सीधे detect करता है
- list को लगातार maintain और expand किया जा रहा है, और ऐसा लगता है कि Chrome Web Store extension packages को crawl करके हर manifest से web-accessible resources parse कर detection targets जोड़ने वाला tool भी मौजूद था
दो scan modes और Spectroscopy
- extension scan दो modes में काम करता है
- पहला mode
Promise.allSettled()का उपयोग करके सभी requests एक साथ भेजता है और पूरे extension set को parallel में detect करता है - दूसरा mode हर request के बीच configurable delay रखकर sequential requests भेजता है, जिससे network activity समय में फैल जाती है और monitoring tools में कम नजर आती है
- LinkedIn internal feature flags का उपयोग करके इन दोनों modes के बीच switch कर सकता है
- scan को
requestIdleCallbackसे delay भी किया जा सकता है, ताकि browser idle होने पर यह चले और उपयोगकर्ता performance impact महसूस न करें - Spectroscopy नाम का दूसरा detection system extension list से स्वतंत्र रूप से काम करता है
- Spectroscopy पूरे DOM tree को scan करके सभी text nodes और element attributes में
chrome-extension://URL references ढूंढता है - इस तरीके से वे extensions भी पकड़े जा सकते हैं जो LinkedIn की hardcoded list में न हों लेकिन page को modify करते हों
- दोनों systems को मिलाने पर install किए गए extensions और वास्तव में page के साथ interact करने वाले extensions, दोनों को cover किया जाता है
telemetry transmission
- दोनों detection systems results को एक ही telemetry pipeline में भेजते हैं
- detected extension IDs को
AedEventऔरSpectroscopyEventobjects में पैक किया जाता है - इन objects को RSA public key से encrypt करके LinkedIn के
li/trackendpoint पर भेजा जाता है - encrypted fingerprint बाद में session के दौरान होने वाली सभी API requests के HTTP headers में insert कर दिया जाता है
- visit के दौरान उपयोगकर्ता जो भी actions लेते हैं, LinkedIn यह value उनके साथ प्राप्त करता है
कानूनी संदर्भ
- browsergate.eu ने संबंधित कानूनी तर्क को विस्तार से संकलित किया है
- 2024 में Microsoft को EU Digital Markets Act के तहत gatekeeper नामित किया गया, और LinkedIn regulated products में से एक है
- DMA की मांग है कि gatekeepers third-party tools के लिए user data access की अनुमति दें और उन tools के उपयोगकर्ताओं के खिलाफ कार्रवाई से बचें
- browsergate.eu का मानना है कि LinkedIn ने third-party tool users पर व्यवस्थित enforcement की और उनकी पहचान के लिए covert extension scanning का उपयोग किया, जो इन नियमों का उल्लंघन हो सकता है
- यह दावा कानूनी रूप से स्वीकार होगा या नहीं, यह अदालत के निर्णय का विषय है
- Bamberg स्थित Bavarian Central Cybercrime Prosecution Office की Cybercrime Unit ने पुष्टि की कि आपराधिक जांच शुरू हुई है
- यह संस्था jurisdiction के पार फैले गंभीर cybercrime मामलों को संभालती है
- browsergate.eu ने आपराधिक जांच की पुष्टि की, case number दिया, और कहा कि वह पूर्ण court documents जारी करने की तैयारी में है
1 टिप्पणियां
Hacker News टिप्पणियाँ
“इसमें कोई शक नहीं कि आपराधिक जाँच शुरू हो चुकी है।” बढ़िया। ऐसी कंपनियाँ पत्थर खाने लायक हैं, और उससे भी बदतर की हकदार हैं
अगर कोई टीम अपनी वेबसाइट को औसत से बदतर तरीके से बर्बाद न करने को लेकर गंभीर है, तो उसे ज्ञात service degradation को बढ़ावा देने वालों की सूची के आधार पर उम्मीदवारों को फ़िल्टर कर पाना चाहिए
हो सकता है कि अंकुर में ही इसे काटना अब देर हो चुकी हो, लेकिन ऐसे लोगों को बिना किसी रोक-टोक के काम करते रहने और और बड़ा बनने देने की कोई वजह नहीं है
“फिर mastodon पर browsergate की चर्चा फूटी और मैंने सोचा ‘नहीं, ऐसा नहीं हो सकता’, लेकिन असल में मुकदमे की तैयारी चल रही थी।” - un-nf
Farrell v LinkedIn Corporation 4:26-cv-02953-KAW (N.D. Cal. Apr. 6, 2026)
https://ia601503.us.archive.org/33/items/gov.uscourts.cand.4...
मेरा Chrome मैं कौन-कौन से extensions इंस्टॉल किए हुए हैं, यह किसी भी वेबसाइट को क्यों बता रहा है?
अगर error नहीं आता, तो यह पता चल जाता है कि वह extension इंस्टॉल है। यह चतुर और मेहनत वाला तरीका है, लेकिन यह ऐसी चीज़ों को रोकने के लिए बनी सुरक्षा व्यवस्था को बायपास करता है
मैंने पढ़ा कि इसका इस्तेमाल terms of service को बायपास करने वाले ज्ञात scraper extensions के उपयोगकर्ताओं को ब्लॉक करने के लिए किया जाता है, लेकिन यह पूरी तरह संतोषजनक नहीं लगता
“Chrome extensions manifest.json के
web_accessible_resourcesफ़ील्ड के ज़रिए अपनी internal files को webpages के सामने उजागर कर सकते हैं। अगर extension इंस्टॉल है और उसने resource को expose किया है, तोchrome-extension://{id}/{file}परfetch()request सफल हो जाती है। अगर इंस्टॉल नहीं है, तो Chrome request को ब्लॉक कर देता है और promise reject हो जाती है.LinkedIn सूची में मौजूद सभी extensions को इसी तरह test करता है.”
लेकिन 6,300 extensions के लिए ऐसा करना बहुत ज़्यादा काम है। क्या कोई इसे service की तरह उपलब्ध कराता है?
दोस्तों, अगर काम पर आपसे ऐसा कुछ implement करने को कहा जाए, तो आप क्या चुनेंगे: विरोध करके डटे रहना और नौकरी गंवाना, या मान लेना और नौकरी बचाना
एक practitioner के रूप में telemetry और surveillance की सीमा कहाँ खींचनी चाहिए?
हालाँकि अगर आप ऐसे खेल खेल रहे हैं, तो शायद नई नौकरी ढूँढ़ने का समय आ गया है ;)
बस अगर यह बात सिर्फ़ तीन लोगों को ही मालूम है, तो तुरंत पकड़ लिए जाओगे कि कौन था
हो सकता है कि ऐसे ही हालात वाले managers ने निर्देश दिए हों, और उनके ऊपर के managers सिर्फ़ revenue growth देखते हों, तरीक़े की परवाह न करते हों। फिर भी कहीं न कहीं किसी को यह कहना चाहिए कि “हम अभी कर क्या रहे हैं?” — अजीब है
सवाल का जवाब दूँ तो मैं निश्चित ही विरोध करूँगा। अभी मैं इतना सौभाग्यशाली हूँ कि ऐसा चुनाव बिना किसी भारी कीमत के कर सकता हूँ। लेकिन HN पर आकर कौन कहेगा, “हाँ, मेरे पास नैतिकता नहीं है!”? burner account से भी यह पता नहीं चलेगा कि वह सच है या नहीं
मूल लेख में मुझे सबसे संबंधित हिस्सा यह मिला:
“Chrome extensions manifest.json के
web_accessible_resourcesफ़ील्ड के ज़रिए अपनी internal files को webpages के सामने उजागर कर सकते हैं। अगर extension इंस्टॉल है और उसने resource को expose किया है, तोchrome-extension://{id}/{file}परfetch()request सफल हो जाती है। अगर इंस्टॉल नहीं है, तो Chrome request को ब्लॉक कर देता है और promise reject हो जाती है.LinkedIn सूची में मौजूद सभी extensions को इसी तरह test करता है.”
यह देखना भी दिलचस्प होगा कि और कौन-सी sites वही फ़ाइलें test करती हैं — क्या किसी ने पहले से यह जाँच की है?
यह device fingerprinting में काफ़ी standard practice है। LinkedIn शायद scraping वगैरह से अपने platform की रक्षा के लिए इसका इस्तेमाल करता है, और extensions की सूची में यूज़र की पहचान करने और fingerprint के उपयोगी हिस्से के रूप में काम आने लायक पर्याप्त entropy होती है
मैंने लोगों को कुछ ही दिनों में local Chrome extensions बनाकर इंस्टॉल करते देखा है, फिर AI को developer tools में inject करके लगभग किसी भी वेबसाइट को scrape करवा लेते हैं। और यह कुछ महीने पहले की बात है
अब मुझे नहीं लगता कि इसे आसानी से defend करने का कोई तरीका है। ऐसी defensive programming वाली उपायों के बेकार होने में बस समय की बात है
क्या यह hallucination है? यह उद्धरण मुझे कहीं और नहीं मिल रहा
“browsergate के अनुसार Milinda Lakkam ने शपथपूर्वक पुष्टि की कि ‘LinkedIn ने कुछ खास extensions इंस्टॉल किए हुए यूज़र्स के ख़िलाफ़ कार्रवाई की.’”
https://browsergate.eu/the-evidence-pack/
LinkedIn systems ने “
[XXXXXX]इंस्टॉल किए हुए LinkedIn users के ख़िलाफ़ कार्रवाई की हो सकती है.”संपादन: अच्छा है! मैंने अभी देखा कि indented text अब mobile browser में भी line-wrap हो रहा है। कम-से-कम ffm में तो ऐसा है। यह कब ठीक हुआ, जानने की उत्सुकता है
निष्पक्षता से कहें तो LinkedIn की privacy policy में साफ़ लिखा है कि वह यह जानकारी इकट्ठा करता है। https://www.linkedin.com/legal/privacy-policy?ref=cms.hondas... देखें
“1.5 डिवाइस और लोकेशन
जब आप हमारी services पर आते हैं या उन्हें छोड़ते हैं (जिसमें कुछ plugins और अन्य sites पर मौजूद हमारे cookies या समान technologies शामिल हैं), तो हमें उस site का URL मिलता है जहाँ से आप आए, जहाँ गए, और आपकी visit का समय। हमें आपके network और device की जानकारी भी मिलती है (जैसे IP address, proxy server, operating system, web browser और add-ons, device identifiers और features, cookie IDs और/या ISP, या mobile carrier). अगर आप mobile device से हमारी services का उपयोग करते हैं, तो आपके फ़ोन की settings के अनुसार वह device location data हमें भेज सकता है। GPS या दूसरे tools से आपकी exact location पहचानने से पहले हम opt-in माँगते हैं.”
यहाँ प्रासंगिक हिस्सा है “कुछ plugins शामिल हैं”
मैंने अपना LinkedIn account delete कर दिया, और अब ज़िंदगी बेहतर है