በዜን+ እና በዜን 2 ማይክሮ አርክቴክቸር ላይ ተመስርተው በ AMD ፕሮሰሰር ላይ የሜልት ዳውንድ ክፍል ተጋላጭነት ተገኝቷል።

የድሬዝደን ቴክኒካል ዩኒቨርሲቲ የተመራማሪዎች ቡድን በZen+ እና Zen 2020 ማይክሮ አርክቴክቸር ላይ በተመሰረተው በ AMD ፕሮሰሰር ላይ ተጋላጭነትን (CVE-12965-2) ለይተው አውቀዋል፣ ይህም የሜልትዳውን ክፍል ጥቃትን ይፈቅዳል። መጀመሪያ ላይ AMD Zen + እና Zen 2 ፕሮሰሰሮች ለሜልትዳው ተጋላጭነት የተጋለጡ አይደሉም ተብሎ ይታሰብ ነበር፣ ነገር ግን ተመራማሪዎች ቀኖናዊ ያልሆኑ ምናባዊ አድራሻዎችን ሲጠቀሙ ወደ የተጠበቁ የማህደረ ትውስታ ቦታዎች ግምታዊ መዳረሻን የሚመራ ባህሪን ለይተው አውቀዋል።

AMD64 አርክቴክቸር የመጀመሪያውን 48 ቢት የቨርቹዋል አድራሻ ብቻ ይጠቀማል እና ቀሪውን 16 ቢት ችላ ይላል። ቢት 48 እስከ 63 ሁል ጊዜ የቢት 47 (ምልክት ቢት ቅጥያ) መገልበጥ እንዳለበት ተገልጿል:: ይህ ሁኔታ ከተጣሰ እና የላይኛው ቢት የዘፈቀደ ዋጋ ያለው አድራሻ ለመድረስ ከተሞከረ ፕሮሰሰሩ የተለየ ነገር ይፈጥራል። የላይኛውን ቢት ደጋግሞ መሙላት የሚገኘውን የአድራሻ ቦታ በሁለት ብሎኮች ይከፍላል - ዝቅተኛው (ከ 0 እስከ 00007FFFFFFFFFFFFF) ፣ የላይኛው ቢት ወደ 800000000000 ፣ እና የላይኛው (ከ FFFF1 እስከ FFFFFFFFFFFFFFFFFF) ፣ በዚህ ውስጥ። ሁሉም የላይኛው ቢት ወደ XNUMX ተቀናብረዋል።

በተገለጹት ብሎኮች ውስጥ የሚወድቁ አድራሻዎች ቀኖናዊ ይባላሉ፣ እና በላይኛው ቢት የዘፈቀደ ይዘት ያላቸው የተሳሳቱ አድራሻዎች ቀኖናዊ ያልሆኑ ይባላሉ። የታችኛው ቀኖናዊ አድራሻዎች በተለምዶ ለሂደት ውሂብ የተመደበ ነው፣ እና የላይኛው ክልል ለከርነል መረጃ ጥቅም ላይ ይውላል (የእነዚህ አድራሻዎች ከተጠቃሚ ቦታ መድረስ በልዩ ልዩ መለያ ደረጃ ላይ ነው)።

ክላሲክ የሜልትዳውን ተጋላጭነት የመመሪያው ግምታዊ አፈፃፀም በሚኖርበት ጊዜ ፕሮሰሰሩ የግል መረጃ ቦታን ማግኘት እና ውጤቱን ማስወገድ ይችላል ምክንያቱም የተቀናጁ ልዩ መብቶች የተጠቃሚውን ሂደት ስለሚከለክሉ ነው። በፕሮግራሙ ውስጥ ፣ በግምታዊ ሁኔታ የተከናወነው እገዳ ከዋናው ኮድ በሁኔታዊ ቅርንጫፍ ተለይቷል ፣ በእውነተኛ ሁኔታዎች ውስጥ ሁል ጊዜ እሳትን ያቃጥላል ፣ ግን ሁኔታዊ መግለጫው በቅድመ አፈፃፀም ወቅት አንጎለ ኮምፒውተር የማያውቀውን የተሰላ እሴት ይጠቀማል። ኮዱ, ሁሉም የቅርንጫፍ አማራጮች በግምታዊነት ይከናወናሉ.

በግምታዊ ሁኔታ የተከናወኑ ተግባራት በተለምዶ ከሚፈጸሙ መመሪያዎች ጋር ተመሳሳይ መሸጎጫ ስለሚጠቀሙ በግምታዊ አፈፃፀም ወቅት በግል ማህደረ ትውስታ አካባቢ ውስጥ ያሉ የግለሰቦችን ቢት ይዘቶች የሚያንፀባርቁ ምልክቶችን በመሸጎጫ ውስጥ ማስቀመጥ እና በመደበኛነት በተተገበረው ኮድ ዋጋቸውን በጊዜ መወሰን ይቻላል ። ትንታኔ ወደ የተሸጎጠ እና ያልተሸጎጠ ውሂብ ይደርሳል።

የአዲሱ የተጋላጭነት ባህሪ AMD Zen+ እና Zen 2 ፕሮሰሰርን የሚነካው ሲፒዩዎች ግምታዊ የንባብ እና የመፃፍ ስራዎችን መፍቀዳቸው ልክ ያልሆኑ ቀኖናዊ አድራሻዎችን በመጠቀም ማህደረ ትውስታን እንዲደርሱ መፍቀዳቸው ነው፣ በቀላሉ የላይኛውን 16 ቢት ችላ ብለዋል። ስለዚህ, በግምታዊ ኮድ አፈፃፀም ወቅት, ሂደተሩ ሁልጊዜ ዝቅተኛውን 48 ቢት ብቻ ይጠቀማል, እና የአድራሻው ትክክለኛነት በተናጠል ይጣራል. ቀኖናዊ ያልሆነ ምናባዊ አድራሻ በአሶሺዬቲቭ የትርጉም ቋት (TLB) ውስጥ ወደ አካላዊ አድራሻ ሲተረጉም በአድራሻው ቀኖናዊ ክፍል ውስጥ ግጥሚያ ከተገኘ የግምታዊ ጭነት ክዋኔ ይዘቱን ከግምት ውስጥ ሳያስገባ እሴቱን ይመልሳል። የላይኛው 16 ቢት በክር መካከል የማህደረ ትውስታ መጋራትን ለማለፍ ያስችላል። በመቀጠል, ክዋኔው ልክ እንዳልሆነ እና እንደተጣለ ይቆጠራል, ነገር ግን የማህደረ ትውስታ መዳረሻ ይጠናቀቃል እና ውሂቡ ወደ መሸጎጫ ውስጥ ያበቃል.

በሙከራው ወቅት የFLUSH+ RELOAD ካሼን ይዘቶች የመለየት ዘዴን በመጠቀም ተመራማሪዎቹ በሴኮንድ 125 ባይት ፍጥነት ድብቅ ዳታ ለማስተላለፍ የሚያስችል ቻናል ማደራጀት ችለዋል። ከኤ.ዲ.ዲ ቺፖች በተጨማሪ ችግሩ ለሁሉም ኢንቴል ፕሮሰሰር ይነካል ፣ይህም ለተለመደው የሜልትዳውን ተጋላጭነት ተጋላጭ ነው። እንደ LFENCE መመሪያዎችን በመጠቀም የሜልትዳውን ጥቃቶችን ለማገድ የሚረዱ ተመሳሳይ ዘዴዎች ከዚህ አዲስ አይነት ጥቃት ለመከላከል ጥቅም ላይ ሊውሉ ይችላሉ። ለምሳሌ የኢንቴል ፕሮሰሰር ሃርድዌር ከሜልት ዳውንድ መከላከያን የሚያካትት ከሆነ ወይም ስርዓቱ የሶፍትዌር ጥበቃ የነቃ ከሆነ እንደዚህ ያሉ ውቅሮች ለአዲሱ የጥቃት ልዩነት የተጋለጡ አይደሉም።

በተመሳሳይ ጊዜ ተመራማሪዎቹ ከኢንቴል ፕሮሰሰር ጋር ሲነፃፀሩ የኤ.ዲ.ዲ ፕሮጄክተሮች አርክቴክቸር እውነተኛ ጥቃቶችን የመፈፀም እድልን ይገድባል ፣ነገር ግን ውጤታማነታቸውን ለመጨመር ከሌሎች የማይክሮ አርክቴክቸር ጥቃቶች ጋር አዲስ ዘዴን መጠቀምን አያካትትም ። በተለይም የታቀደው ጥቃት የከርነል እና ሌሎች ሂደቶችን የማስታወሻ ቦታዎችን ይዘት እንዲወስን አይፈቅድም ፣ ግን በተመሳሳይ ምናባዊ ማህደረ ትውስታ ቦታ ውስጥ የሚሰሩ ተመሳሳይ ፕሮግራሞችን ሌሎች ክሮች የማግኘት ችሎታ ላይ የተገደበ ነው።

የተጋላጭነት ችግር የሌለበት ፕሮግራም ወደ ክሮቹ የመግባት ችሎታ ስላለው ከተግባራዊ እይታ ዘዴው የአሸዋ ሳጥንን ማግለል በማለፍ የሶስተኛ ወገን አፈፃፀም በሚፈቅዱ ፕሮግራሞች ውስጥ የሌሎች ክሮች ሥራ ላይ ጣልቃ ገብነትን ማደራጀት ጠቃሚ ነው ። እንደ የድር አሳሾች እና JIT ሞተሮች ያሉ ኮድ። ተመራማሪዎች የ SpiderMonkey ጃቫስክሪፕት ሞተር እና የሊኑክስ ከርነል ጥቃትን ተጋላጭነት መርምረዋል፣ ነገር ግን ጥቃትን ለመፈጸም ሊጠቀሙባቸው የሚችሉ ተጋላጭ የኮድ ቅደም ተከተሎችን አላገኙም። አፕሊኬሽኖችን ከማጥቃት በተጨማሪ ስልቱ ሌሎች የማይክሮ አርክቴክቸር ተጋላጭነቶችን በሚጠቀሙበት ጊዜ ተቀባይነት የሌላቸውን የመረጃ ፍሰቶች በማቀነባበሪያው በማይክሮአርክቴክቸር አካላት መካከል ለማስገደድ ይጠቅማል።

ምንጭ: opennet.ru

አስተያየት ያክሉ