امنیت و ضدتقلب
HandyCafe یک سیستم ضدتقلب اپراتوری و امنیت کلاینت دارد. این سیستم دو بخش دارد: پنل Security که در آن تشخیصها را پایش میکنید و بنها را مدیریت میکنید، و صفحه تنظیمات امنیتی که در آن مشخص میکنید چه محافظتهایی روی رایانههای کلاینت اجرا شوند. از آن برای سختسازی فرایندهای کلاینت، تشخیص ابزارهای تقلب و دیباگرها، بن کردن دستگاهها بر اساس اثرانگشت سختافزاری و بررسی حسابهای Steam پیوندخورده از نظر بن VAC استفاده کنید.
پنل امنیت
پنل Security در سه زبانه سازماندهی شده است: Tamper Events، HWID Blacklist و Steam VAC. برای جابهجایی میان آنها روی زبانهای در بالای پنل کلیک کنید.
رویدادهای دستکاری
زبانه Tamper Events تاریخچهای از تشخیصهای ضدتقلب گزارششده توسط رایانههای کلاینت را نشان میدهد. هر ردیف شامل Time، ستون Computer (نام دوستانه بههمراه آدرس MAC در زیر آن)، دسته Event، شدت (Severity) و یک توضیح به زبان ساده (Description) از آنچه تشخیص داده شده است.
از ردیف فیلتر در بالا برای محدود کردن فهرست استفاده کنید. میتوانید یک تاریخ انتخاب کنید (نما بهصورت پیشفرض روی امروز تنظیم است و با تغییر آن دادهها دوباره واکشی میشوند)، یک دسته انتخاب کنید، یک شدت برگزینید (Critical، Warning یا Info) و در کادر Search by computer or MAC تایپ کنید. دکمه Refresh رویدادها را دوباره بارگذاری میکند. شمارنده کنار فیلترها نشان میدهد از کل رویدادهای بارگذاریشده چند رویداد با فیلترهای فعلی همخوانی دارند.
دستههای رویداد شامل Process scan، Window scan، Driver scan، Debugger، Memory editor، Injector، Game cheat، Binary integrity، Code signature، DNS watch و Time tampering هستند. وقتی برای تاریخ انتخابشده هیچ تشخیصی وجود نداشته باشد، پنل پیام No tamper events on this date را نشان میدهد.
فهرست سیاه HWID
زبانه HWID Blacklist دستگاههایی را فهرست میکند که بر اساس اثرانگشت سختافزاری (هش HWID) بن شدهاند. جدول، HWID hash، Sample MAC، Reason، Note و Time را نشان میدهد. شمارنده در بالا نشان میدهد چند بن وجود دارد.
برای بن کردن یک دستگاه، روی Add HWID Ban کلیک کنید. در دیالوگ، آدرس MAC را وارد کنید (با قالبی مانند AA:BB:CC:DD:EE:FF)، یک دلیل اجباری (Reason) و یک یادداشت اختیاری (Note)، سپس روی Add ban کلیک کنید. سرور آدرس MAC را به اثرانگشت دستگاه تبدیل میکند و بن را ثبت میکند. برای بستن دیالوگ بدون ذخیره از Cancel استفاده کنید.
برای برداشتن یک بن، از اقدام حذف روی ردیف استفاده کنید (Remove ban). دکمه Refresh فهرست را دوباره بارگذاری میکند. وقتی هیچ بنی وجود نداشته باشد، جدول پیام No HWID bans را نشان میدهد.
Steam VAC
زبانه Steam VAC با استفاده از Steam Web API، حسابهای Steam اعضای پیوندخورده را از نظر بن VAC بررسی میکند.
کلید خود را در فیلد Steam Web API Key وارد کنید و روی Save کلیک کنید. راهنما میگوید: برای جستوجوی بن VAC لازم است. یکی را از steamcommunity.com/dev/apikey بگیرید.
در بخش VAC Sweep، دکمه Scan now یک بررسی دستی را اجرا میکند. این بررسی حساب Steam هر عضو پیوندخورده را از نظر بن VAC وارسی میکند و روزانه بهصورت خودکار اجرا میشود. دکمه Scan now تا زمانی که یک کلید Steam Web API ذخیره نشود غیرفعال است. متن وضعیت زمان Last sweep را نشان میدهد، یا اگر هیچ بررسیای اجرا نشده باشد، Never swept yet را نشان میدهد.
پیکربندی امنیت کلاینت
صفحه تنظیمات امنیت کلاینت مشخص میکند هر رایانه کلاینت چه محافظتهایی را اعمال کند. این صفحه به دو بخش Process Hardening و Tamper Monitor تقسیم میشود.
از کلید اصلی Enable client security protection برای روشن یا خاموش کردن کل سیستم استفاده کنید. وقتی غیرفعال باشد، کلاینت هیچ سختسازی فرایندی اعمال نمیکند و هیچ کاوش پایش دستکاری اجرا نمیکند. یک بنر زیر این کلید یادآوری میکند که باینریهای Client، Server و Watchdog محصول HandyCafe همیشه در فهرست سفید قرار دارند و محافظتها هرگز آنها را پرچمگذاری نمیکنند. بخشهای تفصیلی فقط وقتی نمایش داده میشوند که کلید اصلی روشن باشد.
این یک زیرصفحه تنظیمات است. تغییرات با دکمه Save سطح صفحه ثبت میشوند، نه با یک دکمه جداگانه داخل بخش. ذخیره پس از تشخیص هر کلاینت متصل پشتیبانیشده که پیکربندی جدید در حافظه فعال است موفق میشود. تسلیم بهصورت خودکار دوباره تلاش میشود. شکست تسلیم صفحه تنظیمات را آلوده نگاه میدارد تا بتوانید دوباره تلاش کنید. کلاینتهای قطعشده پیکربندی ذخیرهشده را دریافت میکنند هنگامی که دوباره متصل میشوند.
سختسازی فرایند
بخش Process Hardening سیاستهای خودسختسازی فرایند را هنگام راهاندازی کلاینت اعمال میکند. هر کلید یک نشان ریسک دارد (LOW RISK، MEDIUM RISK یا HIGH RISK) و یک تولتیپ که کارکرد آن را توضیح میدهد. گزینههای موجود:
- Memory protection (DACL): DACL فرایند خودی را جایگزین میکند تا توکنهای غیرادمین دسترسی خواندن، نوشتن و دسترسی به نخ (thread) را از دست بدهند. اتصال استاندارد Cheat Engine را مسدود میکند.
- DEP permanent: Data Execution Prevention را دائمی نگه میدارد تا استک و heap غیرقابلاجرا بمانند.
- Prohibit dynamic code (HIGH RISK): تخصیصهای JIT و قابلاجرا را مسدود میکند. ممکن است در برخی سیستمها shader JIT درایور GPU را بشکند و باعث شکست ضبط صفحه و کنترل از راه دور شود.
- AppLocker/WDAC signature policy (MEDIUM RISK): فرایند را وارد قوانین امضای باینری موجود AppLocker یا WDAC شما میکند.
- DLL load filter (MEDIUM RISK): بارگذاری DLL از تصویر راه دور را مسدود میکند، System32 را ترجیح میدهد و تصاویر با یکپارچگی پایین را مسدود میکند. ممکن است برخی overlayهای سازنده را بشکند.
- Block AppInit_DLLs / IME: بردارهای تزریق AppInit_DLLs، IME و Winsock LSP را مسدود میکند.
- Strict handle check (HIGH RISK): هنگام استفاده نادرست از handle خطا تولید میکند. یک باگ بهداشت handle در هر کتابخانه شخص ثالث، فرایند را کرش میکند.
- Linux: block ptrace: از ptrace و اتصال دیباگر برای کاربران غیر-root در Linux جلوگیری میکند.
- macOS: deny debugger attach: هر اتصال بعدی دیباگر را در macOS رد میکند.
پایشگر دستکاری
نظارت دستکاری کاوشهای پسزمینه برای ابزارهای تقلب، دیباگرها و تزریقکنندهها اجرا میکند. تشخیصها و نتایج بندی در برگه رویدادهای دستکاری ظاهر میشوند. کاوشهای موجود:
- تشخیص Cheat Engine و ویرایشگر حافظه: هر ثانیه فرایندهای فعال را بررسی میکند. با هویت فرایند پایدار نسخههای پشتیبانیشده Cheat Engine و خانوادههای دیگر ویرایشگر حافظه را تشخیص میدهد. در ویندوز همچنین فیلدهای شرکت و توضیح PE را بررسی میکند بنابراین تغییر نام پرونده قابل اجرا تشخیص را دور نمیزند. هیچ هش پرونده قابل اجرا استفاده نمیشود. ویرایشگر حافظه با اعتماد بالا متوقف میشود. ابزاری بدون هویت شناساییشده رویداد تنهایی گزارشدهی اگر کلاینت HandyCafe یا برنامه فعال مالکشدهشده مشاهدهشده را با حقهای نوشتن حافظه یا تزریق نخ باز کند ایجاد میکند.
- Debugger / RE tool detection (x64dbg, IDA, Ghidra): ابزارهای مهندسی معکوس را تشخیص میدهد.
- Code injector detection (Process Hacker, Scylla): تزریقکنندههای کد مانند Process Hacker، Scylla و kdmapper را تشخیص میدهد.
- Game cheat brand detection (neverlose, aimware, etc.): نام فرایندهای تقلب بازی تجاری شناختهشده را تطبیق میدهد و برای دامنههای آنها جستوجوی DNS انجام میدهد.
- Suspicious driver scan: سوءاستفاده از درایورهای آسیبپذیر را تشخیص میدهد. توجه: RTCore64 توسط MSI Afterburner هم استفاده میشود که ممکن است باعث مثبت کاذب شود.
- Anti-debug probe: APIهای رایج تشخیص حضور دیباگر و breakpointهای سختافزاری را بررسی میکند.
- Executable integrity check (SHA-256): در هر بررسی، فایل اجرایی خودی را هش میکند تا وصلهسازی روی دیسک را تشخیص دهد.
- Signature verification (WinVerifyTrust): امضای Authenticode را تأیید میکند. برای بیلدهای بتای امضانشده این گزینه را غیرفعال نگه دارید.
- DNS query monitoring (cheat domain blacklist): کش DNS را برای دامنههای سازندگان تقلب شناختهشده تجزیه میکند.
- Window title scan: عنوان پنجرهها را پویش میکند تا فرایندهای تقلبی را که باینری خود را برای فرار از تشخیص ناممحور تغییر نام میدهند، بگیرد.
ویرایشگرهای ششضلعی فراگیر و ویرایشگرهای منابع بدون خاتمه خودکار گزارش میشوند. دیباگرها و تزریقکنندهها فقط گزارشدهی باقی میمانند. یافتههای رفتاری نامشخص نیز فقط گزارشدهی میمانند زیرا آنتیویروس، دسترسیپذیری، سنجساز و نرمافزار حمایت راه دور میتوانند حقهای فرایند ویندوز یکسانی درخواست کنند. یافتههای رفتاری تنهایی به یک رویداد بهازای فرایند منبع به جای یک رویداد بهازای برنامه هدف گروهبندی میشوند. مرئی و دوامدار باقی میمانند اما نمره سلامت کلاینت را کاهش نمیدهند یا بندی خودکار را فعال نمیکنند. بندی خودکار نیاز به هویت ویرایشگر حافظه معتبر مستقل قابلتأیید و هرگز فرایند کلاینت HandyCafe را هدف نمیگیرد.
ابزار سفارشی خاموش هویتتراشیشده که نه خود را شناسایی میکند و نه کلاینت HandyCafe یا برنامه فعال مالکشدهشده مشاهدهشده را باز میکند نمیتواند از نرمافزار معمولی بهایمنی تفکیک شود. HandyCafe ربطهای را به بازیها تزریق نمیکند یا مسدودسازی فرایند سراسری سیستمی را فعال نمیکند زیرا آن مکانیزمها میتوانند ضبط، مدیریت راه دور و دستورات برنامه راهاندازیشده را مختل کنند.
بندی ویرایشگر حافظه DACL فرایند HandyCafe را تغییر نمیدهد یا سیاستهای تخفیف فرایند را فعال نمیکند. ضبط صفحه، مدیریت راه دور، شبکهسازی یا مسیرهای پرونده و راهاندازی برنامه را تغییر نمیدهد. اگر ویندوز اجازه خاتمه فرایند بالاتراولویت یا محافظتشده را نداشته باشد رویداد حیاتی باقی میماند و توصیف آن action=termination_failed را گزارش میکند.
گزارشهای دستکاری صف پسزمینه محدود استفاده میکنند. تأییدهای شبکه خارج از قفل کلاینت مشترک انتظار میکشند بنابراین گزارشدهی نمیتواند ضبط صفحه، مدیریت راه دور یا دستورات راهاندازی برنامه را نگاه دارد. گزارشها هویت درخواست پایدار در تلاشهای اتصال مجدد نگاه میدارند و سرور از تسلیم نسخههای تکراری جلوگیری میکند. نسخههای درحالانتظار و درپرواز تکراری فروپاشی میشوند. جزئیات رویداد حد اندازه ثابت دارند و نتایج بندی اعتماد بالا نسبت به تلهمتری فقط گزارشدهی زمانی که صف کامل باشد اولویت میگیرند.
بازههای کاوش
فیلدهای Min scan interval (seconds) و Max scan interval (seconds) کاوشهای کندتر درایور، دیباگر، یکپارچگی، امضا، DNS و پنجره را کنترل میکنند. کلاینت یک بازه تصادفی بین این دو مقدار برای هر جاروب کند انتخاب میکند. بررسی هویت Cheat Engine و ویرایشگر حافظه بازه یک ثانیه خود را استفاده میکند بنابراین این فیلدها بندی را تأخیر نمیدهند. سنجسازی رفتار دستهای ویندوز کلاینت HandyCafe و تا ۶۴ برنامه فعال مالکشدهشده مسیرتأییدشده را هر ده ثانیه بررسی میکند. بازه مجاز ۳۰ تا ۳۶۰۰ ثانیه است و حداقل باید کوچکتر یا مساوی حداکثر باشد. اگر مقادیر نامعتبر باشند صفحه پیام را نشان میدهد: بازه حداقل باید کوچکتر یا مساوی بازه حداکثر باشد. ذخیره تا زمانی که آنها را تصحیح کنید مسدود میشود.