[ 钓鱼实战系列-基础篇-6 ] 一篇文章让你了解邮件服务器机制(SMTP/POP/IMAP)-2
🍬 博主介绍
👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
网络钓鱼不仅是一种网络攻击技术同时也是一项最常见的社会工程技术,更是红队选手和网络犯罪分子的惯用伎俩。
本文我们探讨有邮件邮件服务器的认证机制。
文章目录
- 🍬 博主介绍
- 1.6 邮件服务器机制-2
- 1.6.5 SPF 简介
- 1.6.5.1 SPF 是什么
- 1.6.5.2 SPF 的核心功能
- 1.6.5.3 SPF 的工作原理
- 1.6.5.4 SPF 的优势
- 1.6.5.5 为什么搭建个人邮件服务器也需要设置SPF?
- 1.6.6 DKIM 简介
- 1.6.6.1 什么是 DKIM
- 1.6.6.2 DKIM 有什么作用
- 1.6.6.3 DKIM 工作原理
- 16.7 DMARC 简介
- 1.6.7.1 什么是 DMARC
- 1.6.7.2 DMARC 有什么作用
- 1.6.7.3DMARC 工作原理
- 1.6.8 为什么设置 SPF、DKIM、DMARC 三个解析?
- 1.6.8.1.为什么自建邮件服务器也需要搭建SPF ?
- 1.6.8.2.安装了SPF为什么还要按照DKIM ?
- 1.6.8.3.rDNS作用是什么 ?
- 1.6.8.4 rDNS介绍
- 相关资源
1.6 邮件服务器机制-2
1.6.5 SPF 简介
1.6.5.1 SPF 是什么
Sender Policy Framework(发件人策略框架)是一种电子邮件认证机制,旨在减少垃圾邮件和伪造邮件的问题。由于SMTP协议在发送邮件时不会对发件人的信息进行校验,这导致了垃圾邮件和伪造邮件的泛滥。为了应对这一问题,SPF应运而生。
1.6.5.2 SPF 的核心功能
1.确认邮件来源
SPF通过DNS记录来验证发件人的邮件服务器是否被授权发送该邮件。具体来说,它使用TXT类型的DNS记录来存储发件人的邮件策略,这些策略定义了哪些邮件服务器被允许为该域发送邮件。
2.防止伪造邮件
通过检查邮件的“返回路径”(即邮件头中的“Received”字段),SPF可以确定邮件是否真的来自声称的发件人。如果邮件的“返回路径”与SPF记录不匹配,那么该邮件很可能就是伪造的。
1.6.5.3 SPF 的工作原理
当一封邮件被发送到接收方的邮件服务器时,接收方会检查邮件的"返回路径",并尝试从发件人域名的DNS记录中获取SPF信息。然后,接收方会检查邮件的"返回路径"是否包含在SPF记录所列出的IP地址或域名中。如果包含,那么邮件被认为是合法的;如果不包含,那么邮件可能会被认为是伪造的或垃圾邮件。
1.6.5.4 SPF 的优势
1.提高安全性
SPF可以有效地防止伪造邮件和垃圾邮件的发送,从而提高电子邮件系统的安全性。
2.增强信任
对于合法发件人来说,拥有SPF记录可以增加其邮件的信任度,因为接收方更容易验证其身份。
3.易于实施
SPF的实施相对简单,只需要在DNS记录中添加相应的TXT记录即可。
1.6.5.5 为什么搭建个人邮件服务器也需要设置SPF?
虽然自建邮服不是伪造,但是很多厂商会进行查询邮件网关,他会误认为是发垃圾邮件的机器人等影响邮件发送效率
1.6.6 DKIM 简介
1.6.6.1 什么是 DKIM
DomainKeys Identified Mail(域名密钥识别邮件),是一种电子邮件认证机制,旨在检测寄件者、主旨、内文、附件等部分是否被伪造或篡改。
是一套电子邮件认证机制,使用公开密钥加密的基础提供了数字签名与身份验证的功能,以检测寄件者,主旨,内文,附件等有没有被篡改,是TXT类型的DNS记录
1.6.6.2 DKIM 有什么作用
加密邮件目的是防止中间人劫持,攻击等,使用Opendkim安装配置即可
1.6.6.3 DKIM 工作原理
发送方会在电子邮件标头中插入DKIM-Signature及电子签名资讯,而接收方则通过DNS查询得到公开金钥后进行验证
16.7 DMARC 简介
1.6.7.1 什么是 DMARC
Domain-based Message Authentication Reporting & Conformance(基于域的消息认证,报告和一致性)
一套电子邮件认证机制,和SPF,DKIM结合使用,用于检测寄存者、主旨、内文、附件等被伪造篡改等
DMARC是TXT类型的DNS记录
1.6.7.2 DMARC 有什么作用
DMARC通过验证邮件来源,阻止未经授权的服务器冒充域名发送邮件,从而减少钓鱼攻击。它建立在DKIM和SPF协议上,并添加了域名对齐检查和报告发送功能
1.6.7.3DMARC 工作原理
DMARC建立在DKIM(DomainKeys Identified Mail)和SPF(Sender Policy Framework)两大主流电子邮件安全协议之上。
域名所有者在DNS中声明采用DMARC协议,当接收方收到该域发送的邮件时,会进行DMARC校验,若校验失败则发送报告到指定邮箱账号
1.6.8 为什么设置 SPF、DKIM、DMARC 三个解析?
1.6.8.1.为什么自建邮件服务器也需要搭建SPF ?
自建邮件服务器虽然不是伪造但是很多厂商会进行查询邮件网关,网关会有一定概率误认为我们发送的邮件是机器人推送或者广告垃圾文章等拒收.
1.6.8.2.安装了SPF为什么还要按照DKIM ?
加密邮件,防止中间人劫持,攻击,安装可使用Openkim安装配置.
1.6.8.3.rDNS作用是什么 ?
它是反向dns解析通过IP查询域名,查询语句 nslookup -qt=ptr yourIP
由于很多人使用动态IP发送垃圾邮件,用来躲避踪迹,所以设置rDNS,接收方邮件服务器网关可以通过此方式查询到发送的邮件域名和IP相互匹配的,提高发送率.
1.6.8.4 rDNS介绍
可逆DNS(rDNS,reverse DNS)是一种把一个IP地址分解成一个域名的方法,正像域名系统(DNS)把域名分解成关联的IP地址。
可逆DNS的一个应用是作为垃圾邮件过滤器。它是这样工作的:代表性的,一个垃圾邮件使用一个无效IP地址,即不和域名匹配的IP地址。可逆DNS查找程序把引入信息的IP地址输入一个DNS数据库。如果没有找到和IP地址匹配的有效域名,服务器就阻止那条消息。
尽管可逆DNS(rDNS)在过滤垃圾邮件方面是相当有效的,但至少在技术环境下,它有时也会阻止有效的电子邮件。许多问题,包括网络延迟和没有适当配置的网络或者服务器,都可以阻止合法的消息通过过滤器。2003年1月,AT&T WorldNet开始把可逆DNS和其他反垃圾邮件软件一起使用。公司在配置24小时后被迫移出了过滤器,因为客户报告说消息不能传送。
相关资源
[ 提升篇 ] 钓鱼实战系列
[ 钓鱼实战系列-基础篇-4 ] 一篇文章教会你用红队思维收集目标邮箱信息-1(附邮箱收集自动化脚本)
[ 钓鱼实战系列-基础篇-4 ] 一篇文章教会你用红队思维收集目标邮箱信息-2(附邮箱收集自动化脚本)
[ 钓鱼实战系列-基础篇-4 ] 一篇文章教会你用红队思维收集目标邮箱信息-3(附邮箱收集自动化脚本)
[ 钓鱼实战系列-基础篇-5 ] 一篇文章教会你用红队思维设计钓鱼模板(附常见的钓鱼邮件模板)
[ 钓鱼实战系列-基础篇-6 ] 一篇文章让你了解邮件服务器机制(SMTP/POP/IMAP)-1
相关文章:

[ 钓鱼实战系列-基础篇-6 ] 一篇文章让你了解邮件服务器机制(SMTP/POP/IMAP)-2
🍬 博主介绍 👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 🎉点赞➕评论➕收藏 养成习…...

在 Docker 中搭建 PostgreSQL16 主从同步环境
1. 环境搭建 本文介绍了如何在同一台机器上使用 Docker 容器搭建 PostgreSQL 的主从同步环境。通过创建互联网络和配置主库及从库,详细讲解了数据库初始化、角色创建、数据同步和验证步骤。主要步骤包括设置主库的连接信息、创建用于复制的角色、使用 pg_basebacku…...

SpringCloud无介绍快使用,sentinel服务熔断功能与持久化(二十四)
TOC 问题背景 从零开始学springcloud微服务项目 注意事项: 约定 > 配置 > 编码IDEA版本2021.1这个项目,我分了很多篇章,每篇文章一个操作步骤,目的是显得更简单明了controller调service,service调dao默认安装ngi…...

判断浏览器环境,前端打开微信浏览器
我们知道微信浏览器有自带针对微信的组件(比如:微信JSAPI支付使用的WeixinJSBridge),那么,有办法在普通浏览器中打开微信浏览器并跳转页面吗?(似乎微信已禁用外部浏览器调用的普通页面直接跳转,只能通过“weixin://前缀…...

【算法笔记】前缀和算法原理深度剖析(超全详细版)
【算法笔记】前缀和算法原理深度剖析(超全详细版) 🔥个人主页:大白的编程日记 🔥专栏:算法笔记 文章目录 【算法笔记】前缀和算法原理深度剖析(超全详细版)前言一.一维前缀和1.1题…...

linux之网络子系统- 地址解析协议arp 源码分析和邻居通用框架
一、arp 的作用 ARP(Address Resolution Protocol,地址解析协议)是将IP地址解析为以太网MAC地址(物理地址)的协议。在局域网中,当主机或其他网络设备有数据要发送给另一个主机或设备时,它必须知…...
经典动态规划问题:含手续费的股票买卖【从 O(n) 到 O(1) 的优化解析】
题目理解 我们要在给定的股票价格数组 prices 中进行买卖操作,并尽可能多次交易以获取最大利润。每次交易都需要支付一定的手续费 fee,因此我们必须考虑如何通过合适的交易策略最大化利润。 在本题中,每一天可以选择: 不进行任…...

Python画笔案例-088 绘制 滚动的汉字
1、绘制 滚动的汉字 通过 python 的turtle 库绘制 滚动的汉字,如下图: 2、实现代码 绘制 滚动的汉字,以下为实现代码: """滚动的汉字.py """ import time from turtle import * from write_patch import *width,height...

Redis 5.0 安装配置(Windows)
Redis 5.0之后支持Redis Stream等功能 下载地址:Releases tporadowski/redis GitHub 点击运行redis-server.exe 此外:Redis 6.0及以后版本目前都没有Windows版...
金融行业:办公安全防护专属攻略
在中国金融市场快速迈向数字化转型的进程中,数据安全与隐私保护成为了不容忽视的关键议题。面对不断升级的网络威胁和日益严格的监管要求,构建一个既能支持创新又能提供坚实防护的信息安全体系变得尤为重要。亿格云不断深耕办公安全领域,为金…...
python如何基于numpy pandas完成复杂的数据分析操作?
数据分析是现代数据科学的重要组成部分,Python作为一种强大的编程语言,提供了许多库来简化数据分析过程。 其中,NumPy和Pandas是两个最常用的库。NumPy主要用于数值计算,而Pandas则提供了强大的数据结构和数据分析工具。 本文将深入探讨如何利用这两个库进行复杂的数据分…...
Linux中定时任务调度工具——crontab
1.简介 crontab是Unix和类Unix操作系统(如Linux)中用于定时任务调度的工具。其名称来源于“cron”这个守护进程,它负责周期性地执行任务,并且“tab”表示这个工具的配置文件。用户可以通过配置crontab文件来设定定时任务…...

思维+差分,CF 1884C - Medium Design
目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 1884C - Medium Design 二、解题报告 1、思路分析 考虑 最大值 和 最小值…...

简单介绍冯诺依曼体系
现代的计算机, 大多遵守冯诺依曼体系结构 CPU中央处理器:进行算术运算和逻辑判断。存储器:分为外存和内存,用于存储数据(使用二进制方式存储)。输入设备:用户给计算机发号施令。输出设备:计算机…...

kernel32.dll下载地址:如何安全地恢复系统文件
关于从网络上寻找kernel32.dll的下载地址,这通常不是一个安全的做法,而且可能涉及到多种风险。kernel32.dll是Windows操作系统的核心组件之一,负责内存管理、进程和线程管理以及其他关键系统功能。因为kernel32.dll是系统的基础文件ÿ…...
【高等数学】多元微分学 (一)
偏导数 偏导数定义 如果二元函数 f f f 在 x 0 , y 0 x_0,y_0 x0,y0 的某邻域有定义, 且下述极限存在 lim Δ x → 0 f ( x 0 Δ x , y 0 ) − f ( x 0 , y 0 ) Δ x \lim_{\Delta x\to 0} \frac{f(x_0\Delta x,y_0)-f(x_0,y_0)}{\Delta x} Δx→0limΔxf(x0Δ…...

Python爬取京东商品信息,详细讲解,手把手教学(附源码)
Python 爬虫爬取京东商品信息 下面我将逐一解释每一部分的代码 导入库 from selenium import webdriver from selenium.webdriver.edge.service import Service from selenium.webdriver.edge.options import Options import time import random import csv from selenium.c…...

大家有没有了解过TLKS-PLGS这款接地电阻在线监测装置?它在电力系统中能发挥什么作用呢?
接地电阻在线监测仪(输电铁塔接地电阻监测装置、变电站接地电阻监测装置、三极法接地网电阻监测装置)在电力系统中发挥着至关重要的作用,具体来说,有以下几个方面: 一、实时监测预警。该装置采用激励脉冲技术…...

Shell中的函数
目录 一、系统函数 (一)前言 (二)常用的函数 basename [string/pathname] [suffix] 二、自定义函数 (一)语法 (二)脚本例子 三、函数实际案例 过程中的报错: …...

通过IP地址或者主机名添加打印机20241023
文印室打印机连接方式20241023 Win键盘搜索打印机和扫描仪点击添加打印机或扫描仪,等候片刻点击“我需要的打印机不在列表中”添加打印机,选择使用IP地址或主机名添加打印机点击下一步,设备类型选择自动检测输入主机名:即打印机有…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...