Re: [Exim-users] mime_decoded_filename

2017-01-16 Пенетрантность Victor Cheburkin
Hi!

> 16 янв. 2017 г., в 22:24, Vasiliy P. Melnik  написал(а):
> 
> Спасибо
> 
> Подскажите, если не затруднит - как не отправлять в сообщении об ошибке еще и 
> исходное сообщение? Просто получается я отправляю вирус отправителю, а если 
> разослали спам с чужим полем фром, то получается мой сервер будет рассылать 
> вирусы.
> В данном случае будет достаточно простого сообщения, что письмо не доставлено 
> юзеру.
> 
> Что-то ума не приложу, что искать надо

bounce_return_body = false
можно по-другому, более информативно: bounce_return_size_limit = 4k -- вирус в 
4к не влезет, но заголовки исходного сообщения и часть (или целое, если 
короткое) сообщения -- будут.

> 2016-12-21 20:13 GMT+02:00 >:
> Этот (возможно новый) вариант трояна ловится изменением в
> одной строчке первого абзаца (а не второго где decode),
> после изменения:
> {match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
> Решение полностью:
> 
> P7ZIP = /usr/local/bin/7z
> # port archivers/p7zip in case of FreeBSD
> BINFORBIDDEN = Windows-executable attachments forbidden
> WINBIN = exe|com|js|pif|scr|bat|jse|cpl|vbe|vbs|ace
> # more cautious: 
> exe|com|js|pif|scr|bat|flv|reg|btm|chm|cmd|cpl|dat|dll|hta|jse|jsp|lnk|msi|prf|sys|vb|vbe|vbs|ace
> # WinRAR can uncompress .ace, so trojans are sometimes compressed .ace
> COMPREXT = zip|rar|7z|arj|bz2|gz|uue|xz|z
> check_rfc2047_length = false
> acl_smtp_mime = acl_check_mime
> begin acl
> acl_check_mime:
>   deny message = BINFORBIDDEN
>log_message = forbidden attachment: filename=$mime_filename, \
>  content-type=$mime_content_type, recipients=$recipients
>condition = ${if or{\
> {match{$mime_content_type}\
>   {(?i)executable|application/x-ace-compressed}}\
> {match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
>   }}
> 
>   deny message = Compressed BINFORBIDDEN
>condition = ${if or{\
>{match{$mime_content_type}{(?i)application/\
>  (octet-stream|x(-zip)?-compressed|zip)}}\
>{match{$mime_filename}{\N(?i)\.(COMPREXT)$\N}}\
>   }}
>condition = ${if <{$message_size}{1500K}}
>decode = default
>log_message = forbidden binary in attachment: filename=$mime_filename, 
> \
>  recipients=$recipients
>condition = ${if match{${run{P7ZIP l -y $mime_decoded_filename}}}\
>  {\N(?i)\n[12].+\.(COMPREXT|WINBIN)\n\N}}
> 
>   accept
> 
> 
> ___
> Exim-users mailing list
> Exim-users@mailground.net 
> http://mailground.net/mailman/listinfo/exim-users 
> 
> 
> 
> ___
> Exim-users mailing list
> Exim-users@mailground.net
> http://mailground.net/mailman/listinfo/exim-users
> 

-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2017-01-16 Пенетрантность Lena
> Подскажите, если не затруднит - как не отправлять в сообщении об ошибке еще
> и исходное сообщение? Просто получается я отправляю вирус отправителю, а
> если разослали спам с чужим полем фром, то получается мой сервер будет
> рассылать вирусы.

Не будет. "deny" в acl_smtp_mime приводит к ответу 5xx после передачи
заголовка и тела письма, до окончания приема письма. Ваш Exim не отправляет
новое письмо с сообщением об ошибке, он отказывается принять письмо с
приложенным подозрительным на вирус файлом.
Если письмо отправлял человек, то сервер отправителя сформирует письмо
с сообщением об ошибке.

Поправка: вот здесь лучше звездочка вместо последнего вопросительного знака:

{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\


___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-22 Пенетрантность Dmitry Gribanov
очень большое спасибо, только вчера занимался с тем же самым, плюс еще 
нашел ваши старые записи об оповещении по мылу о таких письмах 

P7ZIP = /usr/local/bin/7z 
WINBIN=ace|ade|adp|bas|bat|btm|chm|cmd|com|cpl|dat|dll|exe|flv|gadget|gz|hta|ins|iso|isp|jar|js|jse|jsp|lib|lnk|mde|msc|msp|mst|msi|ocx|pif|prf|reg|scr|sct|shb|sys|tar|uue|vb|vbe|vxd|vbs|wsc|wsf|wsh|xz|z
 

COMPREXT=7z|ace|arj|bz2|gz|iso|rar|tar|uue|xz|z|zip 
check_rfc2047_length = false 
hostlist host_pass_file=192.168.0.252 

deny message = "expansion of the attached file [ $mime_filename ] is not 
allowed to send!). Please tell me" 
   log_message = forbidden attachment: filename=$mime_filename, \ 
 content-type=$mime_content_type, 
recipients=$recipients 
!hosts=+host_pass_file 
   condition = ${if or{\ 
{match{$mime_content_type}\ 
  {(?i)executable|application/x-ace-compressed}}\ 
{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\ 
  }} 
continue = ${if eq{${run{/bin/sh -c "\N{\N \ 
echo Subject: \ 
'MailScan: Mail delivery failed';\ 
echo 'Content-Type: text/plain; charset=koi8-r';\ 
echo Content-Transfer-Encoding: 8bit;\ 
echo;\ 
echo '${sg{\ 
Письмо от $sender_address для $recipients\n\ 
с темой \n\ 
$h_subject \n\ 
sender_host_address=$sender_host_address \n\ 
размером ${eval:$message_size/1024} килобайт\n\ 
не доставлено, потому что имеет запрещенное вложение\n\ 
filename >> $mime_filename <<\ 
}{'}{}}';\ 
 \N}\N \ 
|/usr/local/sbin/exim -f mailnull r...@domain.ruru 
${sg{${filter{<,r...@domain.ruru}{!match{$item}{\N(^-|[^\w.=+%!@-])\N{,}{ 
}};\ 
"}}}{}{1}{1}} 

deny message = "A attachment contains a Windows-executable file - letter 
mail is stopped." 
   condition = ${if or{\ 
{match{$mime_content_type}{(?i)application/\ 
(octet-stream|x(-zip)?-compressed|zip)}}\ 
{match{$mime_filename}{\N(?i)\.(COMPREXT)$\N}}\ 
  }} 
#   condition = ${if <{$message_size}{1500K}} 
!hosts=+host_pass_file 
   decode = default 
   log_message = forbidden binary in attachment: 
filename=$mime_filename, \ 
 recipients=$recipients 
   condition = ${if match{${run{P7ZIP l -y $mime_decoded_filename}}}\ 
{\N(?i)\n[12].+\.(COMPREXT|WINBIN)\n\N}} 
continue = ${if eq{${run{/bin/sh -c "\N{\N \ 
echo Subject: \ 
'MailScan: Mail delivery failed';\ 
echo 'Content-Type: text/plain; charset=koi8-r';\ 
echo Content-Transfer-Encoding: 8bit;\ 
echo;\ 
echo '${sg{Письмо от $sender_address для $recipients\n\ 
с темой \n\ 
$h_subject \n\ 
sender_host_address=$sender_host_address \n\ 
размером ${eval:$message_size/1024} килобайт\n\ 
не доставлено, потому что имеет запрещенное вложение в архиве\n\ 
filename >> $mime_filename <<\ 
}{'}{}}'; \N}\N\ 
|/usr/local/sbin/exim -f mailnull r...@domain.ruru 
${sg{${filter{<,r...@domain.ruru}{!match{$item}{\N(^-|[^\w.=+%!@-])\N{,}{ 
}};\ 
/usr/local/bin/7z l $mime_decoded_filename | /usr/bin/mail -s 
'MailScan: Attachment for $recipients' root \ 
"}}}{}{1}{1}} 
accept 
___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-22 Пенетрантность gribanov dmitry
очень большое спасибо, только вчера занимался с тем же самым, плюс еще 
нашел ваши старые записи об оповещении по мылу о таких письмах


P7ZIP = /usr/local/bin/7z
WINBIN=ace|ade|adp|bas|bat|btm|chm|cmd|com|cpl|dat|dll|exe|flv|gadget|gz|hta|ins|iso|isp|jar|js|jse|jsp|lib|lnk|mde|msc|msp|mst|msi|ocx|pif|prf|reg|scr|sct|shb|sys|tar|uue|vb|vbe|vxd|vbs|wsc|wsf|wsh|xz|z
COMPREXT=7z|ace|arj|bz2|gz|iso|rar|tar|uue|xz|z|zip
check_rfc2047_length = false
hostlist host_pass_file=192.168.0.252

deny message = "expansion of the attached file [ $mime_filename ] is not 
allowed to send!). Please tell me"

   log_message = forbidden attachment: filename=$mime_filename, \
 content-type=$mime_content_type, 
recipients=$recipients

!hosts=+host_pass_file
   condition = ${if or{\
{match{$mime_content_type}\
  {(?i)executable|application/x-ace-compressed}}\
{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
  }}
continue = ${if eq{${run{/bin/sh -c "\N{\N \
echo Subject: \
'MailScan: Mail delivery failed';\
echo 'Content-Type: text/plain; charset=koi8-r';\
echo Content-Transfer-Encoding: 8bit;\
echo;\
echo '${sg{\
Письмо от $sender_address для $recipients\n\
с темой \n\
$h_subject \n\
sender_host_address=$sender_host_address \n\
размером ${eval:$message_size/1024} килобайт\n\
не доставлено, потому что имеет запрещенное вложение\n\
filename >> $mime_filename <<\
}{'}{}}';\
 \N}\N \
|/usr/local/sbin/exim -f mailnull r...@arhshick.ru 
${sg{${filter{<,r...@arhshick.ru}{!match{$item}{\N(^-|[^\w.=+%!@-])\N{,}{ 
}};\

"}}}{}{1}{1}}

deny message = "A attachment contains a Windows-executable file - letter 
mail is stopped."

   condition = ${if or{\
{match{$mime_content_type}{(?i)application/\
(octet-stream|x(-zip)?-compressed|zip)}}\
{match{$mime_filename}{\N(?i)\.(COMPREXT)$\N}}\
  }}
#   condition = ${if <{$message_size}{1500K}}
!hosts=+host_pass_file
   decode = default
   log_message = forbidden binary in attachment: 
filename=$mime_filename, \

 recipients=$recipients
   condition = ${if match{${run{P7ZIP l -y $mime_decoded_filename}}}\
{\N(?i)\n[12].+\.(COMPREXT|WINBIN)\n\N}}
continue = ${if eq{${run{/bin/sh -c "\N{\N \
echo Subject: \
'MailScan: Mail delivery failed';\
echo 'Content-Type: text/plain; charset=koi8-r';\
echo Content-Transfer-Encoding: 8bit;\
echo;\
echo '${sg{Письмо от $sender_address для $recipients\n\
с темой \n\
$h_subject \n\
sender_host_address=$sender_host_address \n\
размером ${eval:$message_size/1024} килобайт\n\
не доставлено, потому что имеет запрещенное вложение в архиве\n\
filename >> $mime_filename <<\
}{'}{}}'; \N}\N\
|/usr/local/sbin/exim -f mailnull r...@arhshick.ru 
${sg{${filter{<,r...@arhshick.ru}{!match{$item}{\N(^-|[^\w.=+%!@-])\N{,}{ 
}};\
/usr/local/bin/7z l $mime_decoded_filename | /usr/bin/mail -s 
'MailScan: Attachment for $recipients' root \

"}}}{}{1}{1}}
accept


21.12.2016 21:13, l...@lena.kiev.ua пишет:

Этот (возможно новый) вариант трояна ловится изменением в
одной строчке первого абзаца (а не второго где decode),
после изменения:
{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
Решение полностью:

P7ZIP = /usr/local/bin/7z
# port archivers/p7zip in case of FreeBSD
BINFORBIDDEN = Windows-executable attachments forbidden
WINBIN = exe|com|js|pif|scr|bat|jse|cpl|vbe|vbs|ace
# more cautious: 
exe|com|js|pif|scr|bat|flv|reg|btm|chm|cmd|cpl|dat|dll|hta|jse|jsp|lnk|msi|prf|sys|vb|vbe|vbs|ace
# WinRAR can uncompress .ace, so trojans are sometimes compressed .ace
COMPREXT = zip|rar|7z|arj|bz2|gz|uue|xz|z
check_rfc2047_length = false
acl_smtp_mime = acl_check_mime
begin acl
acl_check_mime:
   deny message = BINFORBIDDEN
log_message = forbidden attachment: filename=$mime_filename, \
  content-type=$mime_content_type, recipients=$recipients
condition = ${if or{\
{match{$mime_content_type}\
  {(?i)executable|application/x-ace-compressed}}\
{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
   }}

   deny message = Compressed BINFORBIDDEN
condition = ${if or{\
{match{$mime_content_type}{(?i)application/\
  (octet-stream|x(-zip)?-compressed|zip)}}\
{match{$mime_filename}{\N(?i)\.(COMPREXT)$\N}}\
   }}
condition = ${if <{$message_size}{1500K}}
decode = default
log_message = forbidden binary in attachment: filename=$mime_filename, \
  

Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Lena
Этот (возможно новый) вариант трояна ловится изменением в
одной строчке первого абзаца (а не второго где decode),
после изменения:
{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
Решение полностью:

P7ZIP = /usr/local/bin/7z
# port archivers/p7zip in case of FreeBSD
BINFORBIDDEN = Windows-executable attachments forbidden
WINBIN = exe|com|js|pif|scr|bat|jse|cpl|vbe|vbs|ace
# more cautious: 
exe|com|js|pif|scr|bat|flv|reg|btm|chm|cmd|cpl|dat|dll|hta|jse|jsp|lnk|msi|prf|sys|vb|vbe|vbs|ace
# WinRAR can uncompress .ace, so trojans are sometimes compressed .ace
COMPREXT = zip|rar|7z|arj|bz2|gz|uue|xz|z
check_rfc2047_length = false
acl_smtp_mime = acl_check_mime
begin acl
acl_check_mime:
  deny message = BINFORBIDDEN
   log_message = forbidden attachment: filename=$mime_filename, \
 content-type=$mime_content_type, recipients=$recipients
   condition = ${if or{\
{match{$mime_content_type}\
  {(?i)executable|application/x-ace-compressed}}\
{match{$mime_filename}{\N(?i)\.(WINBIN)(\.(COMPREXT))?$\N}}\
  }}

  deny message = Compressed BINFORBIDDEN
   condition = ${if or{\
   {match{$mime_content_type}{(?i)application/\
 (octet-stream|x(-zip)?-compressed|zip)}}\
   {match{$mime_filename}{\N(?i)\.(COMPREXT)$\N}}\
  }}
   condition = ${if <{$message_size}{1500K}}
   decode = default
   log_message = forbidden binary in attachment: filename=$mime_filename, \
 recipients=$recipients
   condition = ${if match{${run{P7ZIP l -y $mime_decoded_filename}}}\
 {\N(?i)\n[12].+\.(COMPREXT|WINBIN)\n\N}}

  accept


___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Mikhail Golub

21.12.2016 17:42, l...@lena.kiev.ua пишет:

From: Mikhail Golub



# 7z l Новый.scr.uue



Path = Новый.scr.uue
Type = bzip2

   Date  TimeAttr Size   Compressed  Name
--- -  

.Новый.scr



Но если этот же файл проверить как
/var/spool/exim/scan/1cJhIo-000D1o-SQ-2/1cJhIo-000D1o-SQ-2 -
здесь проблема.

# 7z l 1cJhIo-000D1o-SQ-2



Path = 1cJhIo-000D1o-SQ-2
Type = bzip2

   Date  TimeAttr Size   Compressed  Name
--- -  

.
1cJhIo-000D1o-SQ-2~


"uue" - враньё вируса, на самом деле файл упакован не uue, а bzip2.
Внутри файла bzip2 нет имени исходного файла.
Увидеть ".scr" можно только в $mime_filename .


Получается, что таким образом просматривая архивы, этот вирус не отсеять.
Если файлу из спула сделать расширение "scr.uue", то все 7z там видит. И 
не имя файла с кириллицей или нет.



Интересно, что в $mime_filename -
=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==
или
Новый.scr.uue


mime_filename: Новый.scr.uue
mime_decoded_filename: 
/var/spool/exim/scan/1cJhhK-000DmE-A2/1cJhhK-000DmE-A2-2



В начале конфига Exim нужно
check_rfc2047_length = false


Это есть.


--
Mikhail Golub

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Victor Cheburkin
Hi!

> 21 дек. 2016 г., в 17:42, l...@lena.kiev.ua написал(а):
> 
>> From: Mikhail Golub
> 
>> # 7z l Новый.scr.uue
> 
>> Path = Новый.scr.uue
>> Type = bzip2
>> 
>>   Date  TimeAttr Size   Compressed  Name
>> --- -   
>> 
>>.Новый.scr
> 
>> Но если этот же файл проверить как 
>> /var/spool/exim/scan/1cJhIo-000D1o-SQ-2/1cJhIo-000D1o-SQ-2 - 
>> здесь проблема.
>> 
>> # 7z l 1cJhIo-000D1o-SQ-2
> 
>> Path = 1cJhIo-000D1o-SQ-2
>> Type = bzip2
>> 
>>   Date  TimeAttr Size   Compressed  Name
>> --- -   
>> 
>>. 
>> 1cJhIo-000D1o-SQ-2~
> 
> "uue" - враньё вируса, на самом деле файл упакован не uue, а bzip2.
> Внутри файла bzip2 нет имени исходного файла.

видимо, в этом конкретном случае таки нет, хотя оно там бывает ;-)
видимо, исходя из этого, стоит сразу смотреть и на второе расширение.
в случае uue, наверное, уже стоит сразу его реджектить или дропать.

> Увидеть ".scr" можно только в $mime_filename .
> Интересно, что в $mime_filename -
> =?windows-1251?B?ze7i++kuc2NyLnV1ZQ==
> или
> Новый.scr.uue
> 
> В начале конфига Exim нужно
> check_rfc2047_length = false
> 
> ___
> Exim-users mailing list
> Exim-users@mailground.net
> http://mailground.net/mailman/listinfo/exim-users
> 

-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC


___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Lena
> From: Mikhail Golub

> # 7z l Новый.scr.uue

> Path = Новый.scr.uue
> Type = bzip2
> 
>Date  TimeAttr Size   Compressed  Name
> --- -   
> 
> .Новый.scr

> Но если этот же файл проверить как 
> /var/spool/exim/scan/1cJhIo-000D1o-SQ-2/1cJhIo-000D1o-SQ-2 - 
> здесь проблема.
> 
> # 7z l 1cJhIo-000D1o-SQ-2

> Path = 1cJhIo-000D1o-SQ-2
> Type = bzip2
> 
>Date  TimeAttr Size   Compressed  Name
> --- -   
> 
> . 
> 1cJhIo-000D1o-SQ-2~

"uue" - враньё вируса, на самом деле файл упакован не uue, а bzip2.
Внутри файла bzip2 нет имени исходного файла.
Увидеть ".scr" можно только в $mime_filename .
Интересно, что в $mime_filename -
=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==
или
Новый.scr.uue

В начале конфига Exim нужно
check_rfc2047_length = false

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Victor Cheburkin
Hi!

> 21 дек. 2016 г., в 17:14, Mikhail Golub  написал(а):
> 
> 21.12.2016 17:06, Victor Cheburkin пишет:
> 
> Да, с вложением, сохраненным из почтового клиента, проблем нет.
> 
> # 7z l Новый.scr.uue
> 
> 7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
> p7zip Version 16.02 (locale=ru_RU.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 CPUs 
> x64)
> 
> Scanning the drive for archives:
> 1 file, 215412 bytes (211 KiB)
> 
> Listing archive: Новый.scr.uue
> 
> --
> Path = Новый.scr.uue
> Type = bzip2
> 
>   Date  TimeAttr Size   Compressed  Name
> --- -   
>.Новый.scr
> --- -   
> 215412  1 files
> 
> 
> Но если этот же файл проверить как 
> /var/spool/exim/scan/1cJhIo-000D1o-SQ-2/1cJhIo-000D1o-SQ-2 - здесь 
> проблема.
> 
> # 7z l 1cJhIo-000D1o-SQ-2
> 
> 7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
> p7zip Version 16.02 (locale=ru_RU.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 CPUs 
> x64)
> 
> Scanning the drive for archives:
> 1 file, 215412 bytes (211 KiB)
> 
> Listing archive: 1cJhIo-000D1o-SQ-2
> 
> --
> Path = 1cJhIo-000D1o-SQ-2
> Type = bzip2
> 
>   Date  TimeAttr Size   Compressed  Name
> --- -   
>. 1cJhIo-000D1o-SQ-2~
> --- -   
> 215412  1 files


Да вот как-то и так и сяк у меня нормально..

$ 7z l /Users/vc/Documents/1cJhIo-000D1o-SQ-2 

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=utf8,Utf16=on,HugeFiles=on,64 bits,4 CPUs x64)

Scanning the drive for archives:
1 file, 521194 bytes (509 KiB)

Listing archive: /Users/vc/Documents/1cJhIo-000D1o-SQ-2

--
Path = /Users/vc/Documents/1cJhIo-000D1o-SQ-2
Type = 7z
Physical Size = 521194
Headers Size = 272
Method = LZMA2:768k
Solid = +
Blocks = 1

   Date  TimeAttr Size   Compressed  Name
--- -    
2015-06-11 18:53:59 A   213344   520922  Декартовы Координаты.pdf
2016-05-23 12:38:36 A   158746   Свидетельство о 
регистрации.pdf
2016-05-23 12:37:54 A   188383   Свидетельство плательщика 
НДС.pdf
--- -    
2016-05-23 12:38:36 560473   520922  3 files


-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC


___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Mikhail Golub

21.12.2016 17:06, Victor Cheburkin пишет:

Да, с вложением, сохраненным из почтового клиента, проблем нет.

# 7z l Новый.scr.uue

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=ru_RU.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 
CPUs x64)


Scanning the drive for archives:
1 file, 215412 bytes (211 KiB)

Listing archive: Новый.scr.uue

--
Path = Новый.scr.uue
Type = bzip2

   Date  TimeAttr Size   Compressed  Name
--- -   


.Новый.scr
--- -   


 215412  1 files


Но если этот же файл проверить как 
/var/spool/exim/scan/1cJhIo-000D1o-SQ-2/1cJhIo-000D1o-SQ-2 - 
здесь проблема.


# 7z l 1cJhIo-000D1o-SQ-2

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=ru_RU.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 
CPUs x64)


Scanning the drive for archives:
1 file, 215412 bytes (211 KiB)

Listing archive: 1cJhIo-000D1o-SQ-2

--
Path = 1cJhIo-000D1o-SQ-2
Type = bzip2

   Date  TimeAttr Size   Compressed  Name
--- -   

. 
1cJhIo-000D1o-SQ-2~
--- -   


 215412  1 files




--
Mikhail Golub

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Victor Cheburkin
Hi!

> 21 дек. 2016 г., в 16:56, Mikhail Golub  написал(а):
> 
> 21.12.2016 16:50, Victor Cheburkin пишет:
>> Как вариант -- проблемы с локалью: если при запуске 7z локаль установлена 
>> неправильно...
> 
> LANG=ru_RU.UTF-8
> LC_CTYPE="ru_RU.UTF-8"
> LC_COLLATE="ru_RU.UTF-8"
> LC_TIME="ru_RU.UTF-8"
> LC_NUMERIC="ru_RU.UTF-8"
> LC_MONETARY="ru_RU.UTF-8"
> LC_MESSAGES="ru_RU.UTF-8"
> LC_ALL=
> 
> Запускаю от юзера.
> 215412 21 дек. 15:51 1cJhIo-000D1o-SQ-2
> 215412 21 дек. 15:12 Новый.scr.uue
> 
> 7z l первый_файл
> 7z l второй_файл
> 
> Результаты приводил выше. Дело не в локали.
> Если в имени файла нет кириллицы - проблем нет, все срабатывает.

Гм. Видимо еще смотря какая кодировка внутри архива.. с utf-8 на utf-8 работает 
нормально:

$ 7z l новый.7z 

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=utf8,Utf16=on,HugeFiles=on,64 bits,4 CPUs x64)

Scanning the drive for archives:
1 file, 521194 bytes (509 KiB)

Listing archive: новый.7z

--
Path = новый.7z
Type = 7z
Physical Size = 521194
Headers Size = 272
Method = LZMA2:768k
Solid = +
Blocks = 1

   Date  TimeAttr Size   Compressed  Name
--- -    
2015-06-11 18:53:59 A   213344   520922  Декартовы Координаты.pdf
2016-05-23 12:38:36 A   158746   Свидетельство о 
регистрации.pdf
2016-05-23 12:37:54 A   188383   Свидетельство плательщика 
НДС.pdf
--- -    
2016-05-23 12:38:36 560473   520922  3 files


> -- 
> Mikhail Golub
> 
> ___
> Exim-users mailing list
> Exim-users@mailground.net
> http://mailground.net/mailman/listinfo/exim-users
> 

-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC


___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Victor Cheburkin
Hi!

> 21 дек. 2016 г., в 16:47, Mikhail Golub  написал(а):
> 
> 21.12.2016 16:24, Mikhail Golub пишет:
>> Мне же надо получить листинг архива из
>> /var/spool/exim/scan/1cJhhK-000DmE-A2/1cJhhK-000DmE-A2-2
>> Дело, все же, в 7z, получается.
>> 
>> Файлы идентичные по содержимому.
>> 215412 21 дек.  15:51 1cJhIo-000D1o-SQ-2
>> 215412 21 дек.  15:12 Новый.scr.uue
>> 
>> Но 7z во втором файле "видит" имя файла в содержимом архива.
>> А в первом - нет.
> 
> Да, получается, что у 7z проблемы с именами файлов кириллицей.
> Создал файл test.src, запаковал его в test.scr.gz - сработало правило.
> 
> 2016-12-21 16:43:16 1cJi6u-000DoK-8E TEST-mime_filename: test.scr.gz
> 2016-12-21 16:43:16 1cJi6u-000DoK-8E TEST-mime_decoded_filename: 
> /var/spool/exim/scan/1cJi6u-000DoK-8E/1cJi6u-000DoK-8E-2
> 2016-12-21 16:43:16 1cJi6u-000DoK-8E  rejected during MIME ACL checks: 
> REJECTED: dangerous file in ZIP attachment
> 
> Вирусописатели читают рассылки и учли такую недоработку при рассылке вируса :)

Как вариант -- проблемы с локалью: если при запуске 7z локаль установлена 
неправильно...

> -- 
> Mikhail Golub
> 
> ___
> Exim-users mailing list
> Exim-users@mailground.net
> http://mailground.net/mailman/listinfo/exim-users
> 

-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC


___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Mikhail Golub

21.12.2016 16:50, Victor Cheburkin пишет:

Как вариант -- проблемы с локалью: если при запуске 7z локаль установлена 
неправильно...


LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_ALL=

Запускаю от юзера.
215412 21 дек. 15:51 1cJhIo-000D1o-SQ-2
215412 21 дек. 15:12 Новый.scr.uue

7z l первый_файл
7z l второй_файл

Результаты приводил выше. Дело не в локали.
Если в имени файла нет кириллицы - проблем нет, все срабатывает.

--
Mikhail Golub

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Mikhail Golub

21.12.2016 16:24, Mikhail Golub пишет:

Мне же надо получить листинг архива из
/var/spool/exim/scan/1cJhhK-000DmE-A2/1cJhhK-000DmE-A2-2
Дело, все же, в 7z, получается.

Файлы идентичные по содержимому.
215412 21 дек.  15:51 1cJhIo-000D1o-SQ-2
215412 21 дек.  15:12 Новый.scr.uue

Но 7z во втором файле "видит" имя файла в содержимом архива.
А в первом - нет.


Да, получается, что у 7z проблемы с именами файлов кириллицей.
Создал файл test.src, запаковал его в test.scr.gz - сработало правило.

2016-12-21 16:43:16 1cJi6u-000DoK-8E TEST-mime_filename: test.scr.gz
2016-12-21 16:43:16 1cJi6u-000DoK-8E TEST-mime_decoded_filename: 
/var/spool/exim/scan/1cJi6u-000DoK-8E/1cJi6u-000DoK-8E-2
2016-12-21 16:43:16 1cJi6u-000DoK-8E  rejected during MIME ACL 
checks: REJECTED: dangerous file in ZIP attachment


Вирусописатели читают рассылки и учли такую недоработку при рассылке 
вируса :)


--
Mikhail Golub

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность George L. Yermulnik
Hello!

On Wed, 21 Dec 2016 at 16:32:50 (+0200), Max Kostikov wrote:

> А зачем отдельным?
> Он же при первом decode = default всё делает. Дальше можно пользоваться 
> плодами.

Согласен. Но в Вашем случае его нужно строкой выше перенести.
Но, как я уже понял из предыдущего письма в триде, проблема не в том,
что файл проехал мимо match'а по имени, а что 7z видит не то и не так.

> George L. Yermulnik писал 2016-12-21 16:25:
> > Или decode отдельным acl'ем (через warn) и match имени аттача по
> > $mime_decoded_filename

> BBM: 24CA5DF8 | W: https://kostikov.co

-- 
George L. Yermulnik
[YZ-RIPE]

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Max Kostikov

А зачем отдельным?
Он же при первом decode = default всё делает. Дальше можно пользоваться 
плодами.


George L. Yermulnik писал 2016-12-21 16:25:

Или decode отдельным acl'ем (через warn) и match имени аттача по
$mime_decoded_filename


--
With best regards,
Max Kostikov

BBM: 24CA5DF8 | W: https://kostikov.co

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность George L. Yermulnik
Hello!

On Wed, 21 Dec 2016 at 16:11:21 (+0200), Victor Cheburkin wrote:

> > Было правило и вроде работало (когда добавлял).

> > deny message = This message contains dangerous file(s) in 
> > ${uc:${extract{-1}{.}{$mime_filename}}} attachment.
> > condition = ${if <{$message_size}{2500K}{1}{0}}
> > condition = ${if 
> > match{$mime_filename}{\N(?i)\.(7z|arj|bz2|gz|rar|uue|z|zip|xz)$\N}}
> > decode = default
> > condition = ${if match{${run{/usr/local/bin/7z l 
> > $mime_decoded_filename}}} 
> > {\N(?i)\.(com|pif|scr|lnk|exe|js|zip|jar|bat|cmd)\n\N} }
> > log_message = REJECTED: dangerous file in 
> > ${uc:${extract{-1}{.}{$mime_filename}}} attachment

> > Но сегодня пришел "злобный" вирус в письме с вложением "Новый.scr.uue"

> > --=_NextPart_000_0A96_01D25B89.ECC77EF0
> > Content-Type: application/octet-stream;
> > name="=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==?="
> > Content-Transfer-Encoding: base64
> > Content-Disposition: attachment;
> > filename="=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==?="

> > И правило не сработало :(

> А если
> ${if match {${rfc2047d:$mime_filename}}
> ?

Или decode отдельным acl'ем (через warn) и match имени аттача по 
$mime_decoded_filename

-- 
George L. Yermulnik
[YZ-RIPE]

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Mikhail Golub

21.12.2016 16:11, Victor Cheburkin пишет:

Hi!
А если
${if match {${rfc2047d:$mime_filename}}


Нет, не то.

2016-12-21 16:16:50 1cJhhK-000DmE-A2 TEST-mime_filename: Новый.scr.uue
2016-12-21 16:16:50 1cJhhK-000DmE-A2 TEST-mime_decoded_filename: 
/var/spool/exim/scan/1cJhhK-000DmE-A2/1cJhhK-000DmE-A2-2


Мне же надо получить листинг архива из 
/var/spool/exim/scan/1cJhhK-000DmE-A2/1cJhhK-000DmE-A2-2

Дело, все же, в 7z, получается.

Файлы идентичные по содержимому.
215412 21 дек.  15:51 1cJhIo-000D1o-SQ-2
215412 21 дек.  15:12 Новый.scr.uue

Но 7z во втором файле "видит" имя файла в содержимом архива.
А в первом - нет.

Если кто-то хочет проверить свои настройки - вот файл.
https://cloud.mail.ru/public/3iyG/jSZGwr3tD


--
Mikhail Golub

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



Re: [Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Victor Cheburkin
Hi!

> 21 дек. 2016 г., в 16:04, Mikhail Golub  написал(а):
> 
> И снова здравствуйте.
> 
> Было правило и вроде работало (когда добавлял).
> 
> deny message = This message contains dangerous file(s) in 
> ${uc:${extract{-1}{.}{$mime_filename}}} attachment.
> condition = ${if <{$message_size}{2500K}{1}{0}}
> condition = ${if 
> match{$mime_filename}{\N(?i)\.(7z|arj|bz2|gz|rar|uue|z|zip|xz)$\N}}
> decode = default
> condition = ${if match{${run{/usr/local/bin/7z l 
> $mime_decoded_filename}}} 
> {\N(?i)\.(com|pif|scr|lnk|exe|js|zip|jar|bat|cmd)\n\N} }
> log_message = REJECTED: dangerous file in 
> ${uc:${extract{-1}{.}{$mime_filename}}} attachment
> 
> Но сегодня пришел "злобный" вирус в письме с вложением "Новый.scr.uue"
> 
> --=_NextPart_000_0A96_01D25B89.ECC77EF0
> Content-Type: application/octet-stream;
>   name="=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==?="
> Content-Transfer-Encoding: base64
> Content-Disposition: attachment;
>   filename="=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==?="
> 
> И правило не сработало :(

А если
${if match {${rfc2047d:$mime_filename}}
?

> Если выполнить скан по $mime_decoded_filename
> # 7z l /var/spool/exim/scan/1cJhIo-000D1o-SQ/1cJhIo-000D1o-SQ-2
> получу
> Path = /var/spool/exim/scan/1cJhIo-000D1o-SQ/1cJhIo-000D1o-SQ-2
> Type = bzip2
> 
>   Date  TimeAttr Size   Compressed  Name
> --- -   
>. 1cJhIo-000D1o-SQ-2~
> --- -   
> 215412  1 files
> 
> 
> 
> А если
> # 7z l /home/user/Новый.scr.uue
> то
> Path = /home/user/Новый.scr.uue
> Type = bzip2
>   Date  TimeAttr Size   Compressed  Name
> --- -   
>.Новый.scr
> --- -   
> 215412  1 files
> 
> В Exim что-то не донастроено?
> 
> 
> 
> -- 
> Mikhail Golub
> 
> ___
> Exim-users mailing list
> Exim-users@mailground.net
> http://mailground.net/mailman/listinfo/exim-users
> 

-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users



[Exim-users] mime_decoded_filename

2016-12-21 Пенетрантность Mikhail Golub

И снова здравствуйте.

Было правило и вроде работало (когда добавлял).

deny message = This message contains dangerous file(s) in 
${uc:${extract{-1}{.}{$mime_filename}}} attachment.

 condition = ${if <{$message_size}{2500K}{1}{0}}
 condition = ${if 
match{$mime_filename}{\N(?i)\.(7z|arj|bz2|gz|rar|uue|z|zip|xz)$\N}}

 decode = default
 condition = ${if match{${run{/usr/local/bin/7z l 
$mime_decoded_filename}}} 
{\N(?i)\.(com|pif|scr|lnk|exe|js|zip|jar|bat|cmd)\n\N} }
 log_message = REJECTED: dangerous file in 
${uc:${extract{-1}{.}{$mime_filename}}} attachment


Но сегодня пришел "злобный" вирус в письме с вложением "Новый.scr.uue"

--=_NextPart_000_0A96_01D25B89.ECC77EF0
Content-Type: application/octet-stream;
name="=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==?="
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="=?windows-1251?B?ze7i++kuc2NyLnV1ZQ==?="

И правило не сработало :(

Если выполнить скан по $mime_decoded_filename
# 7z l /var/spool/exim/scan/1cJhIo-000D1o-SQ/1cJhIo-000D1o-SQ-2
получу
Path = /var/spool/exim/scan/1cJhIo-000D1o-SQ/1cJhIo-000D1o-SQ-2
Type = bzip2

   Date  TimeAttr Size   Compressed  Name
--- -   

. 
1cJhIo-000D1o-SQ-2~
--- -   


 215412  1 files



А если
# 7z l /home/user/Новый.scr.uue
то
Path = /home/user/Новый.scr.uue
Type = bzip2
   Date  TimeAttr Size   Compressed  Name
--- -   


.Новый.scr
--- -   


 215412  1 files

В Exim что-то не донастроено?



--
Mikhail Golub

___
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users