ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅Π½ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ , ΡΠ°ΡΡ ΠΎΡ OpenBSD, ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° -ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡΡΠ°Π²ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° LD_LIBRARY_PATH ΠΈ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π½Π΅ΡΠ²ΠΎΠΉΡΡΠ²Π΅Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅Ρ, ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Π½ Ρ ΠΏΠΎΠ²ΠΈΡΠ΅Π½ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ. ΠΠ°ΡΡΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π·Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅ ΠΈ . ΠΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΠΏΠ°ΡΡΠΎΠ²Π΅ () Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈΡΠ΅ amd64, i386 ΠΈ arm64 Π²Π΅ΡΠ΅ ΡΠ° ΠΏΡΡΠ½Π°ΡΠΈ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π·Π° ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ Π½ΠΎΠ²ΠΈΠ½Π°.
Π‘ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ° ld.so ΠΏΡΡΠ²ΠΎ ΠΈΠ·Π²Π»ΠΈΡΠ° ΠΎΡ ΡΡΠ΅Π΄Π°ΡΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° LD_LIBRARY_PATH, Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° _dl_split_path() Ρ ΠΏΡΠ΅Π²ΡΡΡΠ° Π² ΠΌΠ°ΡΠΈΠ² ΠΎΡ Π½ΠΈΠ·ΠΎΠ²Π΅ β ΠΏΡΡΠΈΡΠ° ΠΊΡΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ. ΠΠΊΠΎ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈ, ΡΠ΅ ΡΠ΅ΠΊΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅Ρ Π΅ ΡΡΠ°ΡΡΠΈΡΠ°Π½ ΠΎΡ SUID/SGID-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎ ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈΡΡ ΠΌΠ°ΡΠΈΠ² ΠΈ ΡΠ°ΠΌΠ°ΡΠ° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° LD_LIBRARY_PATH ΡΠ΅ ΠΏΠΎΡΠΈΡΡΠ²Π°Ρ. ΠΡΠΈ ΡΠΎΠ²Π°, Π°ΠΊΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ° _dl_split_path() ΡΠ΅ Π½Π°ΡΡΠΊΠ½Π΅ Π½Π° Π½Π΅Π΄ΠΎΡΡΠΈΠ³ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ (ΠΊΠΎΠ΅ΡΠΎ Π΅ ΡΡΡΠ΄Π½ΠΎ Π·Π°ΡΠ°Π΄ΠΈ ΡΠ²Π½ΠΎΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡΠ΅ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° Π΄ΠΎ 256 ΠΊΠ, Π½ΠΎ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ½ΠΎ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ), ΡΠΎ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° _dl_libpath ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΡΡΠΎΠΉΠ½ΠΎΡΡ NULL, Π° ΠΏΠΎΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° ΡΠ°Π·ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° ΡΠ΅ Π½Π°ΠΊΠ°ΡΠ° Π΄Π° ΡΠ΅ ΠΏΡΠΎΠΏΡΡΠ½Π΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° _dl_unsetenv("LD_LIBRARY_PATH").
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° Π΅ ΠΎΡΠΊΡΠΈΡΠ° ΠΎΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΈ , ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. ΠΡΠΊΡΠΈΠ²Π°ΡΠΈΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΠΈΠ·ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΏΠΎ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΠΎΡΠ±Π΅Π»ΡΠ·Π°Ρ Π° Π±ΡΡΠ·ΠΎΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΏΠ°ΡΡΡΡ Π΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ ΡΠ° ΠΈΠ·Π΄Π°Π΄Π΅Π½ΠΈ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΡΡΠΈ ΡΠ°ΡΠ° ΡΠ»Π΅Π΄ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ΡΠΎ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° OpenBSD.
ΠΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅: ΠΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π΅ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ Π½ΠΎΠΌΠ΅Ρ . Π ΡΠΏΠΈΡΡΠΊΠ° Π·Π° ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ oss-security Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ , Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΏΡΠΎΡΠΎΡΠΈΠΏ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠΈΡ, ΡΠ°Π±ΠΎΡΠ΅Ρ Π² OpenBSD 6.6, 6.5, 6.2 ΠΈ 6.1 Π½Π° Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠΈΡΠ΅
amd64 ΠΈ i386 (Π΅ΠΊΡΠΏΠ»ΠΎΠΈΡΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½ ΠΈ Π·Π° Π΄ΡΡΠ³ΠΈ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠΈ).
ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ° Π² ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»ΠΈΠ³ΠΈΡΠΎΠ²Π°Π½ Π»ΠΎΠΊΠ°Π»Π΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΠΊΠΎΠ΄ Ρ ΠΏΡΠ°Π²Π°ΡΠ° Π½Π° root ΡΡΠ΅Π· ΠΏΠΎΠ΄ΠΌΡΠ½Π° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΏΡΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° suid-ΡΡΠΈΠ»ΠΈΡΠΈΡΠ΅ chpass ΠΈΠ»ΠΈ passwd. ΠΠ° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π·Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ RLIMIT_DATA ΡΡΠ΅Π· setrlimit.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
