The thing is, the fact that you have an SPF record doesn't mean that the mails can't be faked from your address. How do the headers look on the spoofed emails regarding SPF?
The legit domain here is:
user@realdomain.ca
The spam email came in from:
despacho@eccochemical.com
One of the headers looks like this:
Return-Path: <despacho@eccochemical.com>
X-Spam-Status: No, hits=0.0 required=8.5
tests=TOTAL_SCORE: 0.000
X-Spam-Level:
Received: from mx.digidns.ca ([192.168.11.4])
by hc1.digidns.ca (Kerio Connect 9.2.7 patch 3) with ESMTPS
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits))
for
rick@realdomain.ca;
Mon, 10 Dec 2018 09:51:45 -0500
Received: from mx.digidns.ca (localhost.localdomain [127.0.0.1])
by mx.digidns.ca (Proxmox) with ESMTP id 912EF1616E8
for <rick@realdomain.ca>; Mon, 10 Dec 2018 09:51:45 -0500 (EST)
Received-SPF: pass (eccochemical.com: 209.140.25.90 is authorized to use '
despacho@eccochemical.com' in 'mfrom' identity (mechanism 'ip4:209.140.25.90' matched)) receiver=mx.digidns.ca; identity=mailfrom; envelope-from="
despacho@eccochemical.com"; helo=server9.1ahost.com; client-ip=209.140.25.90
Received: from server9.1ahost.com (server9.1ahost.com [209.140.25.90])
(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
(No client certificate requested)
by mx.digidns.ca (Proxmox) with ESMTPS id ABAC7161539
for <rick@realdomain.ca>; Mon, 10 Dec 2018 09:51:44 -0500 (EST)
Received: from 185.189-204-140.bestel.com.mx ([189.204.140.185]:62497 helo=10.14.43.24)
by server9.1ahost.com with esmtpsa (TLSv1
HE-RSA-AES256-SHA:256)
(Exim 4.87)
(envelope-from <despacho@eccochemical.com>)
id 1gWMuA-0006mq-B6
for
rick@realdomain.ca.ca; Mon, 10 Dec 2018 10:51:32 -0400
Date: Mon, 10 Dec 2018 08:51:30 -0600
From: David Niemela <david@realdomain.ca> <despacho@eccochemical.com>