Mike Cardwell wrote:
> * on the Sun, Jun 10, 2007 at 07:56:05PM +0200, mavior wrote:
> 
>> The mail simply does not arrive in hotmail inbox nor in spam box.Seems 
>> like it is silently deleted from hotmail servers,but I don't receive any 
>> reject mail back or any other feedback.
>> Any suggestions?
>> thank you
> 
> I've found a way around their stupid filters. Well, it works for me
> anyway. Just before the dnslookup router create another router:
> 
> hotmail:
>   driver      = dnslookup
>   domains     = hotmail.com : hotmail.co.uk
>   transport   = remote_smtp
>   headers_add = ${run{/usr/bin/perl -e 'print "X-HotMail-Fodder1-\$_: 
> ".("Z"x99)."\n" for 1..220'}{$value}{}}\
>                 ${run{/usr/bin/perl -e 'print "X-HotMail-Fodder2-\$_: 
> ".("Z"x99)."\n" for 1..220'}{$value}{}}
>   ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
>   no_more
> 
> This adds lots of large headers to the email message which seems to
> push the message size above a limit somewhere around 50KB at which
> point hotmail stops blackholing my mail. Maybe they don't perform
> certain scans on messages above a certain size.

To further expand on this. It appears that this technique does not 
"bypass" their filters, but gives the message a much higher likelyhood 
of passing them only. I noticed this when trying to send an email with a 
.exe attachment to a hotmail account, which was silently dropped. So I 
did a bunch of further tests to verify that this was the case. So what I 
did was updated the router to add fake In-Reply-To and References 
headers to any email destined for a hotmail account to trick hotmail 
into thinking that the email was a reply. When I did this, all email 
seems to be getting through. When I remove this, it starts getting 
blackholed again:

hotmail:
   driver      = dnslookup
   domains     = hotmail.com : hotmail.co.uk : hotmail.fr : hotmail.it : 
hotmail.de
   condition   = ${if or{\
                    {match{$h_References:}{\N^<[EMAIL PROTECTED]>$\N}}\
                    {match{$h_In-Reply-To:}{\N^<[EMAIL PROTECTED]>$\N}}\
                 }{false}{true}}
   transport   = remote_smtp
   headers_add = ${readfile{/etc/exim4/hotmail_fodder.txt}}
   ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
   no_more

The differences:

1.) There are more hotmail domains
2.) It doesn't execute if there are hotmail References or In-Reply-To 
headers as the mail will get through anyway
3.) Instead of calling the perl exe to generate the headers, stick them 
in a file and use readfile

hotmail_fodder.txt contains the following:

References: <[EMAIL PROTECTED]>
In-Reply-To: <[EMAIL PROTECTED]>

Followed by about 500 lines of these headers:

X-Hotmail-Fodder: 
0000000000000000000000000000000000000000000000000000000000000000000000000000000000

Mike

-- 
## List details at http://www.exim.org/mailman/listinfo/exim-users 
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://www.exim.org/eximwiki/

Reply via email to