LKRG 0.8 தொகுதியின் வெளியீடு Linux கர்னலில் உள்ள பாதிப்புகளை சுரண்டாமல் பாதுகாக்கும்

ஓபன்வால் திட்டம் வெளியிடப்பட்ட கர்னல் தொகுதி வெளியீடு LKRG 0.8 (Linux Kernel Runtime Guard), கர்னல் கட்டமைப்புகளின் ஒருமைப்பாட்டின் தாக்குதல்கள் மற்றும் மீறல்களைக் கண்டறிந்து தடுக்க வடிவமைக்கப்பட்டுள்ளது. எடுத்துக்காட்டாக, இயங்கும் கர்னலில் அங்கீகரிக்கப்படாத மாற்றங்களிலிருந்து தொகுதி பாதுகாக்க முடியும் மற்றும் பயனர் செயல்முறைகளின் அனுமதிகளை மாற்ற முயற்சிக்கிறது (சுரண்டல்களின் பயன்பாட்டைக் கண்டறிதல்). லினக்ஸ் கர்னலுக்கான ஏற்கனவே அறியப்பட்ட சுரண்டல்களுக்கு எதிரான பாதுகாப்பை ஒழுங்கமைக்கவும் (உதாரணமாக, கணினியில் கர்னலைப் புதுப்பிப்பது கடினமாக இருக்கும் சூழ்நிலைகளில்) மற்றும் இன்னும் அறியப்படாத பாதிப்புகளுக்கான சுரண்டல்களை எதிர்கொள்ளவும் இந்த தொகுதி பொருத்தமானது. திட்டக் குறியீடு வழங்கியது GPLv2 இன் கீழ் உரிமம் பெற்றது.

புதிய பதிப்பில் உள்ள மாற்றங்களில்:

  • LKRG திட்டத்தின் நிலைப்படுத்தல் மாற்றப்பட்டுள்ளது, இது இனி ஒருமைப்பாட்டைச் சரிபார்ப்பதற்கும் சுரண்டல்களின் பயன்பாட்டைத் தீர்மானிப்பதற்கும் தனி துணை அமைப்புகளாகப் பிரிக்கப்படவில்லை, ஆனால் தாக்குதல்கள் மற்றும் பல்வேறு நேர்மை மீறல்களைக் கண்டறிவதற்கான முழுமையான தயாரிப்பாக வழங்கப்படுகிறது;
  • CONFIG_USB மற்றும் CONFIG_STACKTRACE விருப்பங்கள் இல்லாமல் அல்லது CONFIG_UNWINDER_ORC விருப்பத்துடன், அத்துடன் கர்னல்கள் இல்லாத கர்னல்களுடன், 5.3 முதல் 5.7 வரையிலான லினக்ஸ் கர்னல்கள், அத்துடன் ஆக்கிரமிப்பு GCC மேம்படுத்தல்களுடன் தொகுக்கப்பட்ட கர்னல்கள் ஆகியவற்றுடன் இணக்கத்தன்மை வழங்கப்படுகிறது. விநியோகிக்கப்படும்;
  • உருவாக்கும்போது, ​​தெளிவற்ற செயலிழப்புகளுக்குப் பதிலாக அர்த்தமுள்ள பிழைச் செய்திகளை உருவாக்க சில கட்டாய CONFIG_* கர்னல் அமைப்புகள் சரிபார்க்கப்படுகின்றன;
  • காத்திருப்பு (ACPI S3, RAM க்கு இடைநீக்கம்) மற்றும் தூக்கம் (S4, வட்டுக்கு இடைநீக்கம்) முறைகளுக்கான ஆதரவு சேர்க்கப்பட்டது;
  • மேக்ஃபைலுக்கு DKMS ஆதரவு சேர்க்கப்பட்டது;
  • 32-பிட் ARM இயங்குதளங்களுக்கான சோதனை ஆதரவு செயல்படுத்தப்பட்டது (ராஸ்பெர்ரி பை 3 மாடல் B இல் சோதிக்கப்பட்டது). முன்பு கிடைத்த AArch64 (ARM64) ஆதரவு Raspberry Pi 4 போர்டுடன் இணக்கத்தன்மையை வழங்க விரிவாக்கப்பட்டது;
  • " கையாளும் சுரண்டல்களை சிறப்பாகக் கண்டறியும் திறன் கொண்ட() அழைப்புக் கையாளுபவர் உட்பட புதிய கொக்கிகள் சேர்க்கப்பட்டுள்ளன.திறன்களை", ஐடிகளை செயலாக்கவில்லை (சான்றுகளை);
  • பெயர்வெளி கட்டுப்பாடுகளிலிருந்து தப்பிக்கும் முயற்சிகளைக் கண்டறிவதற்காக புதிய தர்க்கம் முன்மொழியப்பட்டது (எடுத்துக்காட்டாக, டோக்கர் கொள்கலன்களில் இருந்து);
  • x86-64 கணினிகளில், SMAP (மேற்பார்வையாளர் பயன்முறை அணுகல் தடுப்பு) பிட் சரிபார்க்கப்பட்டு பயன்படுத்தப்படுகிறது, இது கர்னல் மட்டத்தில் இயங்கும் சலுகை பெற்ற குறியீட்டிலிருந்து பயனர் இடத் தரவை அணுகுவதைத் தடுக்க வடிவமைக்கப்பட்டுள்ளது. SMEP (மேற்பார்வையாளர் முறை செயல்படுத்தல் தடுப்பு) பாதுகாப்பு முன்பு செயல்படுத்தப்பட்டது;
  • செயல்பாட்டின் போது, ​​LKRG அமைப்புகள் பொதுவாக படிக்க மட்டுமே இருக்கும் நினைவகப் பக்கத்தில் வைக்கப்படும்;
  • தாக்குதல்களுக்கு மிகவும் பயனுள்ளதாக இருக்கும் தகவலைப் பதிவு செய்வது (உதாரணமாக, கர்னலில் உள்ள முகவரிகள் பற்றிய தகவல்) பிழைத்திருத்த பயன்முறையில் (log_level=4 மற்றும் அதற்கு மேற்பட்டது) வரையறுக்கப்பட்டுள்ளது, இது இயல்பாகவே முடக்கப்படும்.
  • செயல்முறை கண்காணிப்பு தரவுத்தளத்தின் அளவிடுதல் அதிகரிக்கப்பட்டுள்ளது - ஒரு ஸ்பின்லாக் மூலம் பாதுகாக்கப்பட்ட ஒரு RB மரத்திற்கு பதிலாக, 512 ரீட்-ரைட் பூட்டுகளால் பாதுகாக்கப்பட்ட 512 RB மரங்களின் ஹாஷ் அட்டவணை பயன்படுத்தப்படுகிறது;
  • ஒரு பயன்முறை முன்னிருப்பாக செயல்படுத்தப்பட்டு இயக்கப்பட்டது, இதில் செயல்முறை அடையாளங்காட்டிகளின் ஒருமைப்பாடு பெரும்பாலும் தற்போதைய பணிக்காக மட்டுமே சரிபார்க்கப்படுகிறது, மேலும் விருப்பமாக செயல்படுத்தப்பட்ட (எழுப்புதல்) பணிகளுக்கும். தூக்க நிலையில் இருக்கும் அல்லது LKRG ஆல் கட்டுப்படுத்தப்படும் கர்னல் API ஐ அணுகாமல் வேலை செய்யும் மற்ற பணிகளுக்கு, சரிபார்ப்பு குறைவாகவே செய்யப்படுகிறது.
  • புதிய sysctl மற்றும் தொகுதி அளவுருக்கள் LKRG ஐ நன்றாகச் சரிசெய்வதற்கும், மேலும் டெவலப்பர்களால் தயாரிக்கப்பட்ட ஃபைன்-ட்யூனிங் அமைப்புகளின் (சுயவிவரங்கள்) தொகுப்பிலிருந்து தேர்ந்தெடுப்பதன் மூலம் எளிமைப்படுத்தப்பட்ட உள்ளமைவுக்கான இரண்டு sysctlகள் சேர்க்கப்பட்டது;
  • ஒருபுறம், மீறல்களைக் கண்டறிவதற்கான வேகம் மற்றும் பதிலின் செயல்திறன் ஆகியவற்றுக்கு இடையே மிகவும் சமநிலையான சமநிலையை அடைய இயல்புநிலை அமைப்புகள் மாற்றப்பட்டுள்ளன, மறுபுறம் செயல்திறன் மீதான தாக்கம் மற்றும் தவறான நேர்மறைகளின் ஆபத்து;
  • துவக்கத்தின் ஆரம்பத்தில் LKRG தொகுதியை ஏற்றுவதற்கு systemd அலகு கோப்பு மறுவடிவமைப்பு செய்யப்பட்டுள்ளது (தொகுதியை முடக்க ஒரு கர்னல் கட்டளை வரி விருப்பத்தைப் பயன்படுத்தலாம்);

புதிய வெளியீட்டில் முன்மொழியப்பட்ட மேம்படுத்தல்களைக் கருத்தில் கொண்டு, LKRG 0.8 ஐப் பயன்படுத்தும் போது செயல்திறன் குறைப்பு இயல்புநிலை பயன்முறையில் ("கனமான") 2.5% மற்றும் ஒளி பயன்முறையில் ("ஒளி") 2% என மதிப்பிடப்பட்டுள்ளது.

சமீபத்தில் நடைபெற்ற ஒரு நிகழ்ச்சியில் ஆய்வு ரூட்கிட்கள் LKRG ஐ கண்டறிவதற்கான தொகுப்புகளின் செயல்திறன் காட்டியது சிறந்த முடிவுகள், தவறான நேர்மறைகள் இல்லாமல் கர்னல் அளவில் செயல்படும் 8 சோதனை ரூட்கிட்களில் 9ஐ அடையாளம் காணுதல் (rootkits Diamorphine, Honey Pot Bears, LilyOfTheValley, Nuk3 Gh0st, Puszek, Reptile, Rootfoo Linux Rootkit மற்றும் Sutekh ஆகியவை அடையாளம் காணப்பட்டன, ஆனால் இது Keysniffernel ஆகும். தொகுதி, ஒரு கீலாக்கரில் தவறவிடப்பட்டது, மேலும் நேரடி அர்த்தத்தில் ரூட்கிட் அல்ல). ஒப்பிடுகையில், AIDE, OSSEC மற்றும் Rootkit Hunter தொகுப்புகள் 2 ரூட்கிட்களில் 9ஐக் கண்டறிந்தன, Chkrootkit எதையும் கண்டறியவில்லை. அதே நேரத்தில், பயனர் இடத்தில் உள்ள ரூட்கிட்களைக் கண்டறிவதை LKRG ஆதரிக்காது, எனவே AIDE மற்றும் LKRG ஆகியவற்றின் கலவையைப் பயன்படுத்தும் போது மிகப்பெரிய செயல்திறன் அடையப்படுகிறது, இது அனைத்து வகையான 14 ரூட்கிட்களில் 15 ஐ அடையாளம் காண முடிந்தது.

கூடுதலாக, விநியோக டெவலப்பர் என்பதைக் குறிப்பிடலாம் Whonix நான் தொடங்கியது உருவாக்கம் Debian, Whonix, Qubes மற்றும் Kicksecure க்கான DKMS உடன் தயாராக தயாரிக்கப்பட்ட தொகுப்புகள் மற்றும் ஒரு தொகுப்பு ஆர்க் லினக்ஸ் ஏற்கனவே பதிப்பு 0.8 க்கு புதுப்பிக்கப்பட்டது. LKRG உடன் கூடிய தொகுப்புகள் ரஷ்ய மொழியிலும் கிடைக்கின்றன ALT லினக்ஸ் и அஸ்ட்ரா லினக்ஸ்.

கர்னல் மற்றும் தொகுதிகளின் உண்மையான குறியீடு மற்றும் தரவு, சில முக்கியமான தரவு கட்டமைப்புகள் மற்றும் CPU அமைப்புகளை சேமிக்கப்பட்ட ஹாஷ்கள் அல்லது தொடர்புடைய நினைவக பகுதிகள், தரவு கட்டமைப்புகள் அல்லது பதிவேடுகளின் நகல்களுடன் ஒப்பிடுவதன் மூலம் LKRG இல் ஒருமைப்பாடு சரிபார்ப்பு செய்யப்படுகிறது. காசோலைகள் டைமர் மூலமாகவும் பல்வேறு நிகழ்வுகள் நிகழும்போதும் அவ்வப்போது செயல்படுத்தப்படும்.

சுரண்டல்களின் சாத்தியமான பயன்பாட்டைத் தீர்மானிப்பது மற்றும் தாக்குதல்களைத் தடுப்பது, கர்னல் ஆதாரங்களுக்கான அணுகலை வழங்குவதற்கு முன் (எடுத்துக்காட்டாக, ஒரு கோப்பைத் திறப்பதற்கு முன்), ஆனால் செயல்முறை அங்கீகரிக்கப்படாத அனுமதிகளைப் பெற்ற பிறகு (உதாரணமாக, UID ஐ மாற்றுவது) மேற்கொள்ளப்படுகிறது. அங்கீகரிக்கப்படாத நடத்தை கண்டறியப்பட்டால், செயல்முறைகள் இயல்புநிலையாக நிறுத்தப்பட வேண்டிய கட்டாயத்தில் உள்ளன, இது பல சுரண்டல்களைத் தடுக்க போதுமானது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்