کو فعال کرنے سے بہتر سیکیورٹی پر نظر رکھتا ہے بالواسطہ برانچ ٹریکنگ (IBT) کو اب بھی پہلے سے طے شدہ لینکس x86_64 کرنل کنفیگریشنز کے حصے کے طور پر فعال کرنے پر نظر رکھی جا رہی ہے تاکہ معاون پروسیسرز پر باکس سے باہر بہتر سیکیورٹی فراہم کی جا سکے۔ آج بھیجا گیا ایک پیچ اس خصوصیت کو بطور ڈیفالٹ پلٹانے پر اوپر کی بحث کو جاری رکھتا ہے جو جمپ/کال اورینٹڈ پروگرامنگ حملوں کے خلاف دفاع میں مدد کرنے کے لیے Intel کی Control-flow Enforcement Technology (CET) کا حصہ ہے۔

بالواسطہ برانچ ٹریکنگ CET کا حصہ ہے جو Intel Tigerlake CPUs اور جدید تر کے ساتھ پایا جاتا ہے۔ آئی بی ٹی کے لیے لینکس کرنل سپورٹ کو لینکس 5.18 میں ضم کر دیا گیا تھا لیکن اس وقت تک اسٹاک کرنل کنفیگریشن کے حصے کے طور پر بطور ڈیفالٹ فعال نہیں کیا گیا ہے۔

کیز کک ود گوگل نے اپنی تازہ ترین تجویز بھیجی ہے جس میں یہ دلیل دی گئی ہے کہ اسے لینکس کرنل کنفیگریشن کے حصے کے طور پر بطور ڈیفالٹ فعال کیا جانا ہے۔ ستمبر کے اوائل میں اس نے اصل میں اس تبدیلی کی تجویز پیش کی تھی جب کہ آج بھیجی گئی v2 پیچ a> بحث کو دوبارہ شروع کرنے کے لیے۔ وہاں اس نے صورت حال کا خلاصہ کیا:

دانا IBT دفاع ROP حملوں کے عام”پہلے قدم”کو مضبوطی سے کم کرتا ہے، صوابدیدی اسٹیک پیوٹس کو ختم کرکے (جو کسی فنکشن کے آخر میں یا فوری اقدار میں ظاہر ہوتا ہے) ، جس تک نہیں پہنچ سکتا اگر بالواسطہ کالز کو فنکشن کے اندراج کے پتے کو نشان زد کرنا ضروری ہے۔ جب کرنل کنٹرول فلو انٹیگریٹی کے ساتھ بنایا گیا ہے تو FineIBT خصوصیت حاصل کرنے کے لیے IBT کا فعال ہونا بھی ضروری ہے۔

اضافی طور پر، یہ دیکھتے ہوئے کہ یہ خصوصیت CPU ID کے ذریعے رن ٹائم فعال ہے، یہ واضح طور پر بطور ڈیفالٹ بنایا جانا چاہیے؛ یہ صرف اس صورت میں فعال ہوگا جب CPU اس کی حمایت کرتا ہے۔ تعمیر میں 2 سیکنڈ زیادہ وقت لگتا ہے، جو بذریعہ ڈیفالٹ اس کوریج کو حاصل کرنے کے لیے ادا کرنے کے لیے ایک چھوٹی قیمت معلوم ہوتی ہے۔ کرنل سائیکل اس دوران بہت سے لینکس ڈسٹری بیوشن وینڈرز پہلے ہی X86_KERNEL_IBT کو ان کے فراہم کردہ کرنل بلڈز کے حصے کے طور پر فعال کر رہے ہیں۔