பாதிப்புகளை சுரண்டுவதற்கான ஒரு பார்வை

இந்த தலைப்பைத் தொடர்ந்து விவாதிக்க நான் எதிர்பார்த்துக் கொண்டிருந்தபோது, ​​பாதிப்புகள் குறித்த வரலாறு, கோட்பாடு மற்றும் நடைமுறைகளை நான் உங்களுக்குச் சொல்கிறேன். பாதுகாப்பு குறைபாடுகள் நிறைய செலவாகும் என்பதை நாம் அனைவரும் இப்போது கேள்விப்பட்டிருக்கிறோம், எங்கள் மென்பொருளை புதுப்பித்த நிலையில் வைத்திருக்க வேண்டும் என்பதை நாம் அனைவரும் அறிவோம், பாதுகாப்பு புதுப்பிப்புகளால் பல புதுப்பிப்புகள் ஏற்படுகின்றன என்பதை நாம் அனைவரும் அறிவோம். ஆனால் இந்த பிழைகள் எவ்வாறு கண்டுபிடிக்கப்பட்டு சுரண்டப்படுகின்றன என்பதைப் பற்றி இன்று நான் உங்களுக்கு கொஞ்சம் கூறுவேன் 🙂 ஆனால் இதற்கு முன் ஒரு சிறந்த கண்ணோட்டத்தைப் பெறுவதற்காக சில விவரங்களை தெளிவுபடுத்தப் போகிறோம்.

நீங்கள் தொடங்குவதற்கு முன்

முதலில் நான் உங்களுக்குச் சொல்ல விரும்புகிறேன், நான் அறிந்த முதல், சுரண்ட கற்றுக்கொண்ட முதல் பாதிப்பு குறித்து நாங்கள் கவனம் செலுத்தப் போகிறோம் இடையக வழிதல், இந்த பாதிப்பில், வேடிக்கையான விஷயங்களைச் செய்ய நினைவக சரிபார்ப்பு இல்லாததை நாங்கள் பயன்படுத்திக் கொள்கிறோம் 🙂 ஆனால் இதைப் பற்றி இன்னும் கொஞ்சம் தெளிவுபடுத்துவோம்.

இது ஒரு உண்மையான உலக காட்சியாக இருக்கப்போவதில்லை

அவர்கள் பார்க்கும் எந்தவொரு நிரலையும் உடைக்க அவர்களுக்குக் கற்பிக்க என்னால் முடியாது - முதலில் இது அவர்களின் கணினிகளுக்கு ஆபத்தானது, இரண்டாவதாக, ஏனெனில் இது எனது வழக்கமான சொற்களை விட அதிகமாக எடுக்கும்.

நாங்கள் 80 களில் ஒரு பயணத்திற்கு செல்கிறோம்

எனது மடிக்கணினியில் நான் என்ன செய்ய முடியும் என்பதை நான் உங்களுக்குக் காட்டப் போகிறேன், ஆனால் இன்று அதை ஒரு எளிய வழியில் செய்ய முடியும் என்று அர்த்தமல்ல these இந்த கருத்துக்கள் பல ஏற்கனவே பல முறை சுரண்டப்பட்டுள்ளன, புதிய பாதுகாப்பு முறைகள் மற்றும் புதிய வழிமுறைகள் தவிர்க்கப்படுகின்றன அவை வெளிவந்துள்ளன 😛 ஆனால் அது நம்மை ஒரே இடத்திற்குத் திருப்புகிறது, அதையெல்லாம் சொல்ல இடமில்லை

இது உங்கள் செயலியில் வேலை செய்யாமல் போகலாம்

நான் மிகவும் எளிமையான உதாரணத்தைப் பயன்படுத்தப் போகிறேன் என்றாலும், ஆரம்பத்தில் இருந்தே இது பற்றிய விவரங்கள் பல மற்றும் பலவகைப்பட்டவை என்பது தெளிவாக இருக்க வேண்டும் என்று நான் விரும்புகிறேன், அது என்னைப் போலவே வெளியே வர முடியும், நீங்கள் அதை முயற்சி செய்ய விரும்பினால் , விரும்பிய விளைவும் அடையப்படாமல் போகலாம் 🙂 ஆனால் இந்த இடத்தில் என்னால் விளக்க முடியாது என்று நீங்கள் கற்பனை செய்து கொள்ளலாம், குறிப்பாக இந்த அறிமுகத்துடன் நான் ஏற்கனவே 300 க்கும் மேற்பட்ட சொற்களை எடுத்துள்ளேன், எனவே நாம் நேராக எங்கள் புள்ளியை அடைகிறோம்.

என்ன ஒரு தாங்கல் வழிதல்

இதற்கு பதிலளிக்க இந்த கலவையின் முதல் பாதியை நாம் முதலில் புரிந்து கொள்ள வேண்டும்.

அடிதாங்கிகள்

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

பெயர் குறிப்பிடுவது போல, ஒரு இடையகத்தை கையாளக்கூடியதை விட அதிகமான தகவல்களை நிரப்பும்போது, ​​வழிதல் ஏற்படுகிறது. ஆனால் இது ஏன் முக்கியமானது?

ஸ்டேக்

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

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

சுட்டிகள்

இது சி உலகில் தொடங்கும் போது பல புரோகிராமர்களை பைத்தியம் பிடிக்கும் ஒரு கருத்து, உண்மையில் சி நிரலாக்கத்தின் பெரும் சக்தி ஒரு பகுதியாக சுட்டிகள் பயன்படுத்துவதால் ஏற்படுகிறது. எளிமையாக வைக்க, ஒரு சுட்டிக்காட்டி நினைவக முகவரிக்கு சுட்டிக்காட்டுகிறது. இது சிக்கலானதாகத் தெரிகிறது, ஆனால் அது அவ்வளவு சிக்கலானது அல்ல, நம் அனைவருக்கும் நம் கணினிகளில் ரேம் இருக்கிறதா? சரி, இதை ஒரு என வரையறுக்கலாம் தொகுதிகளின் தொடர்ச்சியான ஏற்பாடு, இந்த இடங்கள் பொதுவாக அறுகோண எண்களில் வெளிப்படுத்தப்படுகின்றன (0 முதல் 9 வரை, பின்னர் A முதல் F வரை, 0x0, 0x1, 0x6, 0xA, 0xF, 0x10 போன்றவை). இங்கே ஒரு ஆர்வமான குறிப்பாக, 0x10 இல்லை இது 10 to க்கு சமம், நாம் அதை தசம வரிசைக்கு மாற்றினால் அது 15 என்று சொல்வது போலவே இருக்கும். இது முதலில் ஒன்றுக்கு மேற்பட்டவற்றைக் குழப்புகிறது, ஆனால் அதற்கு கீழே இறங்குவோம்.

பதிவுகள்

செயலிகள் பலவற்றோடு வேலை செய்கின்றன பதிவுகள், இடங்களை இயற்பியல் நினைவகத்திலிருந்து செயலிக்கு அனுப்பும், 64-பிட்களைப் பயன்படுத்தும் கட்டமைப்புகளுக்கு, பதிவேடுகளின் எண்ணிக்கை இங்கே விவரிக்க பெரியது மற்றும் கடினம், ஆனால் யோசனையைப் பெற, பதிவேடுகள் சுட்டிகள் போன்றவை, அவை மற்றவற்றுடன் குறிக்கின்றன , நினைவக இடம் (இடம்).

இப்போது பயிற்சி

இப்போது வரை செயலாக்க இது நிறைய தகவல்களைக் கொண்டுள்ளது என்பதை நான் அறிவேன், ஆனால் உண்மையில் அவை சற்றே சிக்கலான பிரச்சினைகள், நான் மிக எளிமையான முறையில் விளக்க முயற்சிக்கிறேன், இடையகங்களைப் பயன்படுத்தும் ஒரு சிறிய நிரலைப் பார்க்கப் போகிறோம், நாங்கள் போகிறோம் வழிதல் பற்றி இதைப் புரிந்துகொள்ள அதை உடைக்க, வெளிப்படையாக இது ஒன்றல்ல இது ஒரு உண்மையான நிரல், இன்று பயன்படுத்தப்பட்ட பல எதிர் நடவடிக்கைகளை நாம் "தவிர்க்க" போகிறோம், இதற்கு முன்பு விஷயங்கள் எவ்வாறு செய்யப்பட்டன என்பதைக் காண்பிப்பதற்காக 🙂 மற்றும் இவற்றில் சில மிகவும் சிக்கலான விஷயங்களைக் கற்றுக்கொள்ள கொள்கைகள் அவசியம்

GDB,

சந்தேகத்திற்கு இடமின்றி சி புரோகிராமர்களால் பயன்படுத்தப்பட்ட ஒரு சிறந்த திட்டம். அதன் பல நற்பண்புகளில், இதுவரை நாம் பேசி வந்த அனைத்தையும், பதிவேடுகள், ஸ்டேக், பஃப்பர்கள் போன்றவற்றைப் பார்க்க இது அனுமதிக்கிறது என்ற உண்மையை நாங்கள் கொண்டுள்ளோம் எங்கள் உதாரணத்திற்கு நாம் பயன்படுத்தப் போகும் நிரலைப் பார்ப்போம்.

retinput.c

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

இது மிகவும் எளிமையான நிரல், நாங்கள் நூலகத்தைப் பயன்படுத்தப் போகிறோம் stdio.h தகவல்களைப் பெற்று அதை ஒரு முனையத்தில் காண்பிக்க முடியும். எனப்படும் ஒரு செயல்பாட்டை நாம் காணலாம் return_input இது உருவாக்குகிறது தாங்கல் என்று வரிசை, இதன் நீளம் 30 ஆகும் பைட்டுகள் (கரி தரவு வகை 1 பைட் நீளமானது).

செயல்பாடு gets(array); பணியகம் மற்றும் செயல்பாடு மூலம் தகவல்களைக் கோருங்கள் printf() வரிசையின் உள்ளடக்கத்தை திருப்பி திரையில் காண்பிக்கும்.

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

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

நான் இப்போது செய்ததை கொஞ்சம் எடுத்துக்கொள்வோம். விருப்பம் -ggdb ஒழுங்காக பிழைதிருத்தம் செய்ய gdb க்கான தகவலுடன் நிரலை தொகுக்க வேண்டும் என்று gcc க்கு சொல்கிறது. -fno-stack-protector இது ஒரு விருப்பமாகும், வெளிப்படையாக நாம் பயன்படுத்தக்கூடாது, ஆனால் நாம் பயன்படுத்தப் போகிறோம், ஏனெனில் இல்லையெனில் அடுக்கில் இடையக வழிதல் உருவாக்க முடியும். முடிவில் நான் முடிவை சோதித்தேன். ./a.out இது நான் தொகுத்ததை இயக்கும், அது என்னிடம் தகவல்களைக் கேட்டு திருப்பித் தருகிறது. இயங்கும்

எச்சரிக்கைகள்

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

நிரலை பிழைதிருத்தம் செய்தல்

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

இப்போது இந்த பகுதி சற்று குழப்பமானதாக இருக்கலாம், ஆனால் நான் ஏற்கனவே போதுமான அளவு எழுதியுள்ளதால், எல்லாவற்றையும் விளக்க என்னால் முடியாது, எனவே நான் மிக வேகமாக செல்கிறேன் என்று நீங்கள் கண்டால் மன்னிக்கவும்

குறியீட்டை நிராயுதபாணியாக்குவது

எங்கள் தொகுக்கப்பட்ட இயந்திர மொழி நிரலைப் பார்த்து ஆரம்பிக்கலாம்.

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

இது எங்கள் முக்கிய செயல்பாட்டின் குறியீடு சட்டமன்ற, இதுதான் எங்கள் செயலி புரிந்துகொள்கிறது, இடதுபுறத்தில் உள்ள கோடு நினைவகத்தில் உள்ள இயற்பியல் முகவரி, தி <+ n> என அழைக்கப்படுகிறது ஆப்செட், அடிப்படையில் செயல்பாட்டின் தொடக்கத்திலிருந்து (பிரதான) அந்த அறிக்கைக்கான தூரம் (என அழைக்கப்படுகிறது ஆப்கோட்). பின்னர் நாம் அறிவுறுத்தல் வகை (மிகுதி / mov / callq…) மற்றும் ஒன்று அல்லது அதற்கு மேற்பட்ட பதிவேடுகளைக் காண்கிறோம். சுருக்கமாக இது மூல / தோற்றம் மற்றும் இலக்கு ஆகியவற்றைத் தொடர்ந்து வரும் அறிகுறி என்று நாம் கூறலாம். <return_input> எங்கள் இரண்டாவது செயல்பாட்டைக் குறிக்கிறது, பார்ப்போம்.

திரும்ப_உள்ளீடு

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

இது இன்னும் கொஞ்சம் சிக்கலானது, ஆனால் நீங்கள் இரண்டு விஷயங்களைச் சரிபார்க்க வேண்டும் என்று நான் விரும்புகிறேன், ஒரு குறிச்சொல் உள்ளது <gets@plt> கடைசியாக ஒரு ஒப்கோட் என்று அழைக்கப்படுகிறது retq செயல்பாட்டின் முடிவைக் குறிக்கிறது. நாங்கள் இரண்டு பிரேக் பாயிண்டுகளை வைக்கப் போகிறோம், ஒன்று செயல்பாட்டில் gets மற்றும் மற்றொரு retq.

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

ரன்

இப்போது நடவடிக்கை எவ்வாறு தொடங்குகிறது என்பதைப் பார்க்க நிரலை இயக்கப் போகிறோம்.

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

நாம் இருக்கும் ஆப்கோடை குறிக்கும் ஒரு சிறிய அம்பு தோன்றுவதை நாம் காணலாம், அவர்கள் திசையை கணக்கில் எடுத்துக்கொள்ள விரும்புகிறேன் 0x000055555555469b, அழைப்புக்குப் பிறகு இது முகவரி return_input செயல்பாட்டில் main , இது முக்கியமானது, ஏனெனில் நீங்கள் அதைப் பெறும்போது நிரல் திரும்ப வேண்டும் உள்ளீடு, செயல்பாட்டில் இறங்குவோம். இப்போது செயல்பாட்டில் நுழைவதற்கு முன்பு நினைவகத்தை சரிபார்க்கப் போகிறோம் gets.

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

முக்கிய செயல்பாட்டை உங்களுக்காக மீண்டும் வைத்திருக்கிறேன், மேலும் நான் குறிப்பிடும் குறியீட்டை நான் முன்னிலைப்படுத்தியுள்ளேன், நீங்கள் பார்க்க முடியும் என, எண்டியன்ஸ் இரண்டு பிரிவுகளாக பிரிக்கப்பட்டுள்ளது, அவை திசையை கணக்கில் எடுத்துக்கொள்ள விரும்புகிறேன் 0x7fffffffdbf0 (கமாண்டோவுக்குப் பிறகு இடதுபுறத்தில் இருந்து முதலாவது x/20x $rsp) பெறுதலின் முடிவுகளை சரிபார்க்க நாம் பயன்படுத்த வேண்டிய இடம் இது என்பதால், தொடரலாம்:

நிரலை உடைத்தல்

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

நான் அவற்றை முன்னிலைப்படுத்தியுள்ளேன் 0x44444444ஏனென்றால் அவை எங்கள் டி.எஸ்ஸின் பிரதிநிதித்துவம்-இப்போது நாம் சேர்க்கத் தொடங்கினோம் உள்ளீடு நிரலுக்கு, மற்றும் நீங்கள் பார்க்க முடியும் என, நாங்கள் விரும்பிய முகவரியிலிருந்து இரண்டு வரிகள் மட்டுமே, முந்தைய படியில் நாம் முன்னிலைப்படுத்திய முகவரிகளுக்கு சற்று முன் இருக்கும் வரை அதை நிரப்பப் போகிறோம்.

திரும்பும் பாதையை மாற்றுதல்

இப்போது நாம் குறியீட்டின் இந்த பகுதியை உள்ளிட முடிந்தது, இது செயல்பாட்டின் வருவாயைக் குறிக்கிறது, முகவரியை மாற்றினால் என்ன ஆகும் என்று பார்ப்போம் a ஒரு கணம் முன்பு இருந்ததைப் பின்தொடரும் ஆப்கோடின் இருப்பிடத்திற்குச் செல்வதற்குப் பதிலாக, நாங்கள் திரும்பிச் சென்றால் நீங்கள் என்ன நினைக்கிறீர்கள் return_input? ஆனால் இதற்காக, பைனரியில் நாம் விரும்பும் முகவரியை எழுதுவது அவசியம், அதை செயல்பாட்டுடன் செய்யப் போகிறோம் printf from bash

சொந்தமானது. கிறிஸ்டோபர் டயஸ் ரிவேரோஸ்

இப்போது நாங்கள் இரண்டு முறை தகவல்களைப் பெற்றுள்ளோம்-நிச்சயமாக அதற்கான நிரல் உருவாக்கப்படவில்லை, ஆனால் நாங்கள் குறியீட்டை உடைத்து அதைச் செய்யக்கூடாத ஒன்றை மீண்டும் செய்ய முடிந்தது.

பிரதிபலிப்புகள்

இந்த எளிய மாற்றத்தை ஒரு என்று கருதலாம் பயன்படுத்தி மிகவும் அடிப்படை 🙂 அவர் திட்டத்தை உடைத்து, அவர் செய்ய விரும்பும் ஒன்றைச் செய்ய முடிந்தது.

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


உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுக்கு பொறுப்பு: மிகுவல் ஏஞ்சல் கேடன்
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.

  1.   2p2 அவர் கூறினார்

    மேலும் நேரடியாக இருங்கள். குறைவாக எழுதுங்கள் மற்றும் முக்கியமான விஷயங்களில் கவனம் செலுத்துங்கள்

    1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

      ஹாய், கருத்துக்கு நன்றி.

      உண்மையைச் சொல்வதற்கு நான் யோசனைகளில் ஒரு நல்ல பகுதியைக் குறைத்துள்ளேன், ஆனால் நிரலாக்க அறிவு இல்லாத ஒருவருக்கு ஒரு யோசனை கிடைக்கும்படி குறைந்தபட்சத்தை விட்டுவிட்டதாக எனக்குத் தோன்றியது.

      மேற்கோளிடு

      1.    அநாமதேய அவர் கூறினார்

        சிக்கல் என்னவென்றால், நிரலாக்க அறிவு இல்லாதவர்கள் எதையும் பற்றி கண்டுபிடிக்க மாட்டார்கள், ஏனெனில் இது தொடங்குவது மிகவும் சிக்கலானது, ஆனால் நிரல் செய்யத் தெரிந்தவர்கள் அதிக நேரடியானவர்களாக இருப்பதைப் பாராட்டுகிறார்கள்.

        நீங்கள் எல்லோரையும் அடைய முடியாது என்று நினைக்கிறேன், நீங்கள் தேர்வு செய்ய வேண்டும், இந்த விஷயத்தில் நீங்கள் நிறைய மறைக்க விரும்புகிறீர்கள்.

        மூலம், ஒரு ஆக்கபூர்வமான விமர்சனமாக நான் உங்களுக்கு சொல்கிறேன், இந்த தலைப்புகளை நான் விரும்புகிறேன், நீங்கள் தொடர்ந்து கட்டுரைகளை எழுத விரும்புகிறேன், வாழ்த்துக்கள்!

    2.    அநாமதேய அவர் கூறினார்

      நானும் அப்படித்தான் நினைக்கிறேன்.

      1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

        இருவருக்கும் மிக்க நன்றி !! இந்த கட்டுரைகளைப் படிக்கும் ஒரு மேம்பட்ட நிலை நிரலாக்கத்தைக் கொண்டவர்களின் எண்ணிக்கை குறைவாக உள்ளது என்பது உண்மை என்றால் இலக்கு பார்வையாளர்களை எவ்வாறு அடைவது என்பதைப் புரிந்துகொள்வது நிச்சயமாக கடினம் (குறைந்தது கருத்துகளின் அடிப்படையில் ஊகிக்க முடியும்)

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

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

        மேற்கோளிடு

  2.   மரியோ அவர் கூறினார்

    இந்த விஷயத்தைப் பற்றி நீங்கள் எங்கு அதிகம் தெரிந்து கொள்ள முடியும்? பரிந்துரைக்கப்பட்ட ஏதாவது புத்தகம்?

    1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

      கிறிஸ் அன்லி, ஜான் ஹீஸ்மேன், பெலிக்ஸ் லிண்டர் மற்றும் ஜெரார்டோ ரிச்சர்ட் ஆகியோரால் தி ஷெல்கோடரின் கையேட்டில் இருந்து எனக்கு கிடைத்த எடுத்துக்காட்டு, ஆனால் 64 பிட் மொழிபெயர்ப்பைச் செய்ய எனது கட்டிடக்கலை பற்றி நான் கற்றுக்கொள்ள வேண்டியிருந்தது, இன்டெல் டெவலப்பர் கையேடு, தொகுதிகள் 2 மற்றும் 3 ஒரு அதற்கான அழகான நம்பகமான ஆதாரம். 'தகவல் ஜி.டி.பி' கட்டளையுடன் வரும் ஜி.டி.பி ஆவணங்களை வாசிப்பதும் நல்லது, சட்டசபை மற்றும் சி கற்க பல நல்ல புத்தகங்கள் உள்ளன, தவிர சட்டமன்ற புத்தகங்கள் கொஞ்சம் பழையவை, எனவே மற்றொன்றை நிரப்ப ஒரு இடைவெளி உள்ளது ஆவணங்களை தட்டச்சு செய்க.

      பல்வேறு காரணங்களுக்காக இந்த நாட்களில் ஷெல்கோட் இனி பயனுள்ளதாக இருக்காது, ஆனால் புதிய நுட்பங்களைக் கற்றுக்கொள்வது இன்னும் சுவாரஸ்யமானது.

      இது கொஞ்சம் உதவும் என்று நம்புகிறேன் 🙂 வாழ்த்துக்கள்

  3.   பிரான்ஸ் அவர் கூறினார்

    Buen artículo, el viejo blog desdelinux ha vuelto a renacer =)
    ரிமோட் ஷெல் அவ்வளவு பயனுள்ளதல்ல என்று நீங்கள் கூறும்போது, ​​தாக்குதல்களைத் தணிக்க வடிவமைக்கப்பட்ட எதிர் நடவடிக்கைகளை நீங்கள் குறிக்கிறீர்கள், அவை தாக்குதல் பாதுகாப்பு என்று அழைக்கின்றன.
    வாழ்த்துக்கள் மற்றும் அதை வைத்திருங்கள்

    1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

      மிக்க நன்றி ஃபிரான்ஸ் 🙂 மிகவும் கனிவான வார்த்தைகள், உண்மையில் நான் இங்கு ஷெல்கோடிங் செய்வது இங்கே நாம் பார்ப்பதை விட மிகவும் சிக்கலானது என்று பொருள். எங்களிடம் ASLR (சீரற்ற நினைவக இருப்பிட ஜெனரேட்டர்) ஸ்டேக் பாதுகாப்பான், ஒரு நிரலில் செலுத்தப்படக்கூடிய ஒப்கோட்களின் எண்ணிக்கையை கட்டுப்படுத்தும் பல்வேறு நடவடிக்கைகள் மற்றும் எதிர் நடவடிக்கைகள் உள்ளன, இது ஒரு ஆரம்பம்.

      அன்புடன்,

  4.   இலவச மென்பொருள் அவர் கூறினார்

    வணக்கம், தலைப்பை விரிவுபடுத்துவதற்கான மற்றொரு பகுதியை நீங்கள் செய்வீர்களா? இது சுவாரஸ்யமாக இருக்கிறது

    1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

      வணக்கம், தலைப்பு நிச்சயமாக மிகவும் சுவாரஸ்யமானது, ஆனால் நாம் எடுக்கும் சிக்கலான நிலை மிக உயர்ந்ததாகிவிடும், மற்றொன்றைப் புரிந்துகொள்வதற்கான பல்வேறு முன்நிபந்தனைகளை விளக்க ஏராளமான இடுகைகளை உள்ளடக்கியது. நான் இதைப் பற்றி எழுதுவேன், ஆனால் அது பின்வரும் இடுகைகளாக இருக்காது, இதைத் தொடர்வதற்கு முன்பு சில தலைப்புகளை எழுத விரும்புகிறேன்.

      வாழ்த்துக்கள், பகிர்வுக்கு நன்றி

  5.   கற்றாழை அவர் கூறினார்

    மிகவும் நல்ல சே! நீங்கள் சிறந்த இடுகைகளை வழங்குகிறீர்கள்! ஒரு கேள்வி, "பேனா சோதனை மூலம் பாதுகாப்பை உறுதிப்படுத்துதல்" என்ற புத்தகத்தைப் படிப்பதன் மூலம் இந்த ஐடி பாதுகாப்பு விஷயத்தைத் தொடங்குகிறேன். இந்த புத்தகம் பரிந்துரைக்கப்படுகிறதா? இந்த சிக்கல்களைப் பற்றி நான் விசாரிக்கத் தொடங்க நீங்கள் எவ்வாறு பரிந்துரைக்கிறீர்கள்?

    1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

      வணக்கம் கற்றாழை, இது பாதிப்புகள் பற்றிய முழு பிரபஞ்சம், மற்றும் பிறர், உண்மையைச் சொல்வது உங்கள் கவனத்தை ஈர்ப்பதைப் பொறுத்தது, மேலும் உங்களிடம் உள்ள தேவைகள், ஒரு தகவல் தொழில்நுட்ப மேலாளர் பேனா-சோதனையாளரைப் போலவே தெரிந்து கொள்ள தேவையில்லை, அல்லது ஒரு பாதிப்பு புலனாய்வாளர் அல்லது தடயவியல் ஆய்வாளர், ஒரு பேரழிவு மீட்புக் குழு மிகவும் மாறுபட்ட திறன்களைக் கொண்டுள்ளது. வெளிப்படையாக அவை ஒவ்வொன்றிற்கும் வெவ்வேறு அளவிலான தொழில்நுட்ப அறிவு தேவைப்படுகிறது, நீங்கள் விரும்பியதை சரியாகக் கண்டுபிடிப்பதைத் தொடங்கவும், புத்தகங்கள், கட்டுரைகள் மற்றும் பிறவற்றைச் சாப்பிடத் தொடங்கவும் பரிந்துரைக்கிறேன், மிக முக்கியமாக, நீங்கள் படித்த அனைத்தையும் காலாவதியாகிவிட்டாலும் கூட, அது இறுதியில் ஒரு வித்தியாசத்தை ஏற்படுத்தும்.
      அன்புடன்,

  6.   ஈட்சன் அவர் கூறினார்

    ஹலோ.
    இந்த தலைப்பை விளக்கியமைக்கும், கூடுதல் தகவல்களுக்கு எங்களிடம் "தி ஷெல்கோடரின் கையேடு" உள்ளது என்று கருத்து தெரிவித்தமைக்கும் மிக்க நன்றி. எனக்கு ஏற்கனவே நிலுவையில் உள்ள வாசிப்பு உள்ளது