QEMU వివిక్త వాతావరణం నుండి బయటపడేందుకు మిమ్మల్ని అనుమతించే దుర్బలత్వం
వెల్లడించారు క్లిష్టమైన దుర్బలత్వ వివరాలు (CVE-2019-14378) గెస్ట్ సిస్టమ్లోని వర్చువల్ నెట్వర్క్ అడాప్టర్ మరియు QEMU వైపు నెట్వర్క్ బ్యాకెండ్ మధ్య కమ్యూనికేషన్ ఛానెల్ని ఏర్పాటు చేయడానికి QEMUలో ఉపయోగించే డిఫాల్ట్ SLIRP హ్యాండ్లర్లో. సమస్య KVM-ఆధారిత వర్చువలైజేషన్ సిస్టమ్లను కూడా ప్రభావితం చేస్తుంది (in వాడుకరి మోడ్) మరియు వర్చువల్బాక్స్, ఇది QEMU నుండి స్లిర్ప్ బ్యాకెండ్ను ఉపయోగిస్తుంది, అలాగే యూజర్-స్పేస్ నెట్వర్కింగ్ స్టాక్ను ఉపయోగించే అప్లికేషన్లు libSLIRP (TCP/IP ఎమ్యులేటర్).
అతిథి వ్యవస్థ నుండి ప్రత్యేకంగా రూపొందించబడిన అతి పెద్ద నెట్వర్క్ ప్యాకెట్ పంపబడినప్పుడు QEMU హ్యాండ్లర్ ప్రక్రియ యొక్క హక్కులతో హోస్ట్ సిస్టమ్ వైపు కోడ్ని అమలు చేయడానికి దుర్బలత్వం అనుమతిస్తుంది, దీనికి ఫ్రాగ్మెంటేషన్ అవసరం. ip_reass() ఫంక్షన్లోని లోపం కారణంగా, ఇన్కమింగ్ ప్యాకెట్లను మళ్లీ సమీకరించేటప్పుడు, మొదటి భాగం కేటాయించిన బఫర్కు సరిపోకపోవచ్చు మరియు దాని తోక బఫర్ పక్కన ఉన్న మెమరీ ప్రాంతాలకు వ్రాయబడుతుంది.
ఇప్పటికే పరీక్ష కోసం అందుబాటులో ఉంది టైమర్ ద్వారా పిలువబడే హ్యాండ్లర్లతో QEMUTimerListతో సహా, main_loop_tlg శ్రేణి యొక్క మెమరీని ఓవర్రైట్ చేయడం ద్వారా ASLRని దాటవేయడం మరియు కోడ్ని అమలు చేయడం కోసం ఇది వర్కింగ్ ప్రోటోటైప్ ఆఫ్ ఎక్స్ప్లోయిట్ అందిస్తుంది.
దుర్బలత్వం ఇప్పటికే పరిష్కరించబడింది Fedora и SUSE/openSUSE, కానీ సరి చేయబడలేదు డెబియన్, ఆర్చ్ లైనక్స్ и FreeBSD. ది ఉబుంటు и RHEL స్లిర్ప్ ఉపయోగించకపోవడం వల్ల సమస్య కనిపించదు. తాజా విడుదలలో దుర్బలత్వం పరిష్కరించబడలేదు libslirp 4.0 (పరిష్కారం ప్రస్తుతం అందుబాటులో ఉంది పాచ్).