电子邮件欺骗(email spoofing)的根本原因是SMTP协议是不需要身份验证的,攻击者可以利用这个特性伪造电子邮件头,从任意电子邮件地址发送任何人,导致信息看起来来源于某个人或某个地方,而实际却不是真实的源地址。

如果要实现邮箱伪造发件人地址,首先,我们需要一个可以用来发送邮件的SMTP服务器。在这里,我们将介绍如何搭建一个匿名SMTP服务器。

0x01 在线邮件伪造

我们先来使用一个在线伪造邮件地址发送Email邮件的服务,来做一些简单的测试。

查看SPF配置情况:

nslookup -type=txt qq.com

Emkei’s Fake Mailer:https://emkei.cz/

1、test.com未配置SPF,伪造发件人邮件为admin@test.com,发送邮件,QQ邮箱成功接收到邮件:

2、某个域名xxx.net 配置了SPF,伪造admin@xxx.net发送邮件,邮件进入垃圾箱。

通过以上测试,我们可以得到一个简单的结论,QQ邮箱在接收到邮件时,会检查域名的SPF记录,未配置SPF的域名,邮箱容易被伪造并成功投递到目标邮箱;已经配置了SPF的域名,检验后会被投递到垃圾箱。

其实可以发现,这个在线邮件伪造emkei.cz,通过查看邮件头,可知它是用postfix搭建。那么,我们也可以使用postfix搭建匿名SMTP邮件服务器,以便更灵活地去伪造邮箱任意字段。

0x02 搭建匿名SMTP服务器

使用postfix搭建匿名SMTP服务器

环境:CentOS7

1、安装postfix

#安装postfixyum install postfix

2、修改main.cf配置文件

vi /etc/postfix/main.cf# 75行:设置myhostnamemyhostname = mail.test.com# 83行: 设置域名mydomain = test.com# 99行: 设置myoriginmyorigin = $mydomain# 116行: 默认是localhost,修改成allinet_interfaces = all# 119行: 推荐ipv4,如果支持ipv6,则可以为allinet_protocols = ipv4# 165行: 设置mydestinationmydestination = $myhostname, localhost.$mydomain, localhost, $mydomain# 264行: 指定内网和本地的IP地址范围mynetworks = 192.168.0.0/16,127.0.0.0/8# 419行: 取消注释,邮件保存目录home_mailbox = Maildir/# 572行: 取消注释,设置banner。smtpd_banner = $myhostname ESMTP

3、启动postfix服务

systemctl start postfix#关闭防火墙systemctl stop firewalld.service

4、测试邮件搭建成功的几种方式:

第一种:使用mail发送邮件

#安装mailxyum install mailx#发送邮件测试echo "email content" | mail -s "title" a*****t@163.com

查看邮件发送记录:

tail -f /var/log/maillogApr 28 09:27:14 centos postfix/smtpd[108012]: connect from localhost[127.0.0.1]Apr 28 09:27:15 centos postfix/smtpd[108012]: 0170D403916: client=localhost[127.0.0.1]Apr 28 09:27:15 centos postfix/cleanup[108015]: 0170D403916: message-id=<20200428012715.0170D403916@mail.abc.com>Apr 28 09:27:15 centos postfix/qmgr[39469]: 0170D403916: from=, size=716, nrcpt=1 (queue active)Apr 28 09:27:15 centos postfix/smtpd[108012]: disconnect from localhost[127.0.0.1]Apr 28 09:27:15 centos postfix/smtp[108016]: connect to mx3.qq.com[240e:ff:f101:10::127]:25: Network is unreachableApr 28 09:27:16 centos postfix/smtp[108016]: 0170D403916: to=, relay=mx3.qq.com[58.251.110.111]:25, delay=1.5, delays=0.03/0.03/0.37/1, dsn=2.0.0, status=sent (250 Ok: queued as )Apr 28 09:27:16 centos postfix/qmgr[39469]: 0170D403916: removed

从邮件日志看到status=sent,确认邮件发送成功。

第二种:通过telnet使用smtp协议发送邮件

telnet localhost 25

测试邮箱成功接收到邮件

第三种:使用Python脚本发送邮件

#!/usr/bin/python# -*- coding: UTF-8 -*-import smtplibfrom email.mime.text import MIMETextfrom email.header import Headersender = 'admin@test.com'receivers = ['a*****t@163.com']message = MIMEText('Just for test', 'plain', 'utf-8')message['From'] = Header("admin") # 发送者message['To'] = Header("test") # 接收者subject = 'SMTP 邮件测试'message['Subject'] = Header(subject, 'utf-8')try:smtpObj = smtplib.SMTP('localhost')smtpObj.sendmail(sender, receivers, message.as_string())print "邮件发送成功"except smtplib.SMTPException:print "Error: 无法发送邮件"

使用第三方邮件服务器,往往会受限于SMTP服务商的限制,但也有一定的好处,这些权威的邮件服务商的地址往往会被大部分邮件服务商加入白名单。

国内主流的邮箱有:QQ邮箱(qq和foxmail)、网易邮箱(包括163、126和yeah邮箱)、新浪邮箱、搜狐闪电邮箱、移动139邮箱、电信189邮箱等等。

国外的第三方SMTP服务商:SendGrid、mailgun等

不同的邮箱系统,接收邮件安全策略是不同;不同的SMTP服务商,发送邮件的限制也是不一样,具体会发生什么样的化学作用,还需具体进一步去测试。

linux smtp ip伪造,邮箱伪造之搭建匿名SMTP服务器相关推荐

  1. 邮箱伪造之搭建匿名SMTP服务器

    电子邮件欺骗(email spoofing)的根本原因是SMTP协议是不需要身份验证的,攻击者可以利用这个特性伪造电子邮件头,从任意电子邮件地址发送任何人,导致信息看起来来源于某个人或某个地方,而实际 ...

  2. Linux:使用libevent的http事件处理框架搭建一个http服务器

    代码: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <sys/ty ...

  3. 【Tools】Win10系统搭建匿名FTP服务器详解

    00. 目录 文章目录 00. 目录 01. FTP服务器概述 02. FTP服务器要求 03. Win10系统配置FTP服务 04. Win10系统配置IIS服务 05. Win10系统防火墙设置 ...

  4. 文件服务器搭建手机,自己搭建手机云服务器

    自己搭建手机云服务器 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器上分别安装数据传 ...

  5. 搭建exchange邮件服务器一定要ad域么?_邮件伪造之SPF绕过的5种思路

    SMTP(SimpleMail Transfer Protocol) 即简单邮件传输协议,正如名字所暗示的那样,它其实是一个非常简单的传输协议,无需身份认证,而且发件人的邮箱地址是可以由发信方任意声明 ...

  6. zimbra邮件服务器配置,Zimbra邮件服务器无需登录任意邮箱伪造漏洞修复

    Zimbra邮件服务器无登陆邮箱就可发送邮件的漏洞的处理: 配置目的:用户发送邮件必须通过smtp认证,认证通过后,用户发送邮件时的发件人必须和通过认证的用户相一致, 才能发送邮件,防止伪造发件人发送 ...

  7. 邮箱伪造漏洞、钓鱼邮件漏洞(未添加SPF导致)

    目录 0x00 背景 0x01 细节 0x02 测试方法 0x03 漏洞利用 0x04 防御 参考文献: 0x00 背景 邮箱伪造技术,可被用来做钓鱼攻击. 即伪造管理员或者IT运维部等邮箱发邮件,获 ...

  8. python伪造邮件发件地址_python写一个邮箱伪造脚本

    前言: 原本打算学php MVC的思路然后写一个项目.但是贼恶心, 写不出来.然后就还是用python写了个邮箱伪造. 0x01 第一步先去搜狐注册一个邮箱 然后,点开设置,开启SMTP服务. 当然你 ...

  9. Linux 自动发送本机 IP 到邮箱

    1. 前言 在使用 SSH 连接嵌入式 Linux 主板时,经常会遇到不知道板子 IP 的情况,这时就要通过串口登录或者其他方式查找 IP,然后再进行远程连接,很是繁琐. 如果能在 Linux 主板开 ...

  10. 伪造邮箱_提醒:购买伪造的Facebook帐户真的很容易

    伪造邮箱 Don't assume everyone you talk to on Facebook is real: there's an entire marketplace of fake ac ...

最新文章

  1. angular2 组件之间通讯-使用服务通讯模式 2016.10.27 基于正式版ng2
  2. Int VS Integer
  3. 算法学习(二)快速排序(下)
  4. android 重用布局区分控件,【专题分析】布局优化
  5. 网络安全隐患,中国应发展自已的核心技术
  6. 感谢宝贝: 带给我别样人生
  7. Visio绘图怎么对齐连接点
  8. Ubuntu桌面主题美化推荐(Unity Tweak Tool + Flatabulous)
  9. Elsevier旗下期刊利用latex模板撰写论文记录
  10. 商城app开发大概多少钱?APP商城的开发一般要多少费用呢?
  11. html显示ping值,jquery JS实现ping的功能(JS ping url)
  12. 南方人和北方人的区别?如何区分南方人和北方人?
  13. App渗透中常见的加密与解密。
  14. Unity3d资源反编译. AssetBundle格式简析+简单应用+爬坑
  15. 嵌入式系统的应用领域
  16. Android进程间通信 - 几种方式的对比总结
  17. 条码打印软件如何实现序列号循环打印
  18. 昨天晚上的直播都聊了啥?
  19. SD/MMC 卡读写模块---SD/MMC 卡的外部物理接口
  20. 【笔记】1、防止电压反充电,2、前后加速,3、开口三角PT(TV)原理

热门文章

  1. 非线性回归(Non-linear Regression)学习笔记
  2. 2009年的MACBOOK苹果电脑重装MAC OS 10.8.5系统
  3. RCTF crypto100(1)
  4. fatal: couldn‘t find remote ref develop-XXXX fatal: the remote end hung up unexpectedly
  5. 程序员必读书单 1.0
  6. MIMIC数据库简介
  7. 模式识别与智能系统和计算机视觉,模式识别与智能系统(论文).docx
  8. 2022年熔化焊接与热切割题库
  9. Hadoop HA 高可用
  10. MIMO-OFDM学习笔记(传播与衰落)