Swaks简介

Swaks简介

Swaks的主要设计目标是成为一个灵活的,可编写脚本的,面向对象的SMTP测试工具。它处理SMTP功能和扩展,如TLS,身份验证和流水线操作; 多种版本的SMTP协议,包括SMTP, ESMTP和LMTP ; 和多种传输方法,包括unix-domain套接字,internet-domain套接字和生成进程的管道。可以在环境变量,配置文件和命令行中指定选项,从而为操作员和脚本编写者提供最大的可配置性和易用性。

Swaks也被称为SMTP协议的瑞士军刀,它可以灵活的操作SMTP协议报文,它通常被用来伪造邮件,进行钓鱼、社工等操作。并且可以绕过常规的基于SPF与DKIM的垃圾邮箱检测。Kali已预装Swaks

基本参数说明

swaks –to test@qq.com //首先测试邮箱的连通性;

  • –to test@gmail.com //接件人邮箱;
  • –from test@qq.com //发件人邮箱;
  • –ehlo qq.com //伪造邮件ehlo头,即是发件人邮箱的域名。提供身份认证;
  • –server mail.smtp2go.com //服务邮件域
  • –body “test” //引号中的内容即为邮件正文,可直接引用文件;
  • –data ./Desktop/email.txt //将正常源邮件的内容保存成TXT文件,再作为正常邮件发送;
  • –header “Subject:标题” //邮件标题;
  • –header-X-Mailer gmail.com //X-Mailer标头表示用于起草和发送原始电子邮件的程序
  • –h-From: ‘boss admin@gmail.com‘ //伪造的发件人邮箱;
  • –attach /root/test.txt //附件

SPF验证原理

SPF是为了防范垃圾邮件而提出来的一种DNS记录类型,它是一种TXT类型的记录,它用于登记某个域名拥有的用来外发邮件的所有IP地址。
按照SPF的格式在DNS记录中增加一条TXT类型的记录,将提高该域名的信誉度,同时可以防止垃圾邮件伪造该域的发件人发送垃圾邮件。
SPF是跟DNS相关的一项技术,它的内容写在DNS的txt类型的记录里面。mx记录的作用是给寄信者指明某个域名的邮件服务器有哪些。SPF的作用跟mx相反,它向收信者表明,哪些邮件服务器是经过某个域名认可会发送邮件的。
由定义可以看出,SPF的作用主要是反垃圾邮件,主要针对那些发信人伪造域名的垃圾邮件。

如果mail.smtp2go.com是真正的邮件服务器,那么Gmail的服务器收到的源IP也肯定是mail.smtp2go.com的IP。Gmail中会校验邮件发送者的IP是否存在于smtp.from的域名SPF配置列表里,但是邮件显示的是from头中的域而不是服务邮件域,因此可以将服务邮件域设置为正常的邮件服务器地址,伪造一个Mail.From即可。

DKIM工作原理

DKIM 的基本工作原理同样是基于传统的密钥认证方式,他会产生两组钥匙,公钥(public key)和私钥(private key),公钥将会存放在 DNS 中,而私钥会存放在寄信服务器中。数字签名会自动产生,并依附在邮件头中,发送到寄信者的服务器里。公钥则放在DNS服务器上,供自动获得。收信的服务器,将会收到夹带在邮件头中的签名和在DNS上自己获取公钥,然后进行比对,比较寄信者的域名是否合法,如果不合法,则判定为垃圾邮件。

但是这里由于使用了第三方邮件服务器,公钥和私钥已经提供了.

实际效果

avatar
avatar

  • 总结:SPF和DKIM已经pass了,DMARC这东西不清楚是什么,但是暂时不影响邮件的正常接收。
    在测试过程中发现,伪造gmail域时不能发给gmail域,只能伪造为其他域的邮件发送,比如163.com,qq.com。整体来说,电脑上查看就比正常邮件多了个通过xxx代发,又因为手机上信息显示不全,手机查看几乎无破绽,所以欺骗性还是非常强的