eBPF Rootkits: چرا بازیگران زیرزمینی توجه می کنند؟
روت کیت های لینوکس eBPF می توانند فعالیت های مخرب را پنهان کرده و از روش های تشخیص سنتی بدون بارگیری ماژول های هسته فرار کنند. Flare نشان میدهد که چگونه این تکنیکها از طریق انجمنهای زیرزمینی گسترش مییابند، جایی که عوامل تهدید کد منبع روتکیت، آموزشها و سوء استفادههایی را که سیستمهای لینوکس را هدف قرار میدهند به اشتراک میگذارند. [...]
برای سالها، eBPF (فیلتر بسته بسته برکلی) یکی از مشهورترین فناوریها در هسته لینوکس بوده است. این به توسعهدهندگان اجازه میدهد برنامههای sandboxed را در داخل هسته بدون نوشتن ماژولهای هسته اجرا کنند، در حالی که همه چیز از نظارت بر شبکه گرفته تا ابزار امنیتی را تامین میکند.
لینوکس در سرورهای تولیدی بسیار محبوب است و غول هایی مانند Google، Cloudflare و Meta روزانه به آن تکیه می کنند.
همان قابلیت های eBPF که برای مدافعان جذاب است اما می تواند سلاح قدرتمندی در دست مهاجمان باشد. تحقیقات Flare پستهای فروم زیرزمینی را نشان داد که کد rootkit eBPF و آموزشهای گام به گام را به اشتراک میگذارند.
یک پست روسی زبان نحوه ساخت ایمپلنت با پنهان کردن فرآیند و فعالسازی بستهها را توضیح میدهد و شامل اسکرینشاتهایی است که نویسنده به عنوان نمایش ارائه کرده است.
روتکیتهای سنتی لینوکس معمولا به ماژولهای هسته قابل بارگیری (LKM) برای اتصال تماسهای سیستمی و پنهان کردن فعالیتهای مخرب متکی هستند. این ها توسط مدافعان به خوبی درک می شوند و اکثر راه حل های EDR به دنبال بارهای مشکوک ماژول هستند. با این حال، eBPF به شیوه ای متفاوت رفتار می کند.
بدافزار eBPF میتواند به توابع هسته متصل شود، تماسهای سیستم را مشاهده کند، یا ترافیک شبکه را با استفاده از همان رابط bpf() که از هسته پشتیبانی میشود، بهعنوان ابزارهای قانونی مانند Cilium بازرسی و اصلاح کند.
برنامه های آن بدون بارگیری یک ماژول هسته اجرا می شوند، بنابراین یک بررسی معمولی lsmod می تواند آنها را از دست بدهد. چالش مدافعان این است که تعیین کنند چه کسی برنامه را بارگذاری کرده و چه کاری انجام می دهد.
روتکیتهای eBPF از گفتگوهای کنفرانس به آموزشهای فروم زیرزمینی منتقل میشوند، و زمانی که روی یک میزبان بارگیری میشود، برای فرار از بررسیهای معمول شما ساخته شده است.
Flare انجمنها، بازارها، و سایتها را بهصورت بلادرنگ رصد میکند، بنابراین تیم شما به اندازه کافی ابزارهای جدید، سوء استفادهها و گفتگوها را برای ردیابی تهدیدات eBPF میبیند.
اولین زنگ هشدار مهم در سال 2022 زمانی که PwC و آزمایشگاههای امنیتی الاستیک BPFDoor را مستند کردند، یک درب پشتی لینوکس منفعل منتسب به یک عامل تهدید چینی که بهعنوان Red Menshen ردیابی میشود. نمونه BPFDoor Elastic تجزیه و تحلیل شده از یک فیلتر سوکت BPF کلاسیک برای شناسایی بستههای TCP، UDP یا ICMP ساخته شده ویژه استفاده کرد.
پس از فعال شدن، می تواند پوسته معکوس را باز کند یا ترافیک را به سمت ایمپلنت هدایت کند. PwC این بدافزار را در سال 2021 کشف کرد و گزارشهای عمومی در سال 2022 فعالیتهایی را که سازمانهای هدف قرار میدهند در خاورمیانه و آسیا توصیف کرد.
تقریبا در همان زمان، Intezer و BlackBerry به طور مشترک Symbiote را فاش کردند، طعم متفاوتی از بدافزار لینوکس که BPF را برای مخفی کاری سلاح می کند. سیمبیوت به جای اجرای یک فرآیند مستقل، از پیوند دهنده پویا برای از پیش بارگذاری یک کتابخانه مشترک مخرب در فرآیندهای آسیب دیده استفاده می کند.
این کتابخانه فراخوانهای setsockopt() را که فیلترهای کلاسیک BPF را از طریق SO_ATTACH_FILTER متصل میکند، رهگیری میکند و دستورالعملهای فیلتر خود را برای پنهان کردن ترافیک انتخابشده از ضبط بستهها به کار میگیرد.
تحقیقات عمومی قبلا کاربردهای توهین آمیز eBPF را نشان داده بود. در سال 2021، محققان ebpfkit را در Black Hat USA و DEF CON ارائه کردند. TripleCross قلابهای syscall را با برنامههای XDP و کنترل ترافیک ترکیب میکند تا از تزریق کتابخانه، ربودن اجرا، پنهانسازی، و فرمان و کنترل پشتیبانی کند.
Boopkit از قلاب های getdents64 برای مخفی کردن ورودی های دایرکتوری استفاده می کند. یک ایمپلنت از قبل نصب شده می تواند از راه دور به دو روش مستند راه اندازی شود، یکی شامل یک TCP SYN ناقص و دیگری با استفاده از اتصالات TCP معمولی.
در نهایت، در اکتبر 2025، Synacktiv پس از بررسی مصالحهای که با سرور جنکینز در معرض دید شروع شد، LinkPro را گزارش کرد. LinkPro از برنامههای eBPF برای پنهان کردن فعالیت روی میزبان و فعال کردن درب پشتی هنگام دریافت بستهای که بهطور خاص ساخته شده بود استفاده میکرد.
محققان امنیتی و عوامل تهدید تحت حمایت دولت بررسی کرده اند که چگونه eBPF می تواند برای ساختن روت کیت ها استفاده شود. تحقیقات اخیر Flare نشان میدهد که پستهای فروم زیرزمینی کد و آموزشهای گام به گام را به اشتراک میگذارند، که نشان میدهد این تکنیکها اکنون فراتر از مقالات دانشگاهی و کنفرانسهای امنیتی منتشر میشوند.
در فروم روسی زبان Duty Free، یک کاربر آموزش ساخت یک روت کیت eBPF را منتشر کرد و از BPFDoor و Symbiote به عنوان تأثیرگذار نام برد.
این راهنما شامل کد منبع و اسکرین شات هایی است که نویسنده به عنوان نمایش ارائه می کند. نحوه فعال کردن ایمپلنت با یک بسته TCP SYN با اندازه پنجره خاص، پنهان کردن فرآیندها با اتصال getdents64 و رمزگذاری ترافیک فرمان و کنترل با AES-256-GCM را شرح می دهد.
این راهنما همچنین استفاده از XDP را برای بررسی ترافیک HTTP متن ساده ورودی و رها کردن بستههایی که با فهرستی از 43 آدرس IP که نویسنده با فروشندگان آنتیویروس مرتبط است، مطابقت دارد، توضیح میدهد.
Flare همچنین 10 پست Pastebin مرتبط را شناسایی کرد که حاوی کد پردازش بسته XDP و آستانه های زمان بندی بیان شده در میکروثانیه بودند.
Flare همچنین کد اکسپلویت را پیدا کرد که در چندین پلتفرم در حال گردش است. بیشترین اکسپلویت بازنشر شده (حداقل شش پلتفرم) در مجموعه داده، CVE-2017-16995 را هدف قرار داده است، یک نقص تأییدکننده BPF لینوکس در سال 2017 که شامل پسوند علامت نادرست است.
در کنار اکسپلویتهای قدیمیتر eBPF، محققان برخی اکسپلویتهای جدید را کشف کردند.
یکی از مثالها یک PoC افزایش امتیاز محلی لینوکس است که نقشههای sockmaps kTLS و eBPF را هدف قرار میدهد. تلاش اثبات مفهوم برای خراب کردن کش صفحه برای /etc/passwd و تزریق یک حساب کاربری با UID 0. ادعای سازگاری آن با همه هستهها از 4.18 به بعد نادرست است.
لینوکس بالادست 4.18 فاقد یک کمک کننده BPF است که کد فراخوانی می کند. افزایش امتیاز موفقیت آمیز در اوبونتو 22.04 یا 24.04 تأیید نشده است.
در یکی از نمونههای اکسپلویتی که بررسی کردیم، نویسنده به کلود در یک نظر کد منبع اعتبار دستورات BPF را ایجاد کرد.
چالش اساسی این است که تهدیدات مبتنی بر eBPF از طریق یک رابط هسته قانونی عمل می کنند.
برخلاف یک ماژول کرنل سرکش، یک برنامه eBPF از تأیید کننده داخلی هسته و یک برنامه مخرب که ظاهر تأیید را به کرنل ارسال می کند، مانند هر برنامه تأیید شده دیگری، می گذرد.
امروزه Detection بر نظارت بر syscalls ()bpf، ردیابی برنامه های بارگذاری شده از طریق bpftool، و مشاهده نقاط پیوست مشکوک در syscals های حساس مانند getdents64 و execve تمرکز دارد.
اما اینها اقدامات واکنشی هستند و مهاجمان این مزیت را دارند که از طریق مکانیسم های تحریم شده خود هسته عمل کنند.
سازمان هایی که زیرساخت لینوکس را اجرا می کنند باید تهدیدات eBPF را جدی بگیرند:
برنامه های eBPF را مرتبا با فهرست پروگ bpftool بارگیری کنید. بدانید چه چیزی قرار است آنجا باشد.
دسترسی eBPF را از طریق kernel.unprivileged_bpf_disabled=1 محدود کنید و CAP_BPF / CAP_NET_ADMIN را محدود کنید.
نظارت بر بستههای جادویی - چندین درب پشتی eBPF از طریق پرچمهای خاص TCP یا اندازههای پنجره فعال میشوند.
به طور تهاجمی وصله کنید - باگهای تأییدکننده BPF یک کلاس آسیبپذیری تکرارشونده هستند و اکسپلویتهای تسلیحاتی سریع ظاهر میشوند.
مراقب برنامه های XDP غیرمنتظره در رابط های شبکه باشید.
اطلاعات جدید تهدید را جمع آوری کنید – در مورد بردارهای حمله، ابزارها و تکنیک های جدید که ممکن است به شما کمک کند شناسایی و اجرای جدید را برای مسدود کردن بدافزار مبتنی بر eBPF تنظیم کنید، به روز باشید.
روت کیت های eBPF نشان دهنده یک تحول واقعی در تهدیدات لینوکس است زیرا ایمپلنت های آنها می توانند از بررسی های متمرکز بر ماژول های هسته بارگذاری شده فرار کنند. LinkPro با تلاش برای مخفی کردن برنامههای eBPF خود از فهرست prog bpftool فراتر رفت.
محققان هنوز هم میتوانند نقشهها و پیوندهای BPF مرتبط را ببینند، که نشان میدهد چرا مدافعان باید چندین منبع تلهمتری میزبان را با هم مقایسه کنند.
Flare پستهای زیرزمینی را پیدا کرد که کد منبع و دستورالعملهایی را برای پنهان کردن فرآیندها و فعال کردن ایمپلنت با یک بسته دستکاری شده به اشتراک میگذاشتند. Synacktiv هر دو تکنیک را در تحقیقات خود در مورد LinkPro مستند کرده و به مدافعان یک مثال ملموس از نحوه ظاهر شدن آنها در یک نفوذ ارائه می دهد.
با ثبت نام برای آزمایش رایگان ما بیشتر بیاموزید.
متن اصلی (انگلیسی)
eBPF Rootkits: Why Underground Actors Are Taking Notice
Linux eBPF rootkits can hide malicious activity and evade traditional detection methods without loading kernel modules. Flare reveals how these techniques are spreading through underground forums, where threat actors are sharing rootkit source code, tutorials, and exploits targeting Linux systems. [...]