லினக்ஸ் கர்னலைப் பாதுகாக்க Huawei ஊழியர் முன்மொழிந்த இணைப்புகளில் பாதுகாப்புச் சிக்கல்கள்

Grsecurity திட்டத்தின் டெவலப்பர்கள் திரும்பியது பேட்ச் தொகுப்பில் அற்பமாக சுரண்டக்கூடிய பாதிப்பு இருப்பதை கவனத்தில் கொள்ள வேண்டும் எச்.கே.எஸ்.பி. (Huawei Kernel Self Protection), சில நாட்களுக்கு முன்பு முன்மொழியப்பட்டது லினக்ஸ் கர்னலின் பாதுகாப்பை மேம்படுத்த. சூழ்நிலை நினைவூட்டுகிறது சாம்சங் வழக்கு, இதில் கணினி பாதுகாப்பை மேம்படுத்தும் முயற்சி ஒரு புதிய பாதிப்புக்கு வழிவகுத்தது மற்றும் சாதனங்களை சமரசம் செய்வதை எளிதாக்கியது.

HKSP இணைப்புகள் Huawei ஊழியர் ஒருவரால் வெளியிடப்பட்டது, GitHub சுயவிவரத்தில் Huawei பற்றிய குறிப்பை உள்ளடக்கியது மற்றும் திட்டப் பெயரில் Huawei என்ற வார்த்தையைப் பயன்படுத்தவும் (HKSP - Huawei Kernel Self Protection). அதே நேரத்தில், Huawei பிரதிநிதிகள் நிறுவனத்துடனான HKSP திட்டத்தின் தொடர்பை மறுத்து, அந்த குறியீடு பணியாளரின் தனிப்பட்ட முயற்சியின் பேரில் உருவாக்கப்பட்டது, அதிகாரப்பூர்வ Huawei திட்டம் அல்ல, நிறுவனத்தின் தயாரிப்புகளில் பயன்படுத்தப்படவில்லை என்று கூறினார். அன்று கிட்ஹப் பக்கம் எச்.கே.எஸ்.பி கண்டுபிடித்த பிறகு பாதிப்புகளும் கூட சேர்க்கப்பட்டது ஆராய்ச்சி நோக்கங்களுக்காக எனது ஓய்வு நேரத்தில் திட்டம் உருவாக்கப்படுகிறது என்பதை நினைவில் கொள்க.

க்ரெட் கட்டமைப்பில் ஆஃப்செட்களின் சீரற்றமயமாக்கல், பயனர் அடையாளங்காட்டி பெயர்வெளி (pid namespace) மீதான தாக்குதல்களுக்கு எதிரான பாதுகாப்பு, mmap பகுதியில் இருந்து செயல்முறை அடுக்கைப் பிரித்தல், kfree செயல்பாட்டிற்கு இரட்டை அழைப்புகளைக் கண்டறிதல், போலி மூலம் கசிவுகளைத் தடுப்பது போன்ற மாற்றங்கள் HKSPயில் அடங்கும். -FS /proc (/proc/ {modules, keys, key-users}, /proc/sys/kernel/* மற்றும் /proc/sys/vm/mmap_min_addr, /proc/kallsyms), மேம்படுத்தப்பட்ட பயனர் இட முகவரி ரேண்டமைசேஷன், கூடுதல் ப்ரேஸ் பாதுகாப்பு, மேம்படுத்தப்பட்ட ஸ்மாப் மற்றும் smep பாதுகாப்பு, மூல சாக்கெட்டுகள் வழியாக தரவை அனுப்புவதைத் தடைசெய்யும் திறன், UDP சாக்கெட்டுகளில் தவறான முகவரிகளைத் தடுப்பது மற்றும் இயங்கும் செயல்முறைகளின் நேர்மையை சரிபார்த்தல். இது Ksguard கர்னல் தொகுதியையும் உள்ளடக்கியது, இது வழக்கமான ரூட்கிட்களை அறிமுகப்படுத்தும் முயற்சிகளைக் கண்டறிவதை நோக்கமாகக் கொண்டது.

அழைக்கப்பட்டது லினக்ஸ் கர்னலின் நிலையான கிளையைப் பராமரிப்பதற்குப் பொறுப்பான கிரெக் க்ரோஹ்-ஹார்ட்மேன் ஆர்வமாக இருந்தார், மேலும் முக்கிய கர்னலுக்கு மதிப்பாய்வு மற்றும் விளம்பரத்தை எளிதாக்குவதற்கு மோனோலிதிக் பேட்சை பகுதிகளாக உடைக்குமாறு ஆசிரியரிடம் கேட்டார். கீஸ் குக், தலைவர் திட்டம் மீது பதவி உயர்வு லினக்ஸ் கர்னலில் செயலில் உள்ள பாதுகாப்பு தொழில்நுட்பம் நேர்மறையாக இணைப்புகளுக்கு பதிலளித்தது மற்றும் சிக்கல்களுக்கு மத்தியில், x86 கட்டமைப்பிற்கான பிணைப்பு மற்றும் பல முறைகளின் அறிவிப்பு தன்மை ஆகியவற்றின் கவனத்தை ஈர்த்தது, இது சிக்கலைப் பற்றிய தகவல்களை மட்டுமே பதிவு செய்கிறது, ஆனால் அதைத் தடுக்க முயற்சிக்காதீர்கள்.

Grsecurity டெவலப்பர்களால் பேட்ச் பற்றிய ஆய்வு குறியீட்டில் பல பிழைகள் மற்றும் பலவீனங்களை வெளிப்படுத்தியது, மேலும் திட்டத்தின் திறன்களை போதுமான அளவு மதிப்பிட அனுமதிக்கும் அச்சுறுத்தல் மாதிரி இல்லாததைக் காட்டியது. பாதுகாப்பான நிரலாக்க முறைகளைப் பயன்படுத்தாமல் குறியீடு எழுதப்பட்டது என்பதைத் தெளிவாக நிரூபிக்க, ஹேண்ட்லரில் உள்ள அற்பமான பாதிப்புக்கான உதாரணம் கொடுக்கப்பட்டுள்ளது.
கோப்பு /proc/ksguard/state, இது உரிமைகள் 0777 உடன் உருவாக்கப்பட்டது, இது அனைவருக்கும் எழுதும் அணுகலைக் குறிக்கிறது. ksg_state_write செயல்பாடு, /proc/ksguard/state க்கு எழுதப்பட்ட கட்டளைகளை அலசுவதற்குப் பயன்படுகிறது, இது ஒரு tmp[32] இடையகத்தை உருவாக்குகிறது, இது இலக்கு இடையகத்தின் அளவைக் கணக்கில் எடுத்துக் கொள்ளாமல், அனுப்பப்பட்ட இயக்கத்தின் அளவைப் பொறுத்து தரவு எழுதப்படுகிறது. சரத்தின் அளவுடன் அளவுருவை சரிபார்க்கிறது. அந்த. கர்னல் அடுக்கின் பகுதியை மேலெழுத, தாக்குபவர் /proc/ksguard/state க்கு சிறப்பாக வடிவமைக்கப்பட்ட வரியை எழுத வேண்டும்.

நிலையான ssize_t ksg_state_write(struct file *file, const char __user *buf,
சைஸ்_டி லென், லோஃப்_டி *ஆஃப்செட்)
{
u64 மதிப்பு;
சார் டிஎம்பி[32];
size_t n = 0;

என்றால் (copy_from_user(tmp, buf, len))
திரும்ப -1;

மதிப்பு = simple_strtoul(tmp, '\0', 10);
...

சுரண்டல் முன்மாதிரி:

சார் பஃப்[4096] = {};
int fd = open (“/proc/ksguard/state”, O_WRONLY);
என்றால் (fd >= 0) {
எழுது(fd, buf, sizeof(buf));
மூடு(fd);
}

ஆதாரம்: opennet.ru

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