டைனமிக் ஏற்றி
சிக்கலின் சாராம்சம்: செயல்பாட்டின் போது, ld.so முதலில் சுற்றுச்சூழலில் இருந்து LD_LIBRARY_PATH மாறியின் மதிப்பைப் பிரித்தெடுக்கிறது மற்றும் _dl_split_path() செயல்பாட்டைப் பயன்படுத்தி, அதை சரங்களின் வரிசையாக மாற்றுகிறது - கோப்பகங்களுக்கான பாதைகள். தற்போதைய செயல்முறை SUID/SGID பயன்பாட்டால் தொடங்கப்பட்டதாக பின்னர் தெரியவந்தால், உருவாக்கப்பட்ட அணிவரிசை மற்றும் உண்மையில், LD_LIBRARY_PATH மாறி அழிக்கப்படும். அதே நேரத்தில், _dl_split_path() நினைவகம் தீர்ந்துவிட்டால் (சுற்றுச்சூழல் மாறிகளின் அளவின் வெளிப்படையான 256 kB வரம்பு காரணமாக இது கடினமாக உள்ளது, ஆனால் இது கோட்பாட்டளவில் சாத்தியமாகும்), பின்னர் _dl_libpath மாறியானது NULL மதிப்பைப் பெறும், மேலும் அதைத் தொடர்ந்து சரிபார்க்கும் இந்த மாறியின் மதிப்பு _dl_unsetenv("LD_LIBRARY_PATH") க்கு அழைப்பைத் தவிர்க்கும்.
நிபுணர்களால் கண்டறியப்பட்ட பாதிப்பு
கூடுதலாக: சிக்கலுக்கு ஒரு எண் ஒதுக்கப்பட்டுள்ளது
amd64 மற்றும் i386 (சுரண்டல் மற்ற கட்டமைப்புகளுக்கு மாற்றியமைக்கப்படலாம்).
இயல்புநிலை நிறுவலில் சிக்கலைப் பயன்படுத்திக் கொள்ளக்கூடியது மற்றும் chpass அல்லது passwd suid பயன்பாடுகளை இயக்கும் போது, நூலக மாற்று வழியாக ரூட்டாக குறியீட்டை இயக்க, சலுகை இல்லாத உள்ளூர் பயனரை அனுமதிக்கிறது. செயல்பாட்டிற்கு தேவையான குறைந்த நினைவக நிலைமைகளை உருவாக்க, RLIMIT_DATA வரம்பை setrlimit மூலம் அமைக்கவும்.
ஆதாரம்: opennet.ru