kali 下的邮件发送工具 swaks

Swaks 是一个功能强大,灵活,可编写脚本,面向事务的 SMTP 测试工具,目前 Swaks 托管在私有 svn 存储库中。
官方项目 http://jetmore.org/john/code/swaks/

1.测试邮箱的连通性

kali 自带 swaks 工具,无需安装

swaks --to xxx@qq.com

拿我的 QQ 举例

root@kali:~
➤ swaks --to 1871973389@qq.com 01:59:06
=== Trying mx3.qq.com:25...
=== Connected to mx3.qq.com.
<- 220 newxmmxsza22.qq.com MX QQ Mail Server.
-> EHLO kali.lan
<- 250-newxmmxsza22.qq.com
<- 250-STARTTLS
<- 250-SIZE 73400320
<- 250 OK
-> MAIL FROM:<root@kali.lan>
<- 250 OK.
-> RCPT TO:<1871973389@qq.com>
<- 250 OK 1
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>.
-> Date: Sat, 07 Dec 2019 01:59:07 -0500
-> To: 1871973389@qq.com
-> From: root@kali.lan
-> Subject: test Sat, 07 Dec 2019 01:59:07 -0500
-> Message-Id: <20191207015907.007285@kali.lan>
-> X-Mailer: swaks v20190914.0 jetmore.org/john/code/swaks/
->
-> This is a test mailing
->
->
-> .
<- 250 Ok: queued as
-> QUIT
<- 221 Bye.
=== Connection closed with remote host.

返回 250 Ok,说明该邮箱可以正常通信。


2.开启 SMTP 服务

QQ 的 或 163 官网的都可以,个人感觉 163 的还方便些

记住 smtp 的密码

3.利用 SMTP 发送邮件

swaks --to 收件箱 --from 发件箱 --body 邮件内容 --header "Subject:hello" --server smtp.qq.com -p 25 -au 发件箱 -ap SMTP的密码

参数说明:

    --to //收件人邮箱;
--from //发件人邮箱;
--ehlo qq.com //伪造邮件的ehlo头,即发件人邮箱的域名,身法认证;
--body "https://goobe.io" //引号内为邮件正文;
--header "Subject:hello" //邮件头信息,Subject为邮件标题;
--data email.txt //将正常邮件内容保存成TXT文件,再作为正常邮件发出;
--help 显示命令帮助
--verison 显示版本信息 输出内容的含义:
“===”:swaks输出的信息行
“*“:swaks中产生的错误
” ->”:发送到目标的预期行(无错误)
“<- “:服务器的预期回复(无错误)
“<**”:服务器返回的错误信息

4.发送附件

swaks --to 收件箱 --from 发件箱  --body 邮件内容  --header "Subject:hello" --attach example.doc --server smtp.qq.com -p 25 -au 发件箱 -ap SMTP密码

5.伪造邮件

--data email.txt //将正常邮件内容保存成TXT文件,再作为正常邮件发出

发送内容为 email.txt (记得添加文件路经) 里的全部内容

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

先找一分邮件,查看邮件原文,复制里面的内容,存为 .txt

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

去掉 Received 和 To 两行 (发送时用 --from 和 --to 代替)

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

swaks --data ./email.txt --to 收件箱 --from 发件箱 --server smtp.qq.com -p 25 -au 发件箱 -ap SMTP密码

收件箱收到的是 email.txt 里的内容

好了,到这就结束了,其实理论上 swaks 可以伪造邮件里的任何一个参数

The_End

kali 下的邮件发送工具 swaks的更多相关文章

  1. QT开发之旅四邮件发送工具

    终于有了一个晚上安静的写写程序,最近一直忙着公司商务上的事情,一直想用QT实现一个调用最底层socket通信来实现的邮件发送程序,以前用C#写过,微软都封装好的,不知道底层是如何实现的,只知道调用方法 ...

  2. 邮件发送工具类 SendMail.java

    package com.util; import org.apache.commons.mail.EmailException; import org.apache.commons.mail.Simp ...

  3. java 邮件发送工具类

    首先需要下载mail.jar文件,我个人通常是使用maven中心库的那个: <dependency> <groupId>javax.mail</groupId> & ...

  4. java 邮件发送工具类【来源网络自己已经实际应用】

    最近在做一个Java发送邮件的工具类,现在分享一下完整的代码 首先需要java邮件的包javax.mail-1.5.4.jar 之前因为链接给错了,很不好意思,现在重新发一次. 包在这里可以下载htt ...

  5. Java 基于mail.jar 和 activation.jar 封装的邮件发送工具类

    准备工作 发送邮件需要获得协议和支持! 开启服务 POP3/SMTP 服务 如何开启 POP3/SMTP 服务:https://www.cnblogs.com/pojo/p/14276637.html ...

  6. Linux下的邮件发送

    centos 7的邮件发送 1配置文件vim /etc/mail.rc vim /etc/mail.rc 翻到文件尾部添加 set from=xxxxxxxx@163.com smtp=smtp.16 ...

  7. Python编写的Linux邮件发送工具

    之前有用过Linux自带的mail工具来定时发送邮件,但是要装mailx还有配mail.rc,这还比较正常,关键是到了ubantu下这工具用起来真是操蛋,如果哪天其他的unix like操作系统也有需 ...

  8. springboot下实现邮件发送功能

    springboot给我们封装好了邮件功能,非常简单,只需要稍微配置下就ok. 引入jar <dependency> <groupId>org.springframework. ...

  9. java邮件发送工具

    最近在web项目中,客户端注册时需要通过邮箱验证,服务器就需要向客户端发送邮件,我把发送邮件的细节进行了简易的封装: 在maven中需要导入: <!--Email--> <depen ...

随机推荐

  1. Pytest(7)自定义用例顺序pytest-ordering

    前言 测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果. 有些同学在写用例的时候,用例写了先后顺序, 有先后顺序后,后面还会有新的问题(如:上个用例返回 ...

  2. 各个复位标志解析,让我们对MCU的程序的健康更有把控

    作者:良知犹存 转载授权以及围观:欢迎添加微信公众号:Conscience_Remains 总述 曾经开发的时候遇到这样情况,我们开发的设备需要长时间工作上报信息,但是我们在后台查看上报数据,发现设备 ...

  3. The Preliminary Contest for ICPC Asia Nanjing 2019 A The beautiful values of the palace(树状数组+思维)

    Here is a square matrix of n * nn∗n, each lattice has its value (nn must be odd), and the center val ...

  4. hdu 3974 Assign the task(dfs序上线段树)

    Problem Description There is a company that has N employees(numbered from 1 to N),every employee in ...

  5. hdu4339 Query

    Problem Description You are given two strings s1[0..l1], s2[0..l2] and Q - number of queries. Your t ...

  6. Codeforces Round #681 (Div. 2, based on VK Cup 2019-2020 - Final) D. Extreme Subtraction (贪心)

    题意:有一个长度为\(n\)的序列,可以任意取\(k(1\le k\le n)\),对序列前\(k\)项或者后\(k\)减\(1\),可以进行任意次操作,问是否可以使所有元素都变成\(0\). 题解: ...

  7. 4.Redis客户端的使用

    标题 : 4.Redis客户端的使用 目录 : Redis 序号 : 4 Console.WriteLine($"北京和天津之间的距离是:{distance}公里"); #### ...

  8. linux多线程模拟银行家算法

    题外话: 这应该是最近有点难度的作业了,起码比之前的理发师,读写,哲学家问题要难. 但是做好程序的结构,自顶向下,就还是不难的. 银行家算法简介:                 代码: init() ...

  9. HDU 6390 GuGuFishtion(莫比乌斯反演 + 欧拉函数性质 + 积性函数)题解

    题意: 给定\(n,m,p\),求 \[\sum_{a=1}^n\sum_{b=1}^m\frac{\varphi(ab)}{\varphi(a)\varphi(b)}\mod p \] 思路: 由欧 ...

  10. Linux 驱动框架---platform驱动框架

    Linux系统的驱动框架主要就是三个主要部分组成,驱动.总线.设备.现在常见的嵌入式SOC已经不是单纯的CPU的概念了,它们都会在片上集成很多外设电路,这些外设都挂接在SOC内部的总线上,不同与IIC ...