በሊኑክስ ከርነል ውስጥ ካሉ የተጋላጭነቶች ብዝበዛ ለመከላከል የLKRG 0.8 ሞጁል መልቀቅ

ክፍት ግድግዳ ፕሮጀክት የታተመ የከርነል ሞጁል መለቀቅ LKRG 0.8 (Linux Kernel Runtime Guard)፣ ጥቃቶችን እና የከርነል አወቃቀሮችን ትክክለኛነት መጣስ ለመለየት እና ለማገድ የተነደፈ። ለምሳሌ፣ ሞጁሉ ያልተፈቀዱ የከርነል ለውጦችን እና የተጠቃሚ ሂደቶችን ፈቃዶች ለመለወጥ ከሚደረጉ ሙከራዎች (የብዝበዛ አጠቃቀምን መለየት) ሊከላከል ይችላል። ሞጁሉ ለሊኑክስ ከርነል አስቀድሞ ከሚታወቁ ብዝበዛዎች ጥበቃን ለማደራጀት (ለምሳሌ በሲስተሙ ውስጥ ያለውን ከርነል ለማዘመን አስቸጋሪ በሆነባቸው ሁኔታዎች) እና ገና ያልታወቁ ተጋላጭነቶችን ለመቋቋም ተስማሚ ነው። የፕሮጀክት ኮድ የተሰራጨው በ በ GPLv2 ፍቃድ የተሰጠው።

በአዲሱ ስሪት ውስጥ ካሉት ለውጦች መካከል፡-

  • የ LKRG ፕሮጀክት አቀማመጥ ተለውጧል, ይህም ከአሁን በኋላ ታማኝነትን ለመፈተሽ እና የብዝበዛ አጠቃቀምን ለመወሰን በተለየ ንዑስ ስርዓቶች የተከፋፈለ ነው, ነገር ግን ጥቃቶችን እና የተለያዩ የአቋም ጥሰቶችን ለመለየት እንደ ሙሉ ምርት ቀርቧል;
  • ተኳኋኝነት ከሊኑክስ ከርነሎች 5.3 እስከ 5.7 እንዲሁም ከኮንፊግ_USB እና CONFIG_STACKTRACE አማራጮች ውጭ ወይም በCONFIG_UNWINDER_ORC አማራጭ እንዲሁም ከርነሎች ከሌላቸው የLKRG ተግባራት ጋር ከተጣመሩ አስኳሎች ጋር ተዘጋጅቷል። ጋር መከፈል;
  • በሚገነቡበት ጊዜ አንዳንድ የግዴታ CONFIG_* የከርነል ቅንጅቶች ግልጽ ከሆኑ ብልሽቶች ይልቅ ትርጉም ያላቸው የስህተት መልዕክቶችን ለማመንጨት ይፈተሻሉ።
  • ለተጠባባቂ (ACPI S3, ወደ RAM ተንጠልጥሏል) እና የእንቅልፍ (S4, ወደ ዲስክ አንጠልጣይ) ሁነታዎች ድጋፍ ታክሏል;
  • ወደ Makefile የDKMS ድጋፍ ታክሏል;
  • ለ 32-ቢት ARM የመሳሪያ ስርዓቶች የሙከራ ድጋፍ ተተግብሯል (በ Raspberry Pi 3 Model B ላይ ተፈትኗል)። ቀደም ሲል የነበረው የ AArch64 (ARM64) ድጋፍ ከ Raspberry Pi 4 ቦርድ ጋር ተኳሃኝነትን ለማቅረብ ተዘርግቷል;
  • አዲስ መንጠቆዎች ተጨምረዋል፣ ይህም የሚጠቀም () የጥሪ ተቆጣጣሪን በተሻለ ሁኔታ ለመለየት"ችሎታዎችየሂደት መታወቂያ አይደለም (ምስክርነቶች);
  • የስም ቦታ ገደቦችን (ለምሳሌ ከዶከር ኮንቴይነሮች) ለማምለጥ የሚደረጉ ሙከራዎችን ለመለየት አዲስ አመክንዮ ቀርቧል።
  • በ x86-64 ሲስተሞች፣ SMAP (የሱፐርቫይዘር ሞድ መዳረሻ መከላከያ) ቢት ተፈተሸ እና ተተግብሯል፣ የተጠቃሚ ቦታ መረጃን በከርነል ደረጃ ከሚሰራ ልዩ ኮድ እንዳይደርስ ለማድረግ ታስቦ ነው። SMEP (የተቆጣጣሪ ሁነታ ማስፈጸሚያ መከላከል) ጥበቃ ቀደም ሲል ተተግብሯል;
  • በሚሠራበት ጊዜ የ LKRG ቅንጅቶች ብዙውን ጊዜ ተነባቢ-ብቻ በሆነ የማስታወሻ ገጽ ውስጥ ይቀመጣሉ ።
  • ለጥቃቶች በጣም ጠቃሚ ሊሆን የሚችል የምዝግብ ማስታወሻ መረጃ (ለምሳሌ በከርነል ውስጥ ስላሉ አድራሻዎች መረጃ) ለማረም ሁነታ (log_level=4 እና ከዚያ በላይ) የተገደበ ነው፣ ይህም በነባሪነት ተሰናክሏል።
  • የሂደቱ መከታተያ ዳታቤዝ ልኬታማነት ጨምሯል - በአንድ ስፒንሎክ ከተጠበቀው አንድ የ RB ዛፍ ይልቅ በ 512 የተነበቡ መቆለፊያዎች የተጠበቁ 512 RB ዛፎች የሃሽ ጠረጴዛ ጥቅም ላይ ይውላል;
  • አንድ ሁነታ በነባሪነት ተተግብሯል እና ነቅቷል ፣ በዚህ ጊዜ የሂደት መለያዎች ትክክለኛነት ብዙውን ጊዜ አሁን ላለው ተግባር ብቻ እና እንዲሁም ለተነቃቁ (የሚነቃቁ) ተግባራት የሚረጋገጥበት ሁኔታ ነው። በእንቅልፍ ሁኔታ ውስጥ ላሉ ወይም በLKRG የሚቆጣጠረውን የከርነል ኤፒአይ ሳይደርሱ ለሚሰሩ ሌሎች ተግባራት፣ ቼኩ ብዙ ጊዜ አይከናወንም።
  • ለጥሩ ማስተካከያ LKRG አዲስ የ sysctl እና የሞዱል መለኪያዎች ታክለዋል፣ እንዲሁም ሁለት sysctl ለቀላል ውቅር በገንቢዎች ከተዘጋጁ የጥሩ ማስተካከያ ቅንጅቶች (መገለጫዎች) ውስጥ በመምረጥ።
  • በአንድ በኩል, እና አፈጻጸም እና የውሸት አወንታዊ ያለውን አደጋ ላይ ያለውን ተጽዕኖ, ጥሰቶች ማወቂያ ፍጥነት እና ምላሽ ውጤታማነት መካከል ይበልጥ ሚዛናዊ ሚዛን ለማሳካት ነባሪ ቅንብሮች ተለውጠዋል;
  • የስርዓት ዩኒት ፋይሉ የ LKRG ሞጁሉን በቡት መጀመሪያ ላይ ለመጫን በአዲስ መልክ ተዘጋጅቷል (የከርነል ትዕዛዝ መስመር አማራጭ ሞጁሉን ለማሰናከል መጠቀም ይቻላል)።

በአዲሱ ልቀት ላይ የታቀዱትን ማመቻቸት ግምት ውስጥ በማስገባት LKRG 0.8 ሲጠቀሙ የአፈፃፀም ቅነሳው በነባሪ ሁነታ ("ከባድ") እና 2.5% በብርሃን ሁነታ ("ብርሃን") በ 2% ይገመታል.

በቅርቡ በተካሄደው ምርምር rootkits LKRG ን ለማግኘት የጥቅሎች ውጤታማነት አሳይቷል በከርነል ደረጃ የሚሰሩ ከ8ኙ የተፈተኑ ሩትኪቶች 9ቱን በመለየት የውሸት አወንታዊ ውጤት ሳይኖራቸው (rootkits Diamorphine, Honey Pot Bears, LilyOfTheValley, Nuk3 Gh0st, Puszek, Reptile, Rootfoo Linux Rootkit እና Sutekh ተለይተዋል ነገርግን ኪስኒፈር እሱም ከርነል ነው። ሞጁል፣ የጠፋው በኪሎገር እንጂ በጥሬው ሩትኪት አይደለም።) ለማነፃፀር፣ የ AIDE፣ OSSEC እና Rootkit Hunter ፓኬጆች ከ2 ሩትኪት 9 ቱን አግኝተዋል፣ Chkrootkit ግን ምንም አላገኘም። በተመሳሳይ ጊዜ LKRG በተጠቃሚው ቦታ ላይ የሚገኙትን rootkits ማግኘትን አይደግፍም ፣ ስለሆነም ከፍተኛው ውጤታማነት የሚገኘው የ AIDE እና LKRG ጥምረት ሲጠቀሙ ነው ፣ ይህም ከሁሉም ዓይነቶች 14 ከ 15 rootkits ለመለየት አስችሏል።

በተጨማሪም, የስርጭት ገንቢ መሆኑን ልብ ሊባል ይችላል Whonix ተጀመረ መቅረጽ ዝግጁ የሆኑ ፓኬጆች ከDKMS ጋር ለዴቢያን፣ ዊኒክስ፣ ኩቤስ እና ኪክሴኩር እና ጥቅል ለ አርክ ሊንክ አስቀድሞ ወደ ስሪት 0.8 ተዘምኗል። ከ LKRG ጋር ያሉ እሽጎች በሩሲያኛም ይገኛሉ ALT ሊኑክስ и አስትራ ሊነክስ.

በLKRG ውስጥ የንፁህነት ማረጋገጫ የሚከናወነው ትክክለኛውን ኮድ እና የከርነል እና ሞጁሎች ፣ አንዳንድ አስፈላጊ የመረጃ አወቃቀሮች እና የሲፒዩ መቼቶች ከተከማቸ ሃሽ ወይም ተዛማጅ የማስታወሻ ቦታዎች ፣ የመረጃ መዋቅሮች ወይም መመዝገቢያዎች ቅጂዎች ጋር በማነፃፀር ነው ። ቼኮች በየጊዜው በሰዓት ቆጣሪ እና የተለያዩ ክስተቶች ሲከሰቱ ይንቀሳቀሳሉ።

የብዝበዛ አጠቃቀምን መወሰን እና ጥቃቶችን ማገድ የከርነል ሀብቶችን ከመቅረቡ በፊት በደረጃ ይከናወናል (ለምሳሌ ፣ ፋይል ከመክፈትዎ በፊት) ፣ ግን ሂደቱ ያልተፈቀዱ ፍቃዶችን ከተቀበለ በኋላ (ለምሳሌ ፣ UID ን መለወጥ)። ያልተፈቀደ ባህሪ ሲገኝ, ሂደቶች በነባሪነት ለማቆም ይገደዳሉ, ይህም ብዙ ብዝበዛዎችን ለማገድ በቂ ነው.

ምንጭ: opennet.ru

አስተያየት ያክሉ