تحقیقات جدید نشان میدهد که ابزارهای رایج فرمتدهی (Formatter)، کوچکسازی (Minifier) و ابهامزدایی (Deobfuscator) میتوانند به گونهای مورد استفاده قرار گیرند که منطق یک اسکریپت را به کلی تغییر دهند و آن را به کدی متفاوت تبدیل کنند.
جزئیات فنی و دامنه اثرگذاری
در این پژوهش، ۱۸۶ تکنیک مختلف در بیش از ۳۷ پردازنده جاوااسکریپت (JavaScript processors) شناسایی شده است. این موضوع به این معناست که ابزارهایی که تحلیلگران امنیتی برای خوانایی بیشتر کد یا بازگرداندن کد مبهم به حالت اولیه از آنها استفاده میکنند، ممکن است ناخواسته (یا به دلیل طراحی مهاجم) باعث تغییر رفتار برنامه شوند.
برخی از ابزارهای متأثر شده که در این تحقیق ذکر شدهاند عبارتند از:
- Chromium DevTools
- Prettier
- WebCrack
- Terser
مثالی از تغییر منطق
برای نمایش قدرت این تکنیک، محققان نمونهای را طراحی کردهاند که در آن یک اسکریپت بازی Tetris پس از عبور از یک ابزار فرمتدهی، به اسکریپت بازی Snake تبدیل میشود. این سطح از تغییر نشان میدهد که مهاجمان میتوانند با بهرهبرداری از نحوه تفسیر کد توسط ابزارهای تحلیل، تحلیلگران بدافزار را به اشتباه بیندازند و رفتار واقعی کد در محیط اجرا را پنهان کنند.