کوالیس کمپنی
مسئلہ کوڈ میں ایک بگ کی وجہ سے ہے جو میل کو ریموٹ میل سرور پر پہنچاتا ہے (اس کوڈ میں نہیں جو آنے والے کنکشن کو ہینڈل کرتا ہے)۔ حملہ کلائنٹ کی طرف اور سرور کی طرف دونوں پر ممکن ہے۔ کلائنٹ کی طرف، حملہ OpenSMTPD کی ڈیفالٹ ترتیب میں ممکن ہے، جس میں OpenSMTPD صرف اندرونی نیٹ ورک انٹرفیس (لوکل ہوسٹ) پر درخواستیں قبول کرتا ہے اور میل پیغامات بیرونی سرورز کو بھیجتا ہے۔ خطرے سے فائدہ اٹھانے کے لیے، یہ کافی ہے کہ، خط کی ترسیل کے دوران، OpenSMTPD حملہ آور کے زیر کنٹرول میل سرور کے ساتھ ایک سیشن قائم کرتا ہے، یا یہ کہ حملہ آور کلائنٹ کنکشن (MITM یا DNS یا BGP کے ذریعے حملوں کے دوران ری ڈائریکشن) سے رابطہ کر سکتا ہے۔ )۔
سرور سائیڈ حملے کے لیے، اوپن ایس ایم ٹی پی ڈی کو دوسرے میل سرورز سے بیرونی نیٹ ورک کی درخواستیں موصول کرنے یا فریق ثالث کی خدمات پیش کرنے کے لیے کنفیگر کیا جانا چاہیے جو آپ کو صوابدیدی ای میل پر درخواست بھیجنے کی اجازت دیتے ہیں (مثال کے طور پر، ویب سائٹس پر ایڈریس کی تصدیق کے فارم)۔ مثال کے طور پر، ایک حملہ آور OpenSMTPD سرور سے منسلک ہو سکتا ہے اور ایک غلط خط (غیر موجود صارف کو) بھیج سکتا ہے، جو حملہ آور کے سرور کو غلطی کوڈ (باؤنس) کے ساتھ خط بھیجنے کے جواب کا باعث بنے گا۔ حملہ آور اس خطرے کا فائدہ اٹھا سکتا ہے جب OpenSMTPD حملہ آور کے سرور کو اطلاع فراہم کرنے کے لیے جڑتا ہے۔ حملے کے دوران انجیکشن کی جانے والی شیل کمانڈز کو ایک فائل میں رکھا جاتا ہے جو OpenSMTPD کو دوبارہ شروع کرنے پر روٹ رائٹس کے ساتھ عمل میں لایا جاتا ہے، لہذا حملہ آور کو OpenSMTPD کے دوبارہ شروع ہونے یا حملے کو مکمل کرنے کے لیے OpenSMTPD کے کریش شروع کرنے کا انتظار کرنا چاہیے۔
مسئلہ mta_io() فنکشن میں موجود ہے جو کہ کنکشن قائم ہونے کے بعد ریموٹ سرور کے ذریعے لوٹائے گئے ملٹی لائن جواب کو پارس کرنے کے لیے کوڈ میں ہے (مثال کے طور پر، "250-ENHANCEDSTATUSCODES" اور "250 HELP")۔ OpenSMTPD حساب لگاتا ہے کہ پہلی لائن میں تین ہندسوں کا نمبر اور متن شامل ہوتا ہے جسے "-" کریکٹر سے الگ کیا جاتا ہے، اور دوسری لائن میں تین ہندسوں کا نمبر اور متن کو اسپیس سے الگ کیا جاتا ہے۔ اگر تین ہندسوں کے نمبر کے بعد دوسری لائن میں اسپیس اور متن نہیں آتا ہے، تو متن کی وضاحت کے لیے استعمال ہونے والے پوائنٹر کو '\0' کریکٹر کے بعد بائٹ پر سیٹ کیا جاتا ہے اور اختتام کے بعد ڈیٹا کو کاپی کرنے کی کوشش کی جاتی ہے۔ بفر میں لائن کی.
OpenBSD پروجیکٹ کی درخواست پر، کمزوریوں کے استحصال کے بارے میں تفصیلات کی اشاعت کو 26 فروری تک موخر کر دیا گیا ہے تاکہ صارفین اپنے سسٹم کو اپ ڈیٹ کر سکیں۔ یہ مسئلہ دسمبر 2015 سے کوڈ بیس میں موجود ہے، لیکن کوڈ پر عمل درآمد سے قبل روٹ مراعات کے ساتھ استحصال مئی 2018 سے ممکن ہو گیا ہے۔ محققین نے استحصال کا ایک ورکنگ پروٹو ٹائپ تیار کیا، جس کا اوپن بی ایس ڈی 6.6، اوپن بی ایس ڈی 5.9، ڈیبیان 10، ڈیبین 11 (ٹیسٹنگ) اور فیڈورا 31 کے لیے اوپن ایس ایم ٹی پی ڈی بلڈز میں کامیابی سے تجربہ کیا گیا۔
OpenSMTPD میں بھی
مسئلہ نامکمل خاتمے کا نتیجہ ہے۔
یہ قابل ذکر ہے کہ Fedora 31 میں کمزوری آپ کو فوری طور پر روٹ گروپ کی مراعات حاصل کرنے کی اجازت دیتی ہے، کیونکہ smtpctl عمل setgid smtpq پرچم کی بجائے سیٹگیڈ روٹ پرچم سے لیس ہے۔ روٹ گروپ تک رسائی حاصل کر کے، آپ /var/lib/sss/mc/passwd کے مواد کو اوور رائٹ کر سکتے ہیں اور سسٹم تک مکمل روٹ رسائی حاصل کر سکتے ہیں۔
ماخذ: opennet.ru