The return address you see in spam emails is fake, it's just a piece of text. The mailbox never existed.
A spam starts off as the pitch.
quote:
ENLARGE YOURSELF! Vizit me pills webspace!!!
The email client attaches the first headers - to, from and subject. In this case, the client was written by the spammer, and attaches randomly generated information for the subject and return address. The recipient is pulled from a list of confirmed mailboxes.
quote:
From: awesomepills@fakedomain
To: You@hotmail.com
Subject: Josie says...
ENLARGE YOURSELF! Vizit me pills webspace!!!
Next, the client begins the process of sending the email. There are lots of ways to do this, but we'll use the direct route for simplicity.
The program does an MX (mail exchange) lookup of your email host (in this example, hotmail.com). The lookup returns the server(s) which handles your email: mx1.hotmail.com
Now the program connects to your mail server on port 25 (SMTP).
Talking to an email server is ridiculously easy, especially if it blindly trusts you, as this example server does. (A real hotmail server behaves similarly, but not quite as simple)
Messages in bold are sent from the spammer's end
quote:
HELO
250 WELCOME TO MX1.HOTMAIL.COM
MAIL FROM:awesomepills@fakedomain
250 OK
RCPT you@hotmail.com
250 OK
DATA
354 TRANSMIT MESSAGE
From: awesomepills@fakedomain
To: You@hotmail.com
Subject: Josie says...
ENLARGE YOURSELF! Vizit me pills webspace!!!
.
250 OK
QUIT
221 GOODBYE
Poof, the email has been sent and on it's way to your inbox! Just before the email is stored in the database, it applies a tracking header to the message.
quote:
Received from 255.0.0.1 by mx1.hotmail.com (64.4.50.50)
From: awesomepills@fakedomain
To: You@hotmail.com
Subject: Josie says...
ENLARGE YOURSELF! Vizit me pills webspace!!!
The only truthful piece of info we have is the ip address of the sending server. (255.0.0.1 in this example) Think of it like caller id, it shows the reported name, along with the real phone number of the caller.
Crafty spammers can use relays, proxies and zombies to send the actual message, protecting their real ip from being seen. But that process is a little too involved to explain in detail here.
If you feel adventurous, you can actually connect to an email server using telnet and send an email yourself. Just be sure to read the
RFC first.
Here's an actual conversation between me and one of my mail servers, sending a test message to myself:
quote:
>telnet mail.vwire.net 25
220 mail.vwire.net ArGoSoft Mail Server Pro for WinNT/2000/XP, Version 1.8 (1.8.
8.8)
HELO
250 Welcome, X.mc.at.cox.net [70.X.X.X], pleased to meet you
MAIL From:XXXX@XXX.net
250 Sender "XXX@XXX.net" OK...
RCPT to:XXX@XXX.net
502 Unknown command
rcpt to:XXX@XXX.net
250 Recipient "XXX@XXX.net" OK...
data
354 Please start mail input.
Hello from yourself. Congrats, you sent an email to yourself by telnet. lol
.
250 Mail queued for delivery.
QUIT
221 Closing connection. Good bye.
Connection to host lost.
>
Hope this was enlightening!