Glibc 2.32 سسٽم لائبريري رليز

ڇهن مهينن جي ترقي کان پوء شايع ٿيل سسٽم لائبريري ڇڏڻ GNU C لائبريري (glibc) 2.32، جيڪو مڪمل طور تي ISO C11 ۽ POSIX.1-2017 معيارن جي گهرجن سان پورو ڪري ٿو. نئين رليز ۾ 67 ڊولپرز کان فيڪس شامل آهن.

انهن مان جيڪي Glibc 2.32 ۾ لاڳو ڪيا ويا آهن سڌارا توهان نوٽ ڪري سگهو ٿا:

  • شامل ڪيل سپورٽ Synopsys ARC HS (ARCv2 ISA) پروسيسرز لاءِ. بندرگاهن کي هلائڻ لاءِ گهٽ ۾ گهٽ binutils 2.32، gcc 8.3 ۽ Linux kernel 5.1 جي ضرورت آهي. ٽي ABI مختلف قسمن جي حمايت ڪئي وئي آهي: آرڪ-لينڪس-گنو، آرڪ-لينڪس-گنوھف ۽ آرسب-لينڪس-گنو (بگ-انڊين)؛
  • سيڪشن DT_AUDIT ۽
    DT_DEPAUDIT قابل عمل فائل جو.

  • پاورpc64le آرڪيٽيڪچر لاءِ، IEEE128 ڊگھي ڊبل ٽائپ لاءِ سپورٽ لاڳو ڪئي وئي آھي، جنھن کي فعال ڪيو ويندو آھي جڏھن تعمير ڪرڻ سان ”-mabi=ieeelongdouble“ اختيار.
  • ڪجهه APIs کي GCC 'رسائي' وصف سان تشريح ٿيل آهي، جيڪا GCC 10 ۾ ترتيب ڏيڻ وقت بهتر ڊيڄاريندڙ پيدا ٿيڻ جي اجازت ڏئي ٿي ته جيئن ممڪن بفر اوور فلوز ۽ ٻين حد کان ٻاهر واري منظرنامي کي ڳولي سگهجي.
  • لينڪس سسٽم لاءِ، فنڪشن pthread_attr_setsigmask_np ۽
    pthread_attr_getsigmask_np، جيڪو ايپليڪيشن کي اجازت ڏئي ٿو ته ٿريڊز لاءِ سگنل ماسڪ بيان ڪري سگھن جيڪي استعمال ڪندي ٺاهيل آھن pthread_create.

  • يونيڪوڊ 13.0.0 وضاحتن کي سپورٽ ڪرڻ لاءِ انڪوڊنگ ڊيٽا، ڪردار جي قسم جي معلومات، ۽ ترجمي جي جدولن کي اپڊيٽ ڪيو ويو آهي.
  • نئين سر فائل شامل ڪئي وئي ، جيڪو وضاحت ڪري ٿو __libc_single_threaded variable، جيڪو استعمال ڪري سگھجي ٿو ايپليڪيشنن ۾ سنگل ٿريڊ ٿيل اصلاحن لاءِ.
  • شامل ڪيل افعال sigabbrev_np ۽ sigdescr_np جيڪي واپس ڪن ٿا مختصر نالو ۽ سگنل جي وضاحت (مثال طور، "HUP" ۽ "Hangup" SIGHUP لاءِ).
  • شامل ڪيل افعال strerrorname_np ۽ strerrordesc_np جيڪي واپس ڪن ٿا غلطي جو نالو ۽ وضاحت (مثال طور، "EINVAL" ۽ "غلط دليل" EINVAL لاءِ).
  • ARM64 پليٽ فارم لاءِ، "--enable-standard-branch-protection" جھنڊو شامل ڪيو ويو آھي (يا -mbranch-protection=standard in GCC)، جيڪو ARMv8.5-BTI (برانچ ٽارگيٽ انڊيڪيٽر) ميکانيزم کي فعال ڪري ٿو. ھدايتن جي سيٽن تي عمل ڪرڻ جيڪو عمل نه ڪيو وڃي. برانچنگ ٽرانزيڪشن. ڪوڊ جي صوابديدي حصن ڏانهن منتقلي کي بلاڪ ڪرڻ تي عمل ڪيو ويو آهي گيجٽ جي تخليق کي روڪڻ لاءِ استحصال ۾ جيڪي ريٽرن-ايئنٽيڊ پروگرامنگ ٽيڪنڪ استعمال ڪن ٿا (ROP - Return-Oriented Programming؛ حملو ڪندڙ پنهنجي ڪوڊ کي ميموري ۾ رکڻ جي ڪوشش نه ڪندو آهي، پر اڳ ۾ ئي موجود ٽڪرن تي هلندو آهي. مشين جي هدايتن جو جيڪو واپسي ڪنٽرول جي هدايتن سان ختم ٿئي ٿو، جنهن مان گهربل ڪارڪردگي حاصل ڪرڻ لاء ڪالن جو هڪ سلسلو ٺهيل آهي).
  • پراڻي خاصيتن جي هڪ وڏي صفائي ڪئي وئي آهي، بشمول "--enable-obsolete-rpc" ۽ "--enable-obsolete-nsl" اختيارن کي هٽائڻ، هيڊر فائل . افعال sstk، siginterrupt، sigpause، sighold، sigrelse، sigignore ۽ sigset، arrays sys_siglist، _sys_siglist ۽ sys_sigabbrev، علامتون sys_errlist، _sys_errlist، sys_errlist، _sys_errlist، sys_nerr ۽ sysnersule module sys_siglist، sys_errlist، sys_errlist ۽ sys_nersule modules درج ٿيل.
  • ldconfig نئين ld.so.cache فارميٽ کي استعمال ڪرڻ لاءِ ڊفالٽ طور منتقل ڪيو ويو آهي، جيڪو تقريباً 20 سالن کان glibc ۾ سپورٽ ڪيو ويو آهي.
  • مقرر ٿيل نقصانات:
    • CVE-2016-10228 - iconv يوٽيلٽي ۾ هڪ لوپ تڏهن ٿئي ٿو جڏهن "-c" اختيار سان هلايو وڃي جڏهن غلط ملٽي بائيٽ ڊيٽا کي پروسيس ڪيو وڃي.
    • CVE-2020-10029 اسٽيڪ ڪرپٽ جڏهن ٽريگونوميٽرڪ ڪمن کي pseudo-null دليل سان سڏين ٿا.
    • CVE-2020-1752 - گلوب فنڪشن ۾ استعمال کان پوءِ مفت ميموري رسائي جڏهن گهر ڊاريڪٽري ("~ استعمال ڪندڙ") جي حوالي سان رستن کي وڌايو.
    • CVE-2020-6096 - ARMv7 پليٽ فارم تي غلط هينڊلنگ memcpy() ۽ memmove() ۾ ناڪاري پيرا ميٽر ويلز، جيڪو نقل ڪيل علائقي جي سائيز کي طئي ڪري ٿو. اجازت ڏئي ٿو ڪوڊ جي عمل کي منظم ڪريو جڏهن پروسيسنگ ڊيٽا کي هڪ خاص طريقي سان فارميٽ ڪيو memcpy() ۽ memmove() افعال ۾. اهو اهم آهي ته مسئلو رهي تقريباً ٻن مهينن تائين درست نه ڪيو ويو جڏهن کان معلومات عام طور تي ظاهر ڪئي وئي هئي ۽ پنجن مهينن کان وٺي Glibc ڊولپرز کي اطلاع ڏنو ويو.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو