I always wondered the following: how do infected computers send emails? I read all the stories of large botnets sending 1-2 billion emails a day. When I use the SMTP server of my ISP and I try to send my newsletter to less then 100 people my ISPs SMTP server blocks. I tried to do this by multiple friends (with all different ISPs) and it was all the same. But how can these bonnets produce such a large volume of email when I cant even send 100?
Thanks in advance,
Jori.
They are not trying to abuse the system, they only sent small amount of mail. But if you have (just an unreallistic example) 10k computers infected, each sending 25 mails every hours. You end up with 10k * 25 * 24 = 6 000 000 mail/day.
After that, you just have to scale that 3 numbers and you can have a massive spam bot. You can take a look at this article in wikipedia for example of sizes and capacities.
I'm not sure, but I could imagine the zombies don't (only) use the SMTP server your ISP provides but directly connect to the recipients SMTP server or some other (open) SMTP relay. So connecting to 100 servers simultaneously, sending 10 mails each, results in 1000 mails sent (from one zombie).
Even if such mails are often blocked (e.g. by graylisting, blocking dynamic IPs or some other technique) some are probably not. It does not cost the botnets operator anything to simply try it: If the mail is delivered that's good (for the botnets operator), if not that's no problem.
Related
Gmail has a 24 hour rolling period limit of 2000 emails, outlook has a limit of 1000 emails and all other service providers has a limit.
How does Saleshandy and sendpluse send almost 10k emails per day from gmail when the limit exists? What should I do if I want to send such number of emails? Is it possible using python?
Gmail and outlook both do indeed have certain restrictions and limits when it comes to the number of emails that can be sent out in a day; unfortunate I know.
I am Vatsal from SalesHandy, and I will explain the process of sending 10,000 emails from Gmail (& outlook) all at once.
SalesHandy’s mass mailing feature with automated follow-up lets you schedule as many emails as possible and yes, we are talking more than 10,000 emails too.
We mentioned that you can schedule all of these emails to be sent at once, but the sending will be limited by your email service provider's daily email sending limit. It is not recommended to email blasts at once because it may harm your email account's reputation and cause your emails to end up in the recipient's spam box.
Mail Merge Campaigns can be sent using SalesHandy.
If you wish to know more on how exactly one goes about this process, you can read our detailed blog here - Gmail / Outlook.
Feel free to ask me any other questions you have! :)
One organisation in our country used order of received emails to select the winners. Thousands of people sent email at the same time. They are not transparent enough to tell me the exact time of my email received.
So First Question is :
Is that possible for a mail server to receive emails at exactly same time?
If yes, then how will it order the emails received at the same time. Will it only depend on the settings of mail client like outlook ?
Second Question:
As it was mentioned that they will consider emails only 10:00am onwards. I sent email exactly at 10:00am. I got their automated out of office reply and around 300 more people get it. My wife sent email one second later, she didn't get the Automated out of box reply. So can this slow my email to reach the mail client ?
Third Question:
Can someone provide more technical reasons to explain that "Order of received emails" is not fair way for lottery. and How can this give intentional and unintentional advantage to some people.
Thanks,
Kind Regards..
I'm going to pretend this is a programming question, namely, how to program your way to the prize. The easiest way should be to write a custom SMTP client in, say, about 50 lines of ruby, python, c or java. The client should create 5000 threads, and in each thread it waits until 9:58:40, then opens an SMTP connection to the prizegiver's SMTP server, sends EHLO, MAIL FROM, RCPT TO, DATA, the body, then waits until 10:00:00, then sends CRLF.CRLF and repeats a few times without waiting. Very simple, the only thing to watch out for is that some of the 5000 connections will fail because the receiver hasn't enough capacity.
The result is that starting about a minute before the competition starts you occupy most or all of the receiver's mail server capacity. In the first second, you submit 5000 messages and noone else has a chance to submit any. In the following seconds, you submit 5000, 10000 or 15000 more, just in case the receiver's clock is off by a little.
FWIW, I have once delivered around 5000 messages in one target second (an announcement that should reach people at the same time). It worked. I had to use three regular mail servers, though, and only 1500 destinations per server.
I coded a little script, that forwards mails to a mailing list (with ~80 recipients)
The problem is the 100/day quota limit (as seen here)
The script would be pretty useless if I can forward 1 and a half emails per day...
Can I somehow increase that limit?
If not, do you have any other ideas on how to forward the mails to ~80 recipients without this limit?!
Google explicitly doesn't want you using Apps Script for this kind of thing, which is why the limits are low.
You should use a service designed to send mass emails and forward to that from your apps script.
For example, create a Google Group with your 80+ recipients, then forward the emails to that Group. Or look into other mail-blast tools such as Mailchimp.
A client sends out monthly emails to about 1 million users which will grow with time. They currently send through an in-house exchange server.
Their current approach starts with first preparing all emails, recipients and attachments, then a script starts feeding the exchange server. Sending just a million mails generally takes days.
My role is to propose a better approach/solution that can get these emails sent and possibly delivered within hours. The choice of using 3rd party services like amazon ses and sendgrid exists but what will make the delivery time reduce as required.
I'll start this with two disclaimers: 1) I am a SendGrid employee, 2) This question is right on the border of questions StackOverflow doesn't like.
That said, both SES or SendGrid will be able to process emails at a rate much faster than 1 million over several days.
Speaking for SendGrid, we accept all mail passed to us and queue it on our end, so if you're able to send a million emails at us in a second, we'll accept them and deal with queueing on our servers. So that answers the question of how fast you can get the mail away from you; leaving the question of how fast it will get to your users.
That's a harder question and depends on a number of factors, including if we're receiving negative feedback from email providers (Google, Yahoo, Comcast, etc.), and your typical send volume. All said, it could take anywhere from a few minutes to a few hours, but days is definitely unheard of.
As far as I know SES will do something of the same nature. SES enforces client side send rates (meaning you'll need to send them only N emails per period), but this can be upped greatly depending on your volume and trust. Again, as far as I know, SES should take anywhere in the neighborhood of minutes to hours to process and send 1m emails.
What kind of practical issues are there concerning sending tons of e-mail from a server? Will the likelihood of that e-mail being received be just the same as if it had been sent from g-mail or a personal e-mail account if I for example just blindly call the mail() function in PHP tens of thousands of times a day?
(note: you are not helping a spammer here, this relates to a notify feature I'm thinking about for a future link sharing site)
While you may technically be able to send thousands of mails per minute, in reality you must be carefull.
Say you send out 500 emails to yahoo for example. if enough people mark your message as spam, soon, ANY email you send to yahoo will be marked as spam, or [BULK]. Many isp's routinely tar-pit or outright reject email from servers on lists such as RBL (the real-time black hole list). If your mail IP gets put on one of these lists, you can kiss sending email normally from that ip ever again goodbye. Users are very finicky and it doesn't take many complaints to get your mail ip blocked at many domains.
Also since you are sending automated messages, there are heuristics used to determine if the same message is being sent to many users on the same domain. This also increases the chance your mail will be marked as spam.
This is why clean emails from some addresses always go into the spam box. Their company may have not been careful enough when sending what could be perceived as spam. Proceed with caution.
http://wiki.apache.org/spamassassin/AvoidingFpsForSenders
http://support.microsoft.com/kb/842851
http://www.blacklistedip.com/rbl_list.php
It helps to set a 'x-mailer' and ('X-MimeOLE' if your pretending to be outlook) of a real mail client.
It also helps to send it from a server that is a mail server for the domain in the from address, with forward & reverse DNS records setup.
No issues. Once a server is correctly configured as a mail server (SMTP) for a particular domain, there is no difference if the mail it sends out came to it from Outlook, or from the mail() function in PHP - both are getting the SMTP server to do all the heavy lifting
I always make sure to set my X-Mailer headers correctly (identifying that the message was sent from within PHP) to ensure that any overzealous anti-spam services recognize it as an automatated notification as opposed to bulk/junk email. e.g.
$headers .= "X-Mailer: PHP/".phpversion();
All the configuration and limits you'll encounter are with the SMTP server, not from PHP. You can configure SMTP to rate-limit to 2 messages per second for example, this means if you queue up 1,200 messages they'll be drip fed out over the next hour rather than all at once (two is a really low number, 5-25 is more realistic).
SMTP is the backbone of email and some SMTP servers can happily handle tens of thousands of messages per minute (or more!) - the only limitation you'll likely face is bandwdith ;)
Check with your hosting provider, especially if you're on shared hosting. For example: GoDaddy limits shared hosting accounts to sending 1000 emails per day on their server (http://support.godaddy.com/groups/web-hosting/forum/topic/e-mail-sending-limit/). I'm sure other providers have their own limits (I believe the provider one of the companies I worked for used limited outgoing emails to 250 per minute or something along those lines).
Edit: In my case the solution was to contact our hosting provider. They provided info to route outgoing emails through a server they had dedicated to sending outgoing emails. Solved the problem right away.