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
--