تیم تحقیقات امنیتی JFrog اخیراً از کشف یک آسیبپذیری بحرانی پرده برداشت که قابلیت نفوذ به هسته پردازش چندرسانهای جهان را زیر و رو میکند. این نقص امنیتی که «PixelSmash» نام گرفته، چارچوب قدرتمند FFmpeg را هدف قرار داده و به مهاجمان اجازه میدهد تا از طریق یک فایل ویدیویی دستکاریشده، کنترل کامل سیستم قربانی را به دست بگیرند.
آنچه این رخنه امنیتی را به یک کابوس بزرگ برای توسعهدهندگان تبدیل میکند، قدمت آن است؛ این باگ ۱۶ سال در دل کدهای FFmpeg پنهان مانده بود و با وجود تستهای خودکار متعدد، هیچگاه شناسایی نشد. کشف چنین نقصی نشاندهنده قدرت بینظیر مدلهای جدید هوش مصنوعی مبتنی بر امنیت سایبری است که اکنون میتوانند کدهای مخفی را با دقت بیسابقهای رهگیری کنند.
زیر صفر روز: نفوذ از طریق MagicYUV
این آسیبپذیری با شناسه CVE-2026-8461 و درجه خطر 8.8 (بحرانی) توسط موسسه CISA ثبت شده است. مشکل اصلی در دیکودر (Decoder) کدک MagicYUV رخ میدهد و باعث نوشتن دادهها خارج از محدوده حافظه Heap (Heap out-of-bounds write) میشود. این خطای حافظه به خودی خود برای مختل کردن سرویس (DoS) و از کار انداختن ناگهانی هر برنامهای که بر پایه FFmpeg ساخته شده کافی است، اما خطر واقعی در قابلیت اجرای کد از راه دور (RCE) نهفته است.
گستردگی استفاده از FFmpeg، شعاع انفجار این حمله را بسیار وسیع کرده است. از پخشکنندههای ویدیویی دسکتاپ مثل Kodi و mpv گرفته تا تولیدکنندههای تصویر بندانگشتی (Thumbnail) در لینوکس، سرویسهای تبدیل ابری و سرورهای رسانهای شخصی همگی در معرض خطر قرار دارند. تیم JFrog موفق شد نفوذ کامل را در دو سناریوی واقعی به اثبات برساند: هک یک سرور رسانهای Jellyfin (از طریق اسکن خودکار کتابخانه) و نفوذ به یک سرور Nextcloud (از طریق پیشنمایش ویدیو). نکته حیرتانگیز این است که در هر دو حمله، تنها با آپلود یک فایل AVI مخرب با حجم ۵۰ کیلوبایت، کنترل کامل سرور به دست مهاجم افتاد.
سطح حمله گسترده؛ از سرور تا تلویزیون هوشمند
برای بهرهبرداری از این باگ، مهاجم نیازی به دسترسی فیزیکی، رمز عبور یا احراز هویت ندارد. تنها کاری که باید انجام دهد، ارسال یک فایل ویدیویی دستکاریشده (با فرمتهای AVI، MKV یا MOV) به سیستم قربانی است. این فایل در لحظهای که برنامه قصد پردازش، خواندن یا پیشنمایش آن را داشته باشد، بدافزار را اجرا میکند. اهداف در معرض خطر شامل موارد زیر میشوند:
- کامپیوترهای شخصی: باز کردن فایل مخرب در پخشکنندهها یا حتی مراجعه به پوشهای که فایل در آن قرار دارد (به دلیل تولید خودکار تصویر بندانگشتی توسط سیستمعامل).
- سرورها و سرویسهای ابری: آپلود ویدیو در سرورهای رسانهای (Jellyfin، Emby، Nextcloud)، پلتفرمهای پیامرسان، یا سرویسهای ترانسکدینگ ابری مانند AWS MediaConvert که فایل را بهطور خودکار پردازش میکنند.
- اینترنت اشیا (IoT): دستگاههای ذخیرهساز شبکه (NAS)، تلویزیونهای هوشمند و هر دستگاه رسانهای که قابلیت تولید پیشنمایش ویدیو را داشته باشد.
راهحل سریع و قطعی برای جلوگیری از نفوذ
این آسیبپذیری تمام نسخههای قبل از 9.0 را تحت تاثیر قرار میدهد؛ زیرا کدک MagicYUV بهطور پیشفرض در اکثر توزیعهای لینوکسی (نظیر اوبونتو، دبیان، فدورا و آرچ) فعال است. برای بررسی آسیبپذیری سیستم خود، کافیست دستور زیر را در ترمینال وارد کنید:
ffmpeg -decoders 2>/dev/null | grep magicyuv
اگر در خروجی این دستور عبارت VFS..D magicyuv را مشاهده کردید، سیستم شما در معرض خطر است. در صورتی که امکان ارتقا به نسخه 9.0 وجود ندارد، میتوانید هنگام کامپایل FFmpeg، این کدک را بهطور کامل غیرفعال کنید:
./configure --disable-decoder=magicyuv [your other flags] < make && make install
یک راهحل جایگزین و سریعتر نیز اعمال یک پچ امنیتی ۷ خطی به فایل libavcodec/magicyuv.c است. این کد مقادیر غیرمجاز و مخرب در ارتفاع برش (slice height) را شناسایی کرده و رد میکند. از آنجایی که انکودر استاندارد MagicYUV همیشه مقادیر تراز شده (Aligned) تولید میکند، این پچ فقط ورودیهای مخرب را مسدود کرده و هیچ تاثیر منفی روی فایلهای سالم نمیگذارد:
+ if ((s->slice_height >> s->vshift[1]) <= s->interlaced) {
+ av_log(avctx, AV_LOG_ERROR, "impossible slice height\n");
+ return AVERROR_INVALIDDATA;
+ }
+ if ((avctx->coded_height % s->slice_height) && ((avctx->coded_height % s->slice_height) >> s->vshift[1]) <= s->interlaced) {
+ av_log(avctx, AV_LOG_ERROR, "impossible height\n");
+ return AVERROR_INVALIDDATA;
+ }
رویداد PixelSmash به روشنی نشان میدهد که چطور یک فایل چندرسانهای ساده میتواند به سلاحی خطرناک برای نفوذ به زیرساختهای نرمافزاری تبدیل شود. در روزهایی که پردازش دادههای کاربران در سرورهای ابری و سرویسهای پیامرسانی به امری روزمره بدل شده، نظارت دقیق بر کتابخانههای متنباز و بهروزرسانی سریع سرورها، تنها راه تضمین امنیت دیجیتال در برابر اینگونه فایلهای بمبگذاریشده خواهد بود.





