ගතික පූරකය
ගැටලුවේ සාරය: ක්රියාත්මක වන විට, 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 උපයෝගිතා ධාවනය කිරීමේදී පුස්තකාල ආදේශනය හරහා root ලෙස කේතය ක්රියාත්මක කිරීමට වරප්රසාද ලත් දේශීය පරිශීලකයෙකුට ඉඩ ලබා දේ. ක්රියාකාරීත්වය සඳහා අවශ්ය අඩු මතක තත්ව නිර්මාණය කිරීමට, setrlimit හරහා RLIMIT_DATA සීමාව සකසන්න.
මූලාශ්රය: opennet.ru