Barkerê dînamîk
Esasê pirsgirêkê: di dema xebitandinê de, ld.so pêşî nirxa guhêrbara LD_LIBRARY_PATH ji hawîrdorê derdixe û, bi karanîna fonksiyona _dl_split_path() ve, wê vediguherîne rêzek rêzikan - rêyên berbi pelrêçan. Ger paşê derkeve holê ku pêvajoya heyî ji hêla serîlêdana SUID/SGID ve hatî destpêkirin, wê hingê rêzika hatî afirandin û, bi rastî, guhêrbar LD_LIBRARY_PATH têne paqij kirin. Di heman demê de, heke _dl_split_path() ji bîrê derkeve (ku ji ber sînorê eşkere 256 kB li ser mezinahiya guhêrbarên jîngehê dijwar e, lê ji hêla teorîkî ve gengaz e), wê hingê guhêrbar _dl_libpath dê nirxa NULL bistîne, û dûv re kontrolên nirxa vê guhêrbar dê zorê bide banga _dl_unsetenv("LD_LIBRARY_PATH").
Zelalbûn ji hêla pisporan ve hatî dîtin
Zêdebûn: Ji pirsgirêkê re jimarek hate destnîşankirin
amd64 û i386 (xebitandin dikare ji bo mîmariyên din were adapte kirin).
Pirsgirêk di sazkirina xwerû de tê bikar anîn û dihêle bikarhênerek herêmî ya bêdestûr dema ku karûbarên chpass an passwd suid dimeşîne kodê wekî root bi navgîniya veguheztina pirtûkxaneyê bi cih bîne. Ji bo afirandina şert û mercên kêm-bîra ku ji bo xebatê hewce ne, sînorê RLIMIT_DATA bi navgîniya setrlimit veqetînin.
Source: opennet.ru