OpenBSD یک تکنیک ضد بهرهبرداری را پیادهسازی میکند که هر بار که سیستم بوت میشود، به پیوند مجدد تصادفی فایل اجرایی sshd متکی است. این تکنیک پیوند مجدد قبلا برای هسته و کتابخانه های libc.so، libcrypto.so و ld.so استفاده می شد و اکنون برای برخی از فایل های اجرایی استفاده خواهد شد. در آینده نزدیک، این روش برای ntpd و سایر برنامه های کاربردی سرور نیز برنامه ریزی شده است. این تغییر قبلاً در شاخه CURRENT گنجانده شده است و در نسخه OpenBSD 7.3 ارائه خواهد شد.
پیوند مجدد این امکان را فراهم می کند که جابجایی تابع در کتابخانه ها کمتر قابل پیش بینی باشد، که ایجاد اکسپلویت ها با استفاده از روش های برنامه نویسی بازگشت گرا (ROP) را دشوار می کند. هنگام استفاده از تکنیک ROP، مهاجم سعی نمیکند کد خود را در حافظه قرار دهد، بلکه بر روی قطعاتی از دستورالعملهای ماشینی که از قبل در کتابخانههای بارگذاری شده موجود است، عمل میکند و با یک دستورالعمل بازگشت کنترل پایان مییابد (به عنوان یک قاعده، اینها انتهای توابع کتابخانه هستند). . کار این اکسپلویت به ایجاد زنجیره ای از فراخوانی ها به بلوک های مشابه ("گجت ها") برای دستیابی به عملکرد مورد نظر ختم می شود.
منبع: opennet.ru