CreepJS: چگونه تست اثر انگشت مرورگر شما را میبیند
یک صفحه وب معمولی را باز کنید و قبل از اینکه روی چیزی کلیک کنید، میتواند مرورگر شما را از میان میلیونها نفر انتخاب کند. بدون نیاز به ورود، بدون کوکی، بدون درخواست مجوز. تاریخچه خود را پاک کنید، به حالت ناشناس بروید، همه چیز را از طریق VPN مسیریابی کنید، و صفحه اغلب هنوز هم میتواند شما را تشخیص دهد. این کار نه از طریق آدرس شما، بلکه از طریق هزاران تغییر کوچک مرورگر وب شما که به صورت رایگان ارائه میشود، انجام میشود. CreepJS ابزاری است که ثابت میکند چقدر در معرض دید هستید و وقتی عملکرد آن را مشاهده کردید، وب دیگر آنقدرها هم ناشناس به نظر نمیرسد. این راهنما توضیح میدهد که CreepJS چیست، چگونه شما را میبیند، چگونه با فرسایش حریم خصوصی مرورگر مقابله کند و چرا هر کسی که بیش از یک حساب رمزنگاری دارد باید به آن اهمیت دهد.
اثر انگشت مرورگر چیست؟
اثر انگشت مرورگر، شناسایی بدون برچسب است. به جای اینکه یک کوکی روی دستگاه شما قرار داده شود و بعداً دوباره خوانده شود، یک اسکریپت بیسروصدا دهها جزئیاتی را که مرورگر شما فقط با بارگذاری یک صفحه نشان میدهد، جمعآوری میکند و سپس آنها را در یک مقدار واحد که اغلب برای شما منحصر به فرد است، ترکیب میکند. وضوح صفحه نمایش شما، فونتهای نصب شده شما، منطقه زمانی شما، رشته عامل کاربر شما، نحوه دقیق ترسیم تصویر توسط کارت گرافیک شما، هر یک به تنهایی پیش پا افتاده هستند، اما در کنار هم قرار میگیرند و یک مرورگر و تقریباً هیچ مرورگر دیگری را توصیف میکنند.
این ترکیب چقدر منحصر به فرد است؟ در یک مطالعه برجسته EFF ، پیتر اکرسلی دریافت که ۸۳.۶٪ از مرورگرها در بین بازدیدکنندگانی که خود را آزمایش کردند، منحصر به فرد بودند و با افزودن جزئیات افزونه، این رقم به ۹۴.۲٪ افزایش یافت، به طوری که اثر انگشت حدود ۱۸.۱ بیت اطلاعات شناسایی را در خود جای داده بود. مطالعهای که بعداً در سال ۲۰۱۸ روی دو میلیون بازدیدکننده از یک سایت پرطرفدار انجام شد، منحصر به فرد بودن در دنیای واقعی را کمتر و حدود ۳۳.۶٪ نشان داد، زیرا کاربران عادی از تنظیمات رایج استفاده میکنند. حقیقت بین این اعداد قرار دارد و در هر صورت، هرچه مرورگر شما غیرمعمولتر باشد، اثر انگشت منحصر به فرد شما بیشتر شما را لو میدهد.
این تکنیک همچنین بسیار رایجتر از آن چیزی است که اکثر مردم تصور میکنند. بررسیهای دانشگاه پرینستون روی میلیونها وبسایت برتر نشان داد که اثر انگشت بوم در حدود ۱.۶٪ از آنها اجرا میشود و از ۵٪ از محبوبترین سایتها فراتر میرود و اندازهگیریهای بعدی آن را تا سال ۲۰۲۱ نزدیک به ۱۰٪ از صد هزار وبسایت برتر قرار میدهد. این روش به طور یکنواخت نیز مؤثر است، زیرا تحقیقات AmIUnique نشان داد که تقریباً ۹۰٪ از مرورگرهای دسکتاپ در مقابل حدود ۸۱٪ در تلفن همراه، که سختافزار معمولاً یکنواختتر است، منحصر به فرد هستند. به هر حال، اثر انگشت بیسروصدا روی بخش بزرگی از صفحاتی که قبلاً بازدید میکنید، اجرا میشود.
CreepJS چیست و چه کسی آن را ساخته است؟
CreepJS یک ردیاب نیست که سعی در فروش دادههای شما داشته باشد؛ این یک کتابخانه و آینه اثر انگشت متنباز است که توسط توسعهدهندهای به نام آبراهام جولیوت ساخته شده است تا نشان دهد که اکثر روشهای دفاع از حریم خصوصی چقدر ضعیف هستند و اثر انگشت در عمل چگونه کار میکند. شما مرورگر خود را به نسخه آزمایشی زنده هدایت میکنید، مرورگر آزمایشهای خود را انجام میدهد و گزارشی در مورد میزان قابل شناسایی بودن و صادقانه بودن ظاهر مرورگر شما به شما ارائه میدهد.
این پروژه تحت مجوز MIT با تقریباً ۲۴۰۰ ستاره در GitHub قرار دارد و بیش از بیست دسته آزمایش را در یک صفحه گردآوری کرده است. بهتر است آن را به عنوان یک معیار تحقیقاتی درک کنیم تا یک مسدودکننده ربات در دنیای واقعی، معیاری که محققان حریم خصوصی و فروشندگان ضد شناسایی برای سنجش کار خود از آن استفاده میکنند. اگر تنظیمات مخفی شما نتواند CreepJS را تحمل کند، در برابر یک سرویس انگشتنگاری تجاری جدی نیز دوام نخواهد آورد، و دقیقاً به همین دلیل است که این ابزار به آزمون غیررسمی تبدیل شده است که همه برای آن درس میخوانند.
گزارشی که این ابزار ارائه میدهد، برای یک ابزار رایگان، جزئیات غیرمعمولی دارد. در کنار امتیاز اعتماد اصلی، هر سیگنالی را که اندازهگیری کرده فهرست میکند، آنهایی را که دستکاری شده به نظر میرسند علامتگذاری میکند و نشان میدهد که اثر انگشت شما هنگام بارگذاری مجدد صفحه چقدر پایدار میماند. به همین دلیل است که توسعهدهندگان وقتی میخواهند بدانند آیا یک تغییر حریم خصوصی واقعاً چیزی را تغییر داده یا فقط اینطور به نظر میرسد، ابتدا به سراغ آن میروند.
نحوه عملکرد CreepJS در پشت صحنه
بیشتر بررسیهای اثر انگشت به سادگی تنظیمات شما را میخوانند. CreepJS پا را فراتر میگذارد، زیرا باعث میشود مرورگر شما واقعاً کارهایی انجام دهد، یک تصویر رسم کند، سهبعدی رندر کند، اثر انگشت صوتی را روی صدای تولید شده اجرا کند، تایمرها را فعال کند و سپس نحوه انجام هر کار توسط دستگاه شما را بررسی میکند. جعل «چگونه» بسیار دشوارتر از «چه» است، و این جایی است که CreepJS شهرت خود را به دست میآورد.
سیگنالهایی که CreepJS جمعآوری میکند
این ابزار از منابع گستردهای اطلاعات را استخراج میکند و هر یک از این ویژگیهای مرورگر، اطلاعات کمی متفاوتی در مورد دستگاه شما فاش میکنند. جدول زیر موارد اصلی و آنچه را که ارائه میدهند، نشان میدهد.
| سیگنال | آنچه آشکار میکند |
|---|---|
| بوم نقاشی | تفاوتهای پیکسلی بسیار کوچک هنگام رندر متن و شکل توسط دستگاه شما |
| وبجیال / پردازنده گرافیکی | سختافزار و درایور گرافیک شما، که از طریق رندر سهبعدی نمایش داده میشود |
| وب صوتی | چگونه مجموعه صوتی شما موج صوتی تولید شده را پردازش میکند |
| فونتهای نصبشده | فهرست دقیق فونتهای موجود در سیستم شما |
| وضوح صفحه نمایش | اندازه صفحه نمایش، عمق رنگ و نسبت پیکسل |
| عامل کاربر | ادعاهای مربوط به مرورگر، نسخه و سیستم عامل |
| وبآرتیسی | جزئیات شبکه محلی که میتوانند از طریق VPN نشت کنند |
یک اسکریپت بیشتر این موارد را از طریق جاوا اسکریپت معمولی و APIهای مرورگر، از جمله افزونههایی که مرورگر شما گزارش میدهد، میخواند. سپس CreepJS همان کاوشها را در داخل وبورکرها و فریمهای پنهان اجرا میکند تا پاسخها را بررسی کند، زیرا مرورگری که دستکاری شده است اغلب یک پاسخ در پنجره اصلی و پاسخ متفاوتی در جای دیگر میدهد.
امتیاز اعتماد، آنتروپی و دروغ
CreepJS هر سیگنال را در یک هش قرار میدهد، یک مقدار فشرده که جایگزین کل پروفایل شما میشود. حول آن، یک امتیاز اعتماد گزارش میدهد که کمتر به میزان نادر بودن شما و بیشتر به میزان سازگاری و قابل انتظار بودن مرورگر شما بستگی دارد. یک پیکربندی ساده و منسجم، حتی اگر رایج باشد، امتیاز خوبی کسب میکند.
بخش هوشمندانه، تشخیص دروغ است. CreepJS مراقب «دروغها» است، تناقضهای کوچکی که وقتی کسی مرورگر خود را دستکاری میکند، ظاهر میشوند، مانند یک عامل کاربر که ادعا میکند macOS است در حالی که فونتها و گرافیکهای نصب شده به وضوح ویندوز را نشان میدهند. جعل یک مقدار، باعث ایجاد عدم تطابق در جای دیگری میشود و این عدم تطابق اغلب بلندتر از سیگنال اصلی است که سعی در پنهان کردن آن داشتهاید.
این موضوع فراتر از بررسی برچسبها است. CreepJS همچنین مدت زمان انجام برخی عملیات را اندازهگیری میکند و نحوهی گرد کردن نتایج ریاضی توسط موتور جاوا اسکریپت شما را بررسی میکند، زیرا نسخههای مختلف موتور، محاسبات مثلثاتی را به روشهای کاملاً متفاوتی گرد میکنند و یک شماره نسخه جعلی نمیتواند نحوهی محاسبهی واقعی موتور واقعی را تغییر دهد. اگر تعداد کافی از این بررسیهای بیسروصدا را کنار هم قرار دهید، یک تغییر قیافهی مطمئن، شبیه یک لباس مبدل به نظر میرسد.
آنچه CreepJS در مورد مرورگرهای بدون سر فاش میکند
این بخشی است که اسکریپرها و سازندگان ربات را عصبی میکند. ابزارهای اتوماسیون مرورگر ساده تقریباً فوراً روشن میشوند، زیرا یک جلسه پیشفرض Selenium یا Playwright حاوی نشانههای واضحی است، پرچم navigator.webdriver روی true تنظیم شده است، یک عامل کاربر HeadlessChrome و سیگنالهایی دارد که به سادگی با مرورگر یک شخص واقعی همسو نیستند. وصلههای مخفی این نشانهها را کم رنگ میکنند، اما به ندرت آنها را خاموش میکنند.
آزمایشهای مستقل در برابر CreepJS نشان میدهد که فاصله بین یک ربات خام و یک ربات دقیق چقدر زیاد است. ارقام زیر از گزارشهای تشخیص ضد ربات گرفته شده است که هر ابزار را از طریق آزمایش اثر انگشت یکسانی اجرا کردهاند.
| تنظیمات اتوماسیون | تشخیص CreepJS |
|---|---|
| وانیل سلنیوم / نمایشنامهنویس | تقریباً ۱۰۰٪ شناسایی شد |
| نمایشنامهنویس با افزونه مخفیکاری | حدود ۴۰٪ شناسایی شد |
| درایور کروم شناسایی نشده | حدود ۳۱٪ شناسایی شد |
| کاموفاکس (فایرفاکس تقویتشده) | نزدیک به 0٪ امتیاز بدون سر |
درس این ماجرا برای هر کسی که یک وب اسکرپر میسازد، رک و صریح است. خاموش کردن یک پرچم کافی نیست، زیرا CreepJS بررسی میکند که آیا کل پروفایل با هم هماهنگ هستند یا خیر، و یک ابزار اتوماسیون نیمهمستتر در CreepJS اغلب امتیاز بدتری نسبت به یک ابزار درست و حسابی کسب میکند. هدف این نیست که مرورگر را تا جایی که چیزی برای گزارش دادن نداشته باشد، از کار بیندازیم، زیرا یک پروفایل خالی خود مشکوک است، بلکه هدف این است که یک جلسه بدون سربرگ دقیقاً مانند یک مرورگر واقعی روی صفحه نمایش واقعی رندر، رفتار و زمانبندی شود، که بسیار دشوارتر از تغییر یک تنظیم واحد به حالت نادرست است.
غلبه بر تشخیص CreepJS برای حسابهای ارز دیجیتال
این زاویهای است که به ندرت در جلد کتاب توضیحی CreepJS میبینم. صرافیها و پلتفرمهای ایردراپ به همان دلیلی که کازینوها مراقب هستند، از بازدیدکنندگان اثر انگشت میگیرند - برای اینکه یک نفر را که مخفیانه چندین حساب کاربری را اداره میکند، شناسایی کنند، و یک اثر انگشت مشترک میتواند کل یک مزرعه از کیف پولهای "جداگانه" را به یک دستگاه متصل کند.
چرا صرافیها و ایردراپها از شما اثر انگشت میگیرند؟
ریسک اینجا پول واقعی است. وقتی پروتکل LayerZero در ماه مه 2024 سرکوب ایردراپ Sybil خود را اجرا کرد ، 803093 آدرس را به عنوان مشکوک به کشاورزی چند حسابی علامت گذاری کرد و تا پایان تقریباً 59٪ از کل متقاضیان حذف شدند. اثر انگشت دستگاه و مرورگر یکی از قویترین ابزارهایی است که پلتفرمها برای پیوند دادن این حسابها به یکدیگر استفاده میکنند. میتوانید در عرض چند ثانیه کیف پولهای جدید ایجاد کنید، اما ساختن یک اثر انگشت واقعاً جدید بسیار سختتر است.
مرورگرهای ضد شناسایی واقعاً چه کاری انجام میدهند؟
اینجاست که مرورگرهای ضد شناسایی وارد میشوند، دستهای که شامل Multilogin، GoLogin، AdsPower و Dolphin Anty میشود. آنها به جای پنهان کردن اثر انگشت شما، به هر پروفایل یک پروفایل کامل و از نظر داخلی سازگار میدهند، بنابراین هر حساب کاربری مانند یک فرد معمولی متفاوت به نظر میرسد تا یک فرد در لباس مبدل. تقاضا به شدت افزایش یافته است و AdsPower به تنهایی رشد از حدود ۱۰۰۰۰۰ کاربر در سال ۲۰۲۰ به تقریباً ۹ میلیون کاربر در سال ۲۰۲۵ را گزارش میدهد. چیزی که آنها به درستی به آن اشاره میکنند، انسجام است، زیرا پروفایلی که کاملاً سازگار است، از پروفایلی که هوشمندانه در سه جا وصله شده و در چهارمی متناقض است، پیشی میگیرد. در باطن، هر پروفایل مجموعهای از مقادیر منطبق را ارائه میدهد. یک عامل کاربر باورپذیر، یک لیست فونت، یک رشته GPU، یک اندازه صفحه نمایش و یک منطقه زمانی، همگی متعلق به یک دستگاه فرضی هستند و ابزارهای بهتر، آنها را به عنوان یک واحد واحد میچرخانند تا اینکه یک فیلد را ویرایش کنند و امیدوار باشند که بقیه فیلدها هم مناسب باشند. با این حال، یک نکتهی صادقانه در اینجا وجود دارد. یک اثر انگشت پاک از حریم خصوصی ورود شما محافظت میکند، جایگزین خود-نگهداری و امنیت عملیاتی هوشیارانه نمیشود، و اجرای چندین حساب کاربری میتواند شرایط یک پلتفرم را نقض کند.
چگونه امتیاز اعتماد CreepJS خود را کاهش دهید
یک راهنمای جامع و کامل، نادرتر از آن چیزی است که فکر میکنید، و قانون خلاف شهود پشت آن این است که ریتمهای معمولی و یکنواخت، ساختگی به نظر میرسند. در اینجا یک ترتیب منطقی برای انجام این کار آمده است:
۱. از یک پروفایل دستگاه واقعی و رایج شروع کنید و در برابر تمایل به تقلید ناقص از مقادیر فردی مقاومت کنید، زیرا هر عدم تطابقی که ایجاد میکنید چیزی است که CreepJS میتواند آن را به عنوان یک دروغ تشخیص دهد.
۲. برای ناشناس ماندن کامل، از مرورگر Tor استفاده کنید، که صفحه نمایش شما را از طریق جعبه حروف به اندازههای ثابتی تقسیم میکند و باعث میشود هر دستگاه ویندوز، ویندوز یکسانی را نشان دهد و هر مک، macOS یکسانی را، بنابراین شما در میان جمعیت محو میشوید.
۳. Brave را در نظر بگیرید، که farbling آن یک پیچش تصادفی کوچک در هر جلسه به canvas و خوانشهای صوتی اضافه میکند، بنابراین مقادیر به جای تشکیل یک شناسه پایدار، بین سایتها تغییر میکنند.
۴. از افزونههای عجیب و غریب و تنظیمات غیرمعمول خودداری کنید، زیرا هر انتخاب عجیب و غریب آنتروپی شما را افزایش میدهد و شما را منحصر به فردتر میکند، نه کمتر.
۵. برای کار با چند حساب کاربری، به جای انبوهی از افزونههای حریم خصوصی، به یک مرورگر ضد شناسایی مناسب با یک پروفایل منسجم تکیه کنید، سپس دوباره روی نسخه آزمایشی CreepJS تست کنید و ببینید که دروغها چقدر زیاد میشوند، نه فقط امتیاز تیتر.
با حسابهایی شروع کنید که واقعاً مهم هستند، صادقانه آزمایش کنید و به عدد به عنوان بازخورد نگاه کنید، نه نمرهای که باید در اولین تلاش کسب کنید.

محدودیتهای دور زدن اثر انگشت مرورگر
شما هرگز واقعاً در برابر اثر انگشت برنده نمیشوید، فقط در آن ادغام میشوید و CreepJS وجود دارد تا نشان دهد که این ادغام چقدر میتواند ضعیف باشد. ابزارهای ضد اثر انگشت بهبود یافتهاند، اما روشهای تشخیص نیز بهبود یافتهاند. روند گستردهتر نیز برای حریم خصوصی دلگرمکننده نیست. گوگل پس از سالها وعده حذف کوکیهای شخص ثالث، در آوریل ۲۰۲۵ آنها را فعال نگه داشت و اوایل همان سال بیسروصدا ممنوعیت خود را برای اثر انگشت برای تبلیغکنندگان لغو کرد - اقدامی که تنظیمکننده داده بریتانیا آن را غیرمسئولانه خواند. اثر انگشت در حال رشد است، نه محو شدن، بنابراین هدف واقعبینانه، یک نمایه منسجم با آنتروپی کم است که در میان جمعیت ناپدید میشود، نه نامرئی بودن واقعی.
اثر انگشت شما، CreepJS و حریم خصوصی
یک بار CreepJS را روی خودتان اجرا کنید و بگذارید امتیاز اعتماد، زنگ خطری باشد که باید باشد. هدف این نیست که شبیه روح به نظر برسید، که فقط شما را غریبهتر میکند، بلکه هدف این است که معمولی و منسجم به نظر برسید و ابزار را با کار خود مطابقت دهید - Tor وقتی میخواهید ناشناس باشید، یک پروفایل ضد شناسایی منسجم وقتی چندین حساب کاربری را مدیریت میکنید. اثر انگشت یک بازی ترکیبی است که برای مدت طولانی انجام میشود. بنابراین سوال اصلی ساده است: آخرین باری که بررسی کردید مرورگر خودتان چه چیزی را به وب میگوید، چه زمانی بود؟
