Swaks - SMTP界的瑞士军刀
0x00 安装:
kali中自带,或者从作者网页下载
http://www.jetmore.org/john/code/swaks/
0x01 基本用法:
swaks –to <要测试的邮箱> 用来测试邮箱的连通性
前面都返回250ok,说明该邮箱存在,并且可以正常收信。最后可以看到qq邮箱返回550错误,qq官方给出的出错原因:该邮件内容涉嫌大量群发,并且被多数用户投诉为垃圾邮件。
我们可以继续对邮件进行伪造,来绕过qq邮箱的判断
比如:
swaks --body "test" --header "Subject:testT" -t rcfkve06917@chacuo.net -f admin@local.com
swaks --to rcfkve06917@chacuo.net --from info@freebuf.com --ehlo freebuf.com --body hello --header "Subject: hello"
其中:
--from <要显示的发件人邮箱>
--ehlo <伪造的邮件ehlo头>
--body <邮件正文>
--header <邮件头信息,subject为邮件标题>
--data <源邮件>
0x02 高级用法:
使用swaks其实还可以进行更高级的邮件伪造,几乎可以伪造邮件中的每一个参数。
首先,我们需要一份正常的邮件
点击显示邮件原文,把原文复制出来,保存为email.txt
其中的received可以都删除,该项为接收信息,发信中不需要。to项也可以删除,可以直接用swaks --to来代替。
注意不要忘了加--from 否则qq邮箱会报由kali代发……
swaks --data ./Desktop/email.txt --to xxxx@qq.com --from services@tophant.com
发送成功,qq邮箱没报垃圾邮件,也没报有害。
注意在发送的时候没有加--from参数,因为在测试中我发现收到邮件时,邮件内容与文件内容显示完全一样,与参数无关
这里能看到,收件人和发件人都不是靠--to和—from,这里应该需要修改文本的内容,达到隐藏效果
这里略作修改,成功伪造了邮箱,
在测试中,我修改了时间,但事实证明时间是不能被指定的,
这里还有很多地方可以伪造,十分钟邮箱不显示,就没有继续测试。
邮件伪造结合钓鱼网站,免杀程序,在加上一点社工技巧,是比较主动的APT攻击方式,需要多加注意。
0x03 邮件头格式 :
Received: 由每个中继服务站添加,用于帮助追踪传输中出现的错误。字段内容包括,发送、接收的主机和接收时间。参数via 用于记录信息发送后经过的物理站点,”with” 指示了使用的邮件、连接的协议。参数 id 用于标识邮件。参数for 用于记录发送者的分发的目的地址。
Reply-To: 发件人地址是在发件人标题中实际找到的值。这应该是信息的来源。在大多数邮件客户机中,这就是您所看到的“发件人”。如果一封电子邮件没有回复头,那么所有的人工(邮件客户端)回复都应该返回到“发件人”地址。
Date: 表示建立信件的时间
From:发件人
To:收件人
cc:抄送人
Subject:邮件标题
Sender:发件人名称
Message-ID:SMTP协议发邮件自动生成的
X-Priority:邮件优先级
X-mailer:代理发信的客户端
MIME-Version: 所使用的网络邮件格式标准版本
Content-Type: 邮件内容数据的类型,包括类型标识(type)和子类型标识(subtype),前者类型标识(type)声明了数据的类型,后者子类型标识(subtype)为这种数据类型指定了特定的格式。
Return-Path: 退信地址,该字段由信息的最后发送者添加,是关于信息原始来源的地址和回朔路径。
X-MS-Exchange-Organization-AuthSource:该 X-header 指定代表组织对邮件的身份验证进行评估的服务器计算机的 FQDN。
邮件头示例
Received: from unic0rn.com.cn (IP) by .unic0rn.cn
(IP) with Microsoft SMTP Server id 14.3.123.3; Fri, Dec :: +
Reply-To: <Reply@qq.com>
Date: Fri, Dec :: +
From: IT_Sytem <From@unic0rn.cn>
To: <To@unic0rn.cn>
cc: <cc@unic0rn.cn>
Sender: Sender
Subject: Subject
Message-ID: <@unic0rn.cn>
X-Priority: (Highest)
X-mailer: Foxmail , , , [cn]
MIME-Version: 1.0
Content-Type: multipart/related; type="multipart/alternative";
boundary="=====003_Dragon301638870326_====="
Return-Path: Return@unic0rn.cn
X-MS-Exchange-Organization-AuthSource: . unic0rn.cn
X-MS-Exchange-Organization-AuthAs: Anonymous
0x04 解决办法:
遇到可疑邮件要查看源邮件,判断发信人ip是否为可信任的ip。
0x05 10分钟邮箱:
http://24mail.chacuo.net/ 不可接收附件(txt)
https://10minutemail.net/ 可接收附件(eml后缀)
http://www.linshiyouxiang.net/
Swaks - SMTP界的瑞士军刀的更多相关文章
- Jodd - Java界的瑞士军刀轻量级工具包!
Jodd介绍 Jodd是对于Java开发更便捷的开源迷你框架,包含工具类.实用功能的集合,总包体积不到1.7M. Jodd构建于通用场景使开发变得简单,但Jodd并不简单!它能让你把事情做得更好,实现 ...
- Kali Linux信息收集工具
http://www.freebuf.com/column/150118.html 可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得 ...
- Kali Linux信息收集工具全集
001:0trace.tcptraceroute.traceroute 描述:进行路径枚举时,传统基于ICMP协议的探测工具经常会受到屏蔽,造成探测结果不够全面的问题.与此相对基于TCP协议的探测,则 ...
- Kali Linux信息收集工具全
可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得那个戏份不多但一直都在的Q先生(由于年级太长目前已经退休).他为007发明了众多神奇 ...
- RFIDler:一款定义RFID的读、写、仿真器的开源软件
很多类似于RFID这样的技术看起来都很神秘,实际上他是依赖于很多物理学原理的,比如”电磁感应原理”.是的,这些现象产生的各种信号足以令人发狂,看完这些模拟模拟信号后,我忽然发现二进制信息多么干净美丽. ...
- rsyslog
http://www.rsyslog.com/ http://www.rsyslog.com/doc/v5-stable/troubleshooting/troubleshoot.html RSYSL ...
- nc命令用法举例
什么是nc nc是netcat的简写,有着网络界的瑞士军刀美誉.因为它短小精悍.功能实用,被设计为一个简单.可靠的网络工具 nc的作用 (1)实现任意TCP/UDP端口的侦听,nc可以作为server ...
- Python之路day4
坚持就是胜利.今天零下14度,从教室出来的路上真的很冷很冷,希望这个冬天自己不会白过,春暖花开的时候一定要给世界一个更好的自己. 原本以为day3的作业自己做得挺好的,没想到只得了B+.必须要加油了, ...
- 取代netcat
前言 众所周知,netcat是网络界的瑞士军刀,它的主要作用是:提供连接其他终端的方法,可以上传文件,反弹shell等等各种利于别人控制你电脑的操作.所以聪明的系统管理员会将它从系统中移除,这样当别人 ...
随机推荐
- linux系统实现多个进程监听同一个端口
通过 fork 创建子进程的方式可以实现父子进程监听相同的端口. 方法:在绑定端口号(bind函数)之后,监听端口号之前(listen函数),用fork()函数生成子进程,这样子进程就可以克隆父进程, ...
- php 常用的常量
/* php 常用的常量 */ 1.系统常量 * FILE 当前PHP文件的相对路径 * LINE 当前PHP文件中所在的行号 * FUNCTION 当前函数名,只对函数内调用起作用 * CLASS ...
- 利用ldirectord实现lvs后端realserver健康状态检查
ldirectord用来实现LVS负载均衡资源在主.备节点间的故障转移.在首次启动时,ldirectord可以自动创建IPVS表.此外,它还可以监控各RealServer的运行状态,一旦发现某Real ...
- 【GStreamer开发】GStreamer播放教程08——视频解码的硬件加速
目标 视频的硬件解码近来发展非常快速,尤其是在低功耗的设备上.本教程会讲述一些硬件加速的背景知识并解释一下GStreamer是怎么做的. 悄悄告诉你,如果设置正确地话,我们什么也不用做,GStream ...
- beautifulsoup 模块
一.介绍 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你 ...
- Linux 下 安装 Jmeter
Linux下安装jmeter 1.1 下载JMeter 官方网站下载最新版本: http://jmeter.apache.org/download_jmeter.cgi 两个只是解压方式不一样而 ...
- crontab每小时运行一次
先给出crontab的语法格式 对于网上很多给出的每小时定时任务写法,可以说绝大多数都是错误的!比如对于下面的这种写法: 00 * * * * #每隔一小时执行一次 00 */1 * * * #与上面 ...
- ABP中的AutoMapper
在我们的业务中经常需要使用到类型之间的映射,特别是在和前端页面进行交互的时候,我们需要定义各种类型的Dto,并且需要需要这些Dto和数据库中的实体进行映射,对于有些大对象而言,需要赋值太多的属性,这样 ...
- Java调用SqlLoader将大文本导入数据库
Java调用SqlLoader将大文本导入数据库 业务场景:将一千万条数据,大约500M的文本文档的数据导入到数据库 分析:通过Java的IO流解析txt文本文档,拼接动态sql实现insert入库, ...
- vue 写一个瀑布流插件
效果如图所示: 采用了预先加载图片,再计算高度的办法..网络差的情况下,可能有点卡 新建 vue-water-easy.vue 组件文件 <template> <div class ...