Re: [Exim] extract problems with digits in smtp-auth

Top Page
Delete this message
Reply to this message
Author: robert rotman
Date:  
To: Philip Hazel
CC: exim-users
Subject: Re: [Exim] extract problems with digits in smtp-auth
Sorry for circumstances, but then the script at the example "C034" must be
wrong:

-<snip>-
#!/usr/bin/perl
use MIME::Base64;
printf ("%s", encode_base64(eval "\"$ARGV[0]\""));
-<snip>-
which encodes "\0ph10\01#exim.org" to:

AHBoMTABI2V4aW0ub3Jn

with your encoding string everything works fine.


thank you,

robert

On Thu, 1 Mar 2001, Philip Hazel wrote:

> On Wed, 28 Feb 2001, robert rotman wrote:
>
> > > On Wed, 28 Feb 2001, robert rotman wrote:
> > >
> > > >   $1 = '#exim.org
> > > >        ^
> > > >        this is a binary charakter, like a caro;)
> > > >   $2 = ph10

> > > >
> > > > --> this is when i authenticat with "1#exim.org and ph10"
> > > >
> > > >
> > > > when i authenticate with "a#exim.org" and "ph10" everything works ok!
>
> I have just tried this experiment, using this authenticator:
>
> fixed_plain:                     
>   driver = plaintext
>   public_name = PLAIN
>   server_condition = ${lookup mysql{select password from table where \
>      username='${extract{1}{#}{$2}}' and \
>      domain='${extract{2}{#}{$2}}'}{$value}fail}    

>
> The command I sent was
>
> auth plain AHBoMTAAMSNleGltLm9yZw==
>
> That b64 string decodes to "?ph10?1#exim.org" where the "?" characters
> represent binary zeros. The debug log I got was
>
> fixed_plain authenticator:
> $1 =
> $2 = ph10
> $3 = 1#exim.org
>
> which is of course correct.
>
> However, during the course of this experiment, I came across something
> that might explain your problem, depending on exactly how you are
> testing this. In order to run the test, I had to find out the b64 string
> to use (I was telnetting to the testing Exim). I have a script that does
> b64 encoding - it's a Perl script that basically does
>
> printf ("%s", encode_base64(eval "\"$ARGV[0]\""));
>
> My first attempt was to run this script with the argument
>
> '\0ph10\01#exim.org'
>
> This of course did not work, because the \01 was taken as a single
> character. The correct argument is
>
> '\0ph10\0001#exim.org'
>
> Now, if I'd used "a" instead of "1" it would have worked. Could
> something like this be what you are seeing?
>
> -- 
> Philip Hazel            University of Cambridge Computing Service,
> ph10@???      Cambridge, England. Phone: +44 1223 334714.

>


---
di. robert rotman                                   inode.graz
phone -> ++43-(0)316 813141       ++43-(0)316 818600/15 <- fax
rotman@???                      http://www.graz.inode.at/
--
while (!sleep) { $sheep++ }