Exim ۾ نازڪ خطرن جا تفصيل پڌرا ڪيا ويا

شايع ٿيل اصلاحي ڇڏڻ Exim 4.92.2 نازڪ جي خاتمي سان ڪمزوريون (CVE-2019-15846)، جيڪو ڊفالٽ ترتيبن ۾ ريموٽ ڪوڊ تي عمل ڪري سگھي ٿو حملي ڪندڙ طرفان روٽ استحقاق سان. مسئلو صرف تڏهن ظاهر ٿئي ٿو جڏهن TLS سپورٽ فعال ٿئي ٿي ۽ خاص طور تي ٺهيل ڪلائنٽ سرٽيفڪيٽ يا تبديل ٿيل قدر SNI ڏانهن منتقل ڪندي استحصال ڪيو وڃي ٿو. ڪمزوري سڃاڻپ Qualys پاران.

مسئلو موجود آهي اسٽرنگ ۾ خاص اکرن کان بچڻ لاءِ ھينڊلر ۾ (string_interpret_escape() string.c کان) ۽ اسٽرنگ جي آخر ۾ '\' اکر جو سبب آهي null اکر ('\0') کان اڳ تشريح ڪئي پئي وڃي ۽ ان کان بچي وڃي ٿي. جڏهن فرار ٿي، تسلسل '\' ۽ هيٺ ڏنل null آخر-آف-لائن ڪوڊ کي هڪ واحد ڪردار طور سمجهيو ويندو آهي ۽ پوائنٽر کي لڪير کان ٻاهر ڊيٽا ڏانهن منتقل ڪيو ويندو آهي، جنهن کي لڪير جي تسلسل طور سمجهيو ويندو آهي.

ڪوڊ ڪالنگ string_interpret_escape() اصل سائيز جي بنياد تي ڊرين لاءِ بفر مختص ڪري ٿو، ۽ بي نقاب پوائنٽر بفر جي حدن کان ٻاهر واري علائقي ۾ ختم ٿئي ٿو. ان جي مطابق، جڏهن هڪ ان پٽ اسٽرنگ کي پروسيس ڪرڻ جي ڪوشش ڪئي وڃي ٿي، هڪ صورتحال پيدا ٿئي ٿي جڏهن مختص ٿيل بفر جي حدن کان ٻاهر واري علائقي مان ڊيٽا پڙهڻ، ۽ هڪ غير محفوظ ٿيل اسٽرنگ لکڻ جي ڪوشش بفر جي حدن کان ٻاهر لکڻ جي ڪري سگھي ٿي.

ڊفالٽ ٺاھ جوڙ ۾، نقصان جو استحصال ڪري سگھجي ٿو خاص طور تي ڊزائين ڪيل ڊيٽا موڪلي SNI ڏانھن جڏھن سرور سان محفوظ ڪنيڪشن قائم ڪري. مسئلو پڻ استحصال ڪري سگهجي ٿو پيرڊن قدرن کي تبديل ڪندي ترتيبن ۾ ڪلائنٽ سرٽيفڪيٽ جي تصديق لاءِ ترتيب ڏنل يا جڏهن سرٽيفڪيٽن کي درآمد ڪندي. SNI ۽ peerdn ذريعي حملو ڇڏڻ کان شروع ٿيڻ ممڪن آهي Exim 4.80، جنهن ۾ string_unprinting() فنڪشن کي استعمال ڪيو ويو ته پيرڊن ۽ SNI مواد کي پرنٽ ڪرڻ لاءِ.

هڪ استحصالي پروٽوٽائپ تيار ڪيو ويو آهي حملي لاءِ SNI ذريعي، هلندڙ i386 ۽ amd64 آرڪيٽيڪچرز تي لينڪس سسٽم تي Glibc سان. استحصال هيپ ايريا تي ڊيٽا اوورلي کي استعمال ڪري ٿو، نتيجي ۾ ميموري کي ختم ڪري ٿو جنهن ۾ لاگ فائل جو نالو ذخيرو ٿيل آهي. فائل جو نالو "/../.../../../../../../../etc/passwd" سان تبديل ڪيو ويو آهي. اڳيون، متغير موڪليندڙ جي ايڊريس سان اوور رائٽ ڪيو ويو آهي، جيڪو پهريون ڀيرو لاگ ۾ محفوظ ڪيو ويو آهي، جيڪو توهان کي سسٽم ۾ هڪ نئون صارف شامل ڪرڻ جي اجازت ڏئي ٿو.

ورهاست طرفان جاري ڪيل خطرن جي اصلاحن سان پيڪيج اپڊيٽ ديبين, Ubuntu, بيدل, SUSE/اوپن سوس и FreeBSD. RHEL ۽ CentOS مسئلو حساس نه آهي، ڇاڪاڻ ته Exim انهن جي باقاعده پيڪيج جي مخزن ۾ شامل نه آهي (۾ اي پي ايل اپڊيٽ اڳ ۾ ئي ٺهيل، پر في الحال نه رکيل عوامي مخزن ڏانهن). Exim ڪوڊ ۾ مسئلو ون لائنر سان حل ڪيو ويو آهي پيچ، جيڪو پسمنظر جي فرار ٿيڻ واري اثر کي بند ڪري ٿو جيڪڏهن اهو لڪير جي آخر ۾ آهي.

خطري کي بلاڪ ڪرڻ لاءِ ڪم ڪار جي طور تي، توهان TLS سپورٽ کي بند ڪري سگھو ٿا يا شامل ڪري سگھو ٿا
ACL سيڪشن “acl_smtp_mail”:

deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}

جو ذريعو: opennet.ru

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