یک راه نفوذ جدید در نینتندو سوییچ ۲ پیدا شده است که از نسخه نینتندو سوییچ ۱ بازی Civilization VII بهعنوان نقطه ورود برای اجرای کدهای غیرمجاز روی کنسول استفاده میکند. این ابزار که CivSwitch نام دارد، توسط هکری به نام Gezine توسعه یافته و از یک آسیبپذیری Cross-Site Scripting (XSS) در بخش گفتوگوی چندنفره
یک راه نفوذ جدید در نینتندو سوییچ ۲ پیدا شده است که از نسخه نینتندو سوییچ ۱ بازی Civilization VII بهعنوان نقطه ورود برای اجرای کدهای غیرمجاز روی کنسول استفاده میکند.
این ابزار که CivSwitch نام دارد، توسط هکری به نام Gezine توسعه یافته و از یک آسیبپذیری Cross-Site Scripting (XSS) در بخش گفتوگوی چندنفره بازی برای اجرای کدهای جاوااسکریپت بهره میبرد. این روش با استفاده از قابلیت سازگاری با نسل قبل (Backward Compatibility) نسخه سوییچ ۱ بازی Civilization VII را روی نینتندو سوییچ ۲ اجرا میکند.
CivSwitch از دو بخش اصلی به نامهای PicoSwitch و installer-creator تشکیل شده است؛ بخش اول، یعنی PicoSwitch، یک فریمور برای بردهای Raspberry Pi Pico محسوب میشود که از میکروکنترلرهای RP2040 و RP2350 استفاده میکند. این ابزار مانند یک کیبورد USB عمل کرده و بهصورت خودکار یک کد متنی حدوداً ۸۷ خطی را در بخش گفتوگوی لابی چندنفره بازی وارد میکند. این فرایند تقریباً ۱۵ دقیقه زمان میبرد و در نهایت Remote JavaScript Loader را روی کنسول اجرا میکند؛ ابزاری که از طریق پورت TCP شماره ۹۰۲۶ منتظر دریافت کدهای جدید میماند.
بخش دوم، یعنی installer-creator، امکان نصب یک تریگر دائمی برای اجرای کدها هنگام روشن شدن کنسول را فراهم میکند؛ کاربران با آپلود یک فایل ذخیره مخصوص میتوانند این قابلیت را فعال کنند. پس از آن، کد موردنظر با روشن شدن کنسول و انتخاب گزینه Load Game از منوی اصلی بهصورت خودکار اجرا خواهد شد. همچنین Remote JavaScript Loader پس از قرار گرفتن کنسول در حالت Sleep و روشن شدن مجدد آن نیز میتواند فعال باقی بماند.
البته CivSwitch محدودیتهایی دارد و تنها با نسخه ۱.۰.۰ بازی Civilization VII روی کارتریج فیزیکی سازگار است. این ابزار برای نسخههای فریمور 20.x.x به بالا و حداکثر نسخه ۲۳.۰.۱ در هر دو کنسول نینتندو سوییچ و سوییچ ۲ طراحی شده است. آزمایشهای انجامشده نیز عملکرد آن را روی سوییچ اصلی با فریمور ۲۲.۵.۰ و سوییچ ۲ با نسخههای ۲۰.۴.۰ و ۲۳.۰.۱ تأیید کردهاند.
این پروژه همچنین شامل ابزار پایتونی send_js.py میشود که به کاربران اجازه میدهد فایلهای جاوااسکریپت دلخواه خود را به Loader فعال ارسال کرده و خروجی گزارشهای کنسول را دریافت کنند.
گفتنی است که راه نفوذ قبلی سوییچ ۲ از طریق بازی SmileBASIC 4 اجرا میشد؛ اما نینتندو برای مسدود کردن این مسیر، بازی مذکور را از فروشگاه eShop حذف کرد. این جیلبریک که ns2jb نام دارد، توسط پژوهشگر امنیتی Sammy Hajhamid برای فریمور ۲۳.۰.۱ نینتندو سوییچ ۲ منتشر شده بود. حالا به نظر میرسد CivSwitch مسیر تازهای برای اجرای کدهای غیررسمی روی این کنسول فراهم کرده است.
