Hi Michel,
Currently, HTTP and SSL are separate measurements. But for SMTP it
will probably not work this way... Encryption is not mandatory for
SMTP and thus negotiated between client and server every time on
port 25. Ports 465 and 587 are used for Client Email Submission.
You could run some measurements for these ports as well, but for
the beginning, i would focus on server2server communication.
So here's what i think:
What we could measure:
- General reachability/availability of the e-mail service
- Response time of the remote server: time between connection
establish and first SMTP response (220 service ready)
- Which enhanced status codes are offered by the server?
- Forward/Reverse DNS matching?
- SMTP banner matching the DNS name?
- if not: what is it?
- Does the remote server offer encryption (250-STARTTLS)
- Which cipher settings are offered by the server (SSL/TLS
Version, Key Exchange Algorithms, Encryption Algorithms, Hashing
Algorithms)
- alternatively: Which cipher setting has been negotiated
between probe and server?
- Can we successfully establish a TLS connection?
- Certificate Check: is the server-certificate valid and does it
match the hostname?
- Forced Encryption: MTA-STS available and 'enforced' or 'testing'
or 'report'?
- Forced Authentication: DANE available and check successfull?
What we should not do:
- send MAIL FROM: command
- send RCPT TO: command
- send DATA command
- measure e-mail delivery/roundtrip time, etc.
- Sending e-mails at all
The Atlas probe should quit the connection after the data is
collected. An actual e-mail should not be send. The target
mailserver would count this session as "incomplete" or "aborted"
which is totally fine. If someone would want to monitor what
happens after a mailserver has successfully accepted a testmail,
he should better use a monitoring service/solution. We measure the
INTERnet, not what comes after (Intra) :)
I don't expect any "spam" problems. Since the Atlas probes
wouldn't send e-mails, there's nothing a spamfilter could analyze.
The only thing that could theoretically happen, is that the probes
ip addresses are flagged as bad by services like Spamhaus etc. and
thus be listed on DNSBL/IPBL, but i really don't see a reason why
that should happen. There wouldn't be any activity originating
from the probes which could be classified as bad. IP addresses are
normally only blacklisted, if they send unwanted mails like spam.
Also: there are a lot of "check you mailserver" or "check your
SSL/TLS" websites. The RIPE Atlas probes would behave the same
way. No big deal.
Maybe we can think of an "extended" SMTP measurement where RIPE
Atlas sends actual e-mails, but that would require (in my
opinion), that the person who is creating the measurement somehow
provides proof, to be the owner of the target mailserver.
BR,
Simon
On 15.09.22 12:03, Michel Stam wrote:
Hello Simon,
Thank you for the suggestion.
I have a couple of questions to get a better idea:
- Can you maybe describe what a SMTP measurement
would look like?
- Simple EHLO/HELO
- Sending an email to a designated address (which
would then validate that the SMTP server is capable of
relaying etc.)
- How would DNSBL or other spam prevention
techniques fit into this?
- What would the result be?
- Delay until mail received
- Response time by the actual mail server
- Using the Received: headers to get a
“traceroute” like result.
- What about the more uncommon ports such as 565
(SMTP+SSL/TLS) or 587 (mail submission port).
- How can we prevent this implementation from
having RIPE Atlas be identified as a spam bot network?
Best regards,
Michel
Hello,
i'd like to start a discussion about having a RIPE Atlas
SMTP measurements.
First of all: yes, i know there's a big obstacle for
such a measurement type. A lot of probes are deployed
using enduser internet-connections like dsl, cable, etc.
with dynamic/eyeball IP addresses. Those IP spaces are
usually blocked by SMTP servers as approach to reduce
spam mails. For Example: by using blocklists like
Spamhaus PBL. So a proper SMTP measurement wouldn't
work.
BUT we could have an easy way for RIPE Atlas probe
hosters to signalize, that their probe is eligible for
SMTP measurements:
Step 1: enable "Simple DNS Entry"
Step 2: create a matching reverse DNS record for the
probes IP address
Everybody who is able so configure a reverse DNS record
for his probes IP address, is most likely using a
non-dynamic/non-home ip address space e.g. a datacenter
or office network. If an ISP provides the option for his
customers to configure a reverse DNS record, it's most
likely a "business-customer" subnet which can be used to
run mailservers. After Step 1+2 are done, the RIPE Atlas
platform would easily be able to verify if
forward-confirmed reverse DNS is successful, and if so,
automatically enable that probe for SMTP measurements.
Alternatively: probe hosters choose their own
Forward-confirmed reverse DNS name and submit it on the
RIPE Atlas website.
Also: if we would have STMP measurements,
forward-confirmed reverse DNS should be mandatory for
anchors, or is it already?
Why should we have SMTP measurements?
Besides general reachability checks, we could also
evaluate SMTP response codes. But the most important
thing for me is this: the SMTP protocol is old. Very
old. From a security point of view, it's absolutely
outdated. Most security features have been added years
after the initial RfC. Thus, those security features are
optional. Mandatory SMTP encryption is not provided by
the SMTP RfC. So both sides have to signalize, that they
are capable of encryption using the STARTTLS command. An
attacker (man-in-the-middle) can perform a downgrade
attack by suppressing the STARTTLS command. So both
sides are forced to fallback and communicate
unencrypted. RIPE Atlas would be a really good tool to
identify such attacks, by monitor/measure the (enhanced)
status codes of a target.
But there's more!
I see a two-sided model here. Either use the RIPE Atlas
SMTP measurements to monitor/measure your own mailserver
by alot of other RIPE probes out there, OR probe hosters
could run SMTP measurements originating from their own
probe to find out, if their own IP address is currently
blocked by other mailservers.
What do you think?
BR,
Simon
--
ripe-atlas mailing list
ripe-atlas@ripe.net
https://lists.ripe.net/mailman/listinfo/ripe-atlas
--