ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΡΡΡΠΈΠΉ Π²ΡΠΏΡΡΠΊ Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠΉ (), ΠΊΠΎΡΠΎΡΠ°Ρ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ° Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ root. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ TLS ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠΈΡΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² SNI. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Qualys.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠ΅ΡΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΡΡΠΎΠΊΠ΅ ( ΠΈΠ· string.c) ΠΈ Π²ΡΠ·Π²Π°Π½Π° ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ» β\β Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ Π½ΡΠ»Π΅Π²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ (β\0β) ΠΈ ΡΠΊΡΠ°Π½ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ. ΠΡΠΈ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ β\β ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π΄Π°Π»Π΅Π΅ Π½ΡΠ»Π΅Π²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠ½ΡΠ° ΡΡΡΠΎΠΊΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΠ΄Π²ΠΈΠ³Π°Π΅ΡΡΡ Π½Π° Π΄Π°Π½Π½ΡΠ΅ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅.
ΠΠΎΠ΄, Π²ΡΠ·ΡΠ²Π°ΡΡΠΈΠΉ string_interpret_escape(), Π²ΡΠ΄Π΅Π»ΡΠ΅Ρ Π±ΡΡΠ΅Ρ ΠΏΠΎΠ΄ ΡΡΠΎΠΊΡ, ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΡΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ, ΠΈ Π²ΡΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²Π½Π΅ Π³ΡΠ°Π½ΠΈΡ Π±ΡΡΠ΅ΡΠ°. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΈΡΡΠ°ΡΠΈΡ ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠΈ Π²Π½Π΅ Π³ΡΠ°Π½ΠΈΡ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π±ΡΡΠ΅ΡΠ°, Π° ΠΏΠΎΠΏΡΡΠΊΠ° Π·Π°ΠΏΠΈΡΠΈ ΡΠ°Π·ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π·Π°ΠΏΠΈΡΠΈ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ Π±ΡΡΠ΅ΡΠ°.
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠΈΡΠΎΠ²Π°Π½Π° ΡΠ΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ Π² SNI ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΡΠ°ΠΏΠ»ΡΠ°ΡΠΈΡΠΎΠ²Π°Π½Π° ΡΠ΅ΡΠ΅Π· ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ peerdn Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡ , Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΡ Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ². ΠΡΠ°ΠΊΠ° ΡΠ΅ΡΠ΅Π· SNI ΠΈ peerdn Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²ΡΠΏΡΡΠΊΠ° , Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΡ string_unprinting() Π±ΡΠ»Π° ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Π° Π΄Π»Ρ ΡΠ°Π·ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ peerdn ΠΈ SNI.
ΠΠ»Ρ Π°ΡΠ°ΠΊΠΈ ΡΠ΅ΡΠ΅Π· SNI ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ ΠΏΡΠΎΡΠΎΡΠΈΠΏ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠ°, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ i386 ΠΈ amd64 Π² Linux-ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ Glibc. Π ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π½Π° ΠΎΠ±Π»Π°ΡΡΡ ΠΊΡΡΠΈ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΠ΅Π΅ ΠΊ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΡΠ°Π½ΠΈΡΡΡ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Π»ΠΎΠ³Π°. ΠΠΌΡ ΡΠ°ΠΉΠ»Π° Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° Β«/../../../../../../../../etc/passwdΒ». ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ ΠΎΡΠΏΡΠ°Π²ΠΈΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² Π»ΠΎΠ³, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π²ΡΠΏΡΡΠ΅Π½ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°ΠΌΠΈ , , , ΠΈ . RHEL ΠΈ CentOS ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ , ΡΠ°ΠΊ ΠΊΠ°ΠΊ Exim Π½Π΅ Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΠΈΡ ΡΡΠ°ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (Π² ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ , Π½ΠΎ ΠΏΠΎΠΊΠ° Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ). Π ΠΊΠΎΠ΄Π΅ Exim ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΡΡΡΠΎΡΠ½ΡΠΌ , ΠΎΡΠΊΠ»ΡΡΠ°ΡΡΠ΅ΠΌ ΡΠΊΡΠ°Π½ΠΈΡΡΡΡΠ΅Π΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ TLS ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²
ΡΠ΅ΠΊΡΠΈΡ ACL Β«acl_smtp_mailΒ»:
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
