Qualys ڪمپني
مسئلو ڪوڊ ۾ هڪ بگ جي ڪري آهي جيڪو ميل کي ريموٽ ميل سرور ڏانهن پهچائي ٿو (نه ڪوڊ ۾ جيڪو ايندڙ ڪنيڪشن کي سنڀاليندو آهي). حملو ممڪن آهي ٻنهي ڪلائنٽ جي پاسي ۽ سرور جي پاسي تي. ڪلائنٽ جي پاسي، حملو OpenSMTPD جي ڊفالٽ ترتيب ۾ ممڪن آهي، جنهن ۾ OpenSMTPD صرف اندروني نيٽ ورڪ انٽرفيس (localhost) تي درخواستون قبول ڪري ٿو ۽ ٻاهرين سرورن ڏانهن ميل پيغام موڪلي ٿو. ڪمزوريءَ جو استحصال ڪرڻ لاءِ، اهو ڪافي آهي ته، خط جي ترسيل دوران، OpenSMTPD حملو ڪندڙ جي ڪنٽرول ڪيل ميل سرور سان هڪ سيشن قائم ڪري، يا اهو ته حملو ڪندڙ ڪلائنٽ ڪنيڪشن (MITM يا DNS يا BGP ذريعي حملن دوران ريڊائريڪشن) ۾ وڙهي سگهي ٿو. ).
سرور طرف جي حملي لاءِ، OpenSMTPD کي ٻين ميل سرورن کان خارجي نيٽ ورڪ جي درخواستون وصول ڪرڻ يا ٽئين پارٽي جي خدمتن جي خدمت ڪرڻ لاءِ ترتيب ڏيڻ لازمي آھي جيڪا توھان کي اجازت ڏئي ٿي ھڪ درخواست موڪلڻ لاءِ ھڪ صوابديدي اي ميل (مثال طور، ويب سائيٽن تي ايڊريس جي تصديق جا فارم). مثال طور، هڪ حملو ڪندڙ OpenSMTPD سرور سان ڳنڍي سگهي ٿو ۽ هڪ غلط خط (غير موجود صارف ڏانهن) موڪلي سگهي ٿو، جنهن جي نتيجي ۾ هڪ خط موڪلڻ جو جواب ٿيندو هڪ خط جي غلطي ڪوڊ سان (باؤنس) حملي ڪندڙ جي سرور ڏانهن. هڪ حملو ڪندڙ ان خطري جو استحصال ڪري سگهي ٿو جڏهن OpenSMTPD حملو ڪندڙ جي سرور ڏانهن نوٽيفڪيشن پهچائڻ لاءِ ڳنڍي ٿو. حملي دوران داخل ٿيل شيل ڪمانڊ هڪ فائل ۾ رکيا ويا آهن جيڪي روٽ حقن سان گڏ ڪيا ويندا آهن جڏهن OpenSMTPD ٻيهر شروع ڪيو ويندو آهي، تنهنڪري حملي ڪندڙ کي OpenSMTPD کي ٻيهر شروع ڪرڻ يا حملي کي مڪمل ڪرڻ لاء OpenSMTPD جي حادثي کي شروع ڪرڻ جو انتظار ڪرڻو پوندو.
مسئلو موجود آهي mta_io() فنڪشن ۾ ڪوڊ ۾ ملٽي لائن جواب کي پارس ڪرڻ لاءِ جيڪو ڪنيڪشن قائم ٿيڻ کان پوءِ ريموٽ سرور طرفان موٽايو ويو آهي (مثال طور، "250-ENHANCEDSTATUSCODES" ۽ "250 HELP"). OpenSMTPD حساب ڪري ٿو ته پهرين لڪير ۾ هڪ ٽي عددي نمبر ۽ متن شامل آهي "-" ڪردار سان الڳ ٿيل، ۽ ٻئي لڪير ۾ ٽي عددي نمبر ۽ متن شامل آهي هڪ اسپيس سان الڳ ٿيل. جيڪڏهن ٽن عددي نمبر جي پٺيان جاءِ نه هجي ۽ ٻئي لڪير ۾ متن، متن جي وضاحت ڪرڻ لاءِ استعمال ٿيندڙ پوائنٽر '\0' ڪردار جي پٺيان بائيٽ تي سيٽ ڪيو ويندو آهي ۽ آخر ۾ ڊيٽا کي نقل ڪرڻ جي ڪوشش ڪئي ويندي آهي. بفر ۾ لائن جي.
OpenBSD پروجيڪٽ جي درخواست تي، خطرن جي استحصال بابت تفصيلات جي اشاعت 26 فيبروري تائين ملتوي ڪئي وئي آهي ته جيئن صارفين کي انهن جي سسٽم کي اپڊيٽ ڪرڻ جي اجازت ڏني وڃي. مسئلو ڊسمبر 2015 کان ڪوڊ بيس ۾ موجود آهي، پر روٽ استحقاق سان ڪوڊ تي عملدرآمد کان اڳ استحصال مئي 2018 کان ممڪن ٿي چڪو آهي. محققن استحصال جو ڪم ڪندڙ پروٽوٽائپ تيار ڪيو، جيڪو OpenBSD 6.6، OpenBSD 5.9، Debian 10، Debian 11 (testing) ۽ Fedora 31 لاءِ OpenSMTPD تعميرات ۾ ڪاميابيءَ سان آزمايو ويو.
OpenSMTPD ۾ پڻ
مسئلو اڻپوري خاتمي جو نتيجو آهي
اهو قابل ذڪر آهي ته Fedora 31 ۾ ڪمزوري توهان کي فوري طور تي روٽ گروپ جا امتياز حاصل ڪرڻ جي اجازت ڏئي ٿي، ڇاڪاڻ ته smtpctl عمل setgid smtpq پرچم جي بدران setgid روٽ پرچم سان ليس آهي. روٽ گروپ تائين رسائي حاصل ڪرڻ سان، توهان /var/lib/sss/mc/passwd جي مواد کي مٿي ڪري سگهو ٿا ۽ سسٽم تائين مڪمل روٽ رسائي حاصل ڪري سگهو ٿا.
جو ذريعو: opennet.ru