Re: Spamming...
"Chris Haynes" <[email protected]> Thu, 28 Apr 2005 12:25:43 +0100
| Newsgroups | gmane.mail.im2000 |
|---|---|
| Message-ID | <03bc01c54be5$044ff4b0$0600000a@john> |
On Thursday, April 28, 2005 at 10:52 AM "Brian Candler"objected: > On Tue, Apr 26, 2005 at 05:38:02PM +0100, Chris Haynes wrote: >> >It's worse than that. SPF only ties *domains* to IP addresses, not E-mail >> >addresses to IP addresses. >> >> Not so: you can publish a policy which, using macros, checks the IP address >> in relation to specific addresses, not just the domain. > > Well, perhaps so, but I can't see that's any use in forgery detection. It is - if you follow your own suggestions below... > > For example: I am a spammer. I sign up for account "[email protected]". I open > a connection to smtp.example.net, and I send a standard outbound mail > MAIL FROM:<[email protected]> > RCPT TO:<[email protected]> > > OK, that's fine. But now I start forging, and send another outbound mail: > MAIL FROM:<[email protected]> > RCPT TO:<[email protected]> > > [email protected] is a legitimate user of the example.net ISP service, but I > have forged their return address. > > Now, any message which has MAIL FROM:<[email protected]> which is relayed via > smtp.example.net, will have the same source IP address, whether it was > legitimately sent from the real [email protected] account, or was forged by > me. SPF could (at best) stop me forging address which do not exist. Agreed . > > So if you want to prevent this in an SPF world, basically you need to: > > 1. force your entire customer base to switch over to SMTP AUTH (or the SMTP > relay must authenticate each connection using some external mechanism, > e.g. a real-time lookup into RADIUS accounting data) > > And: > > 2. set up a database which maps SMTP AUTH IDs to legitimate sender addresses, > and reject mails whose sender is not authorised > > Of course, if everyone did this, there would be no need for SPF in the first > place. However, there's no incentive for anyone to do it at the moment. Here's where we differ. It's the people whose domains are forged (e.g. 'joe-job' victims) who have every incentive to publish SPF. And, yes, if you have a shared outbound SMTP server it needs to provide protection against sibling-customer forgery. But that's not a flaw in SPF per se, just another of the architecturally-related bits of policy/practice that have to be tightened-up to create a more trustworthy email infrastructure. And it does not need the whole world to provide this sibling-customer forgery protection, only the servers _I_ use. With my outbound MSP doing these checks, I can safely publish a '-all' policy and get global protection against forgery - it does not need any other MSPs to have also done the same. That's what attracted me to SPF as a tactical palliative: local/early adoptors can gain benefits without the need for universal deployment. > The cost (in customer aggravation and ongoing maintenance of the AUTH ID to > sender database) is very high, and the benefit accrues mainly to the rest of > the Internet, not to the ISP implementing this. It's that ISP's customers who benefit - directly. So any MSP with a sincere commitment to customer value would presumably want to offer this. I freely concede that there are no reports of any MSPs actually doing this! > > In the SMTP world, I think SES/SRS/BATV-type solutions offer a better > solution. You can at least be sure that a mail with a return address of > <[email protected]> really was sent by <[email protected]>, since you > callback to the [email protected] mailbox. Not so - certainly w.r.t. SES & SRS. (I've not examined BATV for the open Internet in depth). With SES you can be sure that _a_ message was sent by [email protected], within a certain time-slot, but not any _particular_ message which you may be inspecting. The message can be radically amended, or even the signed Mail From part used with a totally different message. The 'obvious' defence of including some kind of cryptographic digest of the message itself cannot work in the 'real world'. See the posts I made to the SES list around 21 Dec 2004 , where I demonstrated the extreme difficulty (impossibility?) of guaranteeing cryptographically-ensured 'sameness' whilst simultaneously permitting message / header additions by forwarders, lists, etc. BTW, I believe the problems I demonstrated there are a challenge to 'any' scheme which attempts to permit 'small' alterations or extensions to signed messages. > > At this point, the MAIL FROM value is performing two functions: > (1) The return address for bounces > (2) As a signature to prove the sender of a mail also own a particular > mailbox > > You can't divorce the two. If I wanted to give a signed sender of > [email protected] then I would also have to have my bounces sent there. I > would have to either add the cookie myself (and make sure pobox.com have the > same shared secret on my account), or I would have to relay my outgoing mail > through their SMTP server. There are some other possibilities I have thought of for dealing with this, but I agree they are all 'messy'. > > Regards, > > Brian. > > I'm actually in agreement with what I understand the basic thesis of IM2000 to be - that the flaws in existing SMTP are sufficiently deep and architecturally-ingrained that _no_ combinations of SPF,SRS,SES, DK or whatever can give a wholly satisfactory long-term solution. But I do try to understand what they _can_ do - there may be useful lessons there. Regards, Chris Haynes